关于 nix-rebuild
nix-rebuild 是用于在 macOS 上应用 Nix 管理配置更改的技能,介绍 darwin-rebuild 命令及 hey 封装命令,可用于重建、测试和回滚系统代次。
主要功能
- 01使用 darwin-rebuild 重建配置
- 02通过 hey 执行重建
- 03构建并激活但不创建启动项
- 04回滚到上一系统代次
- 05验证 Nix store 符号链接已更新
适用场景
- 01应用 Nix 配置文件的编辑
- 02激活由 Home Manager 链接的文件更改
- 03恢复到之前的系统代次
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ edmundmiller/ dotfiles --skill nix-rebuild安装后在 Claude Code 中输入/nix-rebuild确认已加载。
详细介绍
Nix 系统重建
修改 ~/.config/dotfiles 中由 Nix 管理的任何配置后,必须重建系统才能使更改生效。Nix store 符号链接为只读,无法直接编辑。
快速重建
cd ~/.config/dotfiles
sudo darwin-rebuild switch --flake .
darwin-rebuild 有一条 NOPASSWD sudoers 规则,因此可以在非交互模式下运行。
使用 hey
hey 命令封装了重建操作:
hey rebuild # or: hey re
hey test # build + activate without boot entry
hey rollback # roll back to previous generation
何时重建
- 编辑任何
.nix文件后 - 编辑通过 home-manager 创建符号链接的配置文件后(lazygit、ghostty 等)
- 遇到向 Nix store 路径写入时显示“permission denied”时
工作流
- 在
~/.config/dotfiles/中编辑源配置 - 提交更改
- 运行
sudo darwin-rebuild switch --flake ~/.config/dotfiles - 确认符号链接现在指向更新后的 Nix store 路径
评论
支持 Markdown