| 项目 | 实现 |
|---|---|
| 启动器 | Noctalia Shell |
| 顶栏 | Noctalia Shell |
| 终端 | Kitty |
| 编辑器 | VSCode |
| 字体 | Maple Mono NF CN |
| 主题 | Dracula |
| Shell | Fish |
| 桌面环境 | Hyprland |
| 输入法 | Fcitx5 · Rime |
| 音乐播放 | go-musicfox |
| 截图工具 | Flameshot |
| 剪贴板 | Clipse |
| 壁纸管理器 | Waypaper |
| 桌面歌词 | Waylyrics |
| 浏览器 | Zen Browser |
本仓库现在使用 agenix + age 管理 Home Manager secrets:
- agenix 规则文件:
modules/home/secrets/secrets.nix - 加密文件目录:
modules/home/secrets/*.age - Home Manager 挂载配置:
modules/home/secrets/default.nix
当前 secrets.nix 使用 SSH 公钥作为 recipient,因此你本机需要对应私钥(默认:~/.ssh/id_ed25519)。
ls -l ~/.ssh/id_ed25519 ~/.ssh/id_ed25519.pub已在 flake.nix 中启用:
agenix.homeManagerModules.defaultcd modules/home/secrets
agenix -e people_name.dict.yaml.age或编辑另一个 secret:
cd modules/home/secrets
agenix -e mihomoConfig.yaml.age- 保存退出后会自动重新加密
- 提交到 git 的始终是
.age密文文件
以新增 musicfoxCookie 为例。
编辑 modules/home/secrets/secrets.nix,新增:
"musicfoxCookie.age".publicKeys = [ pubKey ];cd modules/home/secrets
agenix -e musicfoxCookie.age编辑 modules/home/secrets/default.nix 的 age.secrets,新增:
musicfoxCookie = {
file = ./musicfoxCookie.age;
path = "/home/${config.home.username}/.local/share/go-musicfox/cookie";
};config.age.secrets.musicfoxCookie.pathsudo nixos-rebuild switch --flake .#nixos-desktop- 检查
~/.ssh/id_ed25519是否存在且与secrets.nix公钥匹配 - 或在
age.identityPaths中改成你实际私钥路径
- 确认
modules/home/secrets/default.nix的age.secrets.<name>.file与path已声明 - 确认对应
.age文件存在 - 查看 Home Manager 激活日志定位失败步骤
