Данный репозиторий содержит декларативную конфигурацию операционной системы NixOS, построенную на основе Flakes и Home Manager. Конфигурация ориентирована на комфортную работу в окружении GNOME Desktop с использованием современных инструментов разработки.
.
├── flake.nix # Точка входа: описание flake и его зависимости
├── flake.lock # Зафиксированные версии зависимостей
├── assets/ # Обои рабочего стола (светлая/тёмная темы)
├── lib/ # Вспомогательные функции (mkHost)
├── overlays/ # Nixpkgs overlays (кастомные пакеты)
├── pkgs/ # Кастомные пакеты
│ └── rebuild-switch/ # Утилита для пересборки системы
├── hosts/ # Конфигурации хостов (машин)
│ └── lucienne/ # Хост: lucienne
│ ├── default.nix # Основная конфигурация хоста
│ └── hardware-configuration.nix
├── users/ # Системные пользователи
│ └── magomedov.nix # Пользователь magomedov
├── home/ # Home Manager конфигурации
│ └── magomedov/
│ └── lucienne.nix # Конфигурация пользователя для хоста lucienne
└── modules/ # Модули конфигурации
├── nixos/ # Системные модули NixOS
│ ├── boot.nix # Загрузчик (systemd-boot, EFI)
│ ├── hardware.nix # Настройки оборудования (AMD, GPU)
│ ├── networking.nix # Сеть (NetworkManager, firewall)
│ ├── audio.nix # Звук (PipeWire)
│ ├── bluetooth.nix # Bluetooth
│ ├── fonts.nix # Шрифты (Nerd Fonts)
│ ├── locale.nix # Локаль и раскладка (us/ru)
│ ├── power-management.nix # Управление питанием
│ ├── security.nix # Безопасность (polkit, sudo)
│ ├── nix-settings.nix # Настройки Nix (flakes, GC)
│ ├── desktop/
│ │ └── gnome.nix # GNOME Desktop Manager
│ ├── virtualisation/
│ │ ├── docker.nix # Docker
│ │ └── libvirt.nix # QEMU/KVM + virt-manager
│ └── programs/
│ └── vpn.nix # AmneziaVPN
└── home-manager/ # Пользовательские модули
├── git.nix # Git + GitHub CLI
├── xdg.nix # XDG пользовательские директории
├── shell/
│ ├── fish.nix # Fish shell + eza, zoxide, fzf
│ └── direnv.nix # Direnv + nix-direnv
├── terminal/
│ ├── ghostty.nix # Ghostty терминал + тема Gruvbox
│ └── zellij.nix # Zellij мультиплексор
├── editor/
│ ├── neovim.nix # Neovim (базовая конфигурация)
│ └── zed/ # Zed Editor
│ ├── default.nix # Основные настройки
│ ├── languages.nix # Настройки языков (Python, Rust, Nix, C/C++)
│ ├── lsp.nix # LSP серверы
│ └── themes.nix # Тема Gruvbox JetBrains
├── cli/
│ ├── core-tools.nix # Основные утилиты (ripgrep, fd, htop, ...)
│ ├── dev-tools.nix # Инструменты разработки (uv, ruff, rustup, ...)
│ └── media-tools.nix # Медиа утилиты (ffmpeg, imagemagick, yt-dlp, ...)
├── desktop/
│ └── gnome/ # GNOME настройки через Home Manager
│ ├── default.nix
│ ├── settings.nix # Общие настройки GNOME
│ ├── keyboard.nix # Раскладка клавиатуры
│ ├── keybindings.nix # Горячие клавиши
│ ├── wallpaper.nix # Обои рабочего стола
│ └── extensions/ # GNOME расширения
│ ├── default.nix
│ ├── just-perfection.nix
│ ├── caffeine.nix
│ ├── vitals.nix
│ └── appindicator.nix
└── browsers/
└── zen-browser/ # Zen Browser
├── default.nix
├── extensions.nix # Расширения (uBlock, Bitwarden, DarkReader, ...)
├── prefs.nix # Настройки браузера
└── policies.nix # Политики + поисковые движки
| Категория | Инструменты |
|---|---|
| ОС | NixOS 26.05, Flakes, Home Manager |
| Рабочий стол | GNOME (Wayland), GDM |
| Терминал | Ghostty, Zellij |
| Оболочка | Fish, direnv, zoxide, fzf, eza |
| Редакторы | Zed Editor, Neovim |
| Браузер | Zen Browser |
| Виртуализация | Docker, QEMU/KVM (libvirt) |
| Языки/инструменты | Python (uv, ruff, ty), Rust (rustup, rust-analyzer), Nix (nixd, nixfmt), C/C++ (clangd, clang-format) |
| Шрифты | JetBrains Mono Nerd Font, Fira Code Nerd Font, Hack Nerd Font |
| Тема | Gruvbox JetBrains Dark (кастомная) |
| Клавиша | Действие |
|---|---|
Super + Return |
Открыть Ghostty |
Super + f |
Открыть Zen Browser |
Super + e |
Открыть Nautilus |
Super + q |
Закрыть окно |
Alt + Shift |
Переключить раскладку (us/ru) |
git clone https://github.com/magomedov-dev/nixos-config.git ~/nix-config
cd ~/nix-configsudo nixos-rebuild switch --flake .#luciennerebuildУтилита rebuild автоматически обновит flake и пересоберёт систему.
| Хост | Описание | Платформа |
|---|---|---|
| lucienne | Основная рабочая станция | x86_64-linux, AMD CPU, NVMe |
MIT