luochen570 c92c904e76 chore: clean up and optimize nixos configuration
- fix: nvidia.nix missing semicolon (build error)
- remove: ranger, vim from core/pkg.nix (yazi + neovim covers)
- remove: htop duplicate in home/pkg.nix (keep in system)
- replace: neofetch with fastfetch in home/pkg.nix
- remove: nixd LSP, keep nil only in nvchad.nix
- remove: empty server/pkg.nix and no-op server/firewall.nix
- remove: redundant services.pulseaudio.enable = false default
- add: comprehensive README.md documenting architecture
2026-05-24 10:36:23 +08:00
2026-03-01 19:38:51 +08:00
2026-03-01 19:38:51 +08:00
2026-03-01 19:38:51 +08:00
2026-03-01 19:38:51 +08:00
2026-02-27 23:58:08 +08:00
2026-02-28 10:21:32 +08:00
2026-02-28 11:14:50 +08:00
2026-03-01 19:38:51 +08:00

NixOS Configuration

洛尘luochen570的 NixOS 配置仓库,采用 Flakes + home-manager + sops-nix 架构。

架构

nixos/
├── flake.nix                   # Flake 入口
├── lib/
│   ├── mkHost.nix              # 主机生成函数
│   └── hosts.nix               # 主机定义5 台机器)
├── profiles/                  # 角色配置组合
│   ├── desktop.nix
│   ├── server.nix
│   ├── wsl.nix
│   ├── virtualbox.nix
│   └── lxc.nix
├── modules/
│   ├── core/                  # 所有机器共享的基础配置
│   │   ├── default.nix
│   │   ├── core.nix            # Nix 设置、时区、语言、GC
│   │   ├── pkg.nix             # 基础系统包
│   │   ├── users.nix           # 用户与 Shell
│   │   └── sops.nix            # 密钥管理
│   ├── server/                # 服务器模块
│   │   ├── default.nix
│   │   ├── docker.nix
│   │   └── ssh.nix
│   ├── desktop/               # 桌面模块
│   │   ├── default.nix
│   │   ├── pkg.nix             # 桌面应用包
│   │   ├── apps.nix            # MIME 与默认应用
│   │   ├── fcitx5.nix          # 中文输入法
│   │   └── de/
│   │       ├── default.nix
│   │       └── kde.nix         # KDE Plasma 6 + SDDM
│   ├── drivers/
│   │   ├── nvidia.nix          # NVIDIA 独显
│   │   └── amdgpu.nix          # AMD 核显RDNA2
├── home/                      # home-manager 用户配置
│   ├── default.nix
│   ├── pkg.nix                 # 用户级包
│   ├── git.nix
│   ├── ssh.nix                 # SSH 密钥sops 挂载)
│   ├── zsh.nix                 # ZSH + Powerlevel10k
│   └── nvchad.nix              # Neovim (NvChad)
├── hosts/                     # 主机专属配置
│   ├── desktop/               # 桌面机AMD + NVIDIA
│   ├── server/                # 服务器
│   ├── wsl/                   # WSL (NixOS-WSL)
│   ├── virtualbox/            # VirtualBox 虚拟机
│   └── nixos-lxc/             # Proxmox LXC 容器
└── secrets/                   # sops-nix 加密密钥(不公开)
    └── users/luochen570.enc.yaml

主机列表

主机 角色 架构 说明
desktop desktop x86_64-linux 桌面机NVIDIA + AMD 双显卡
server server x86_64-linux 服务器
nixos-wsl wsl x86_64-linux WSL
virtualbox virtualbox x86_64-linux VirtualBox 虚拟机
nixos-lxc lxc x86_64-linux Proxmox LXC 容器

使用

# 构建/切换
sudo nixos-rebuild switch --flake .#desktop

# 仅构建不切换
sudo nixos-rebuild build --flake .#server

# 更新 flake lock
nix flake update

# 垃圾回收
sudo nix-collect-garbage --delete-older-than 14d

关键特性

  • Flakes — 可复现的 NixOS 配置
  • home-manager — 用户级包与配置管理
  • sops-nix — 加密存储 SSH 密钥、密码哈希等敏感信息
  • NixOS-WSL — WSL 集成
  • KDE Plasma 6 — 桌面环境SDDM 显示管理器)
  • fcitx5 + Rime — 中文输入法
  • Docker — 容器运行时,自动每周清理
  • PipeWire — 音频系统
  • Nix4NvChad — Neovim (NvChad) 配置即代码

镜像源

使用 TUNA清华和 SJTU上交镜像加速 Nix 包下载,适合国内网络环境。

注意事项

  • NVIDIA 模块的 PRIME双显卡切换方案已注释启用前需通过 lspci 确认 PCIe Bus ID
  • LXC 容器使用 Proxmox LXC 模块,关闭了 systemd 挂载报错的服务
  • secrets/ 目录经过 sops 加密,需有对应 age key 才能解密
Description
No description provided
Readme 102 KiB
Languages
Nix 100%