Files
dotfiles/nixos/docs/01-install-packages.md
T
Dmitry 17b0cdfbac feat: add comprehensive NixOS configuration documentation and structure
- Introduced `08-structure.md` detailing project structure, main files, and versioning.
- Created `README.md` for documentation overview and quick start guide.
- Added user-specific configurations for Alacritty, Vim, Micro, Git, Zsh, Tmux, and tools.
- Implemented system modules for desktop environment (KDE Plasma), audio (PipeWire), networking, and services (OpenSSH, GnuPG).
- Configured Nix settings with flakes support and garbage collection.
- Established user management for `ada` with necessary groups and shell settings.
- Enabled VirtualBox guest additions for improved VM experience.
2026-03-10 13:10:52 +03:00

131 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Добавление и удаление пакетов
Как управлять программами в конфигурации.
## Где пакеты?
Пакеты описаны в файле:
```
home/ada/packages.nix
```
## Добавить пакет
### Способ 1: Через редактор
1. Открыть `home/ada/packages.nix`
2. Найти подходящую категорию (например "Средства разработки")
3. Добавить пакет:
```nix
# Было:
htop # Интерактивный монитор процессов
# Стало:
htop # Интерактивный монитор процессов
lazygit # Интерактивный git UI
```
4. Собрать конфигурацию:
```bash
nh os switch
```
### Способ 2: Найти пакет в nixpkgs
Если не знаешь точное имя пакета:
```bash
# Поиск в nixpkgs
nix search nixpkgs <package-name>
# Пример:
nix search nixpkgs git-lfs
```
## Удалить пакет
1. Открыть `home/ada/packages.nix`
2. Удалить строку с пакетом
3. Собрать:
```bash
nh os switch
```
## Категории пакетов
В файле `packages.nix` пакеты организованы по категориям:
```
Редакторы → vim, neovim, micro
IDE → vscode, idea-community, zed
Терминал → alacritty
Dev tools → tmux, fzf, ripgrep, fd, bat, eza
Git tools → git, gh, lazygit
Сеть → curl, wget, ssh, mosh, nmap
БД → sqlite, postgresql
Утилиты → jq, yq, zip, unzip, gnupg
Шрифты → nerdfonts (FiraCode)
```
## Правила оформления
```nix
# ✅ Хорошо - с комментарием
ripgrep # Быстрый поиск в файлах (rg)
# ❌ Плохо - без комментария
ripgrep
# ✅ Хорошо - выровнены
fzf # Интерактивный поиск
ripgrep # Быстрый поиск
# ❌ Плохо - не выровнены
fzf # Интерактивный поиск
ripgrep # Быстрый поиск
```
## Проверка перед сборкой
```bash
# Проверить синтаксис
nix flake check
# Или просто пробуй собрать:
nh os test # Тестовая сборка (без применения)
```
## Примеры
### Добавить lazydocker
1. Открыть `home/ada/packages.nix`
2. В разделе "Dev tools" добавить:
```nix
lazydocker # Docker UI
```
3. Собрать:
```bash
nh os switch
```
### Добавить несколько пакетов
```nix
# Быстрее найти нужные команды
fzf # Поиск
ripgrep-all # Поиск по всем типам
fd # find аналог
# Анализ и визуализация
tokei # Анализ кода
nitch # Системная информация
```
## Рядом интересные пакеты
- `comma` - запустить пакет без установки: `, package`
- `nix-index` - найти файл в nixpkgs
- `nixpkgs-fmt` - форматирование Nix кода