
nix-config快速上手指南clone即构建10个最实用的justfile命令全解析【免费下载链接】nix-configWimpys NixOS, nix-darwin Home Manager Configurations ❄️项目地址: https://gitcode.com/gh_mirrors/nixco/nix-config还在为 NixOS 配置管理头疼吗nix-config是一个基于 Nix Flake 的 NixOS、macOS 与 Home Manager 一体化配置仓库一个仓库管理所有电脑clone 下来就能构建全程只需要一条just命令。它对新手最友好的地方在于你不需要背诵复杂的nixos-rebuild参数仓库自带的 justfile 把构建、检查、切换、格式化、垃圾回收等日常操作全部封装成了简短的 justfile 命令。本文是一份面向新手和普通用户的 nix-config 快速上手教程带你认识这个项目的架构并完整解析 10 个最实用的 justfile 命令帮你快速建立自己的 Nix 工作流。一、nix-config 是什么为什么值得学一句话概括nix-config 用一个 Git 仓库管理作者所有的 NixOS 工作站、笔记本、服务器和 macOS 机器。它的核心设计叫广播-门控broadcast-and-gate模式每个模块被所有主机导入不再需要为每台机器维护一份 import 清单模块内部根据主机元数据是笔记本还是服务器、有没有 NVIDIA 显卡等自己决定是否激活新增功能 丢一个目录进_mixins新机器 在注册表里加一行配置其他什么都不用改。主机注册信息在 lib/registry-systems.toml门控逻辑的完整文档见 lib/noughty/README.md。二、一键克隆clone 即构建准备工作只需要三步第一步安装两个小工具just命令运行器可以理解为自定义命令的快捷键安装后所有 justfile 命令全局可用nixNix 包管理器Determinate Systems 版本支持 CI 缓存加速。第二步克隆仓库git clone https://gitcode.com/gh_mirrors/nixco/nix-config nix-config cd nix-config第三步跑一条命令just就这一条。just不带参数时执行的是default配方它会列出所有可用命令justfile 第 6-7 行。从这一刻起clone 即构建的体验就开始了。 提示命令会自动识别你的系统。在 Linux 上构建 NixOS 配置在 macOS 上构建 nix-darwin 配置同一个命令两种系统都通用。三、10个最实用的justfile命令全解析以下按日常使用频率排序每个命令都给出用途、效果和适用场景无需逐行读代码。命令 1just—— 查看全部命令清单just作用列出 justfile 里的全部命令相当于查看帮助。新手必会忘了有哪些命令先跑它。输出未排序--unsorted所见即 justfile 里的定义顺序方便对照阅读。命令 2just build—— 构建全部配置just build作用依次执行build-home构建用户级配置和build-host构建系统级配置只编译、不改变系统。适用场景修改了配置后先验证能否编译通过再决定是否应用到系统。这是最安全的试错姿势。命令 3just check—— 体检你的 flakejust check作用深度求值当前平台的 NixOS、Darwin、Home Manager 配置以及 packages、devShells、formatter 等所有输出专门用于发现语法错误和依赖问题justfile 第 139-211 行。适用场景提交代码前、或感觉系统不对劲时的第一排查命令。比build更轻量不真正编译系统。命令 4just switch—— 应用全部变更just switch作用切换激活Home Manager 与系统配置到当前机器。Home Manager 切换会自动带时间戳备份--backup-extension出问题可回滚。适用场景确认just build成功后一条命令把改动落到系统上。日常改完就生效就靠它。命令 5just host/just home—— 组合快捷方式just host # 构建并切换系统配置NixOS / nix-darwin just home # 构建并切换 Home Manager 配置作用把构建 切换合并成一步是最常用的两条日常命令justfile 第 443-451 行。适用场景作者本人也更常迭代用户级配置所以just home的使用频率最高系统级配置改动少just host偶尔用。命令 6just update—— 更新依赖锁just update作用执行nix flake update刷新 flake.lock 中所有输入到最新版本。适用场景想让系统吃到最新 nixpkgs / 工具链时运行。注意更新锁文件后建议紧跟just check验证兼容性。命令 7just eval—— 快速查看输出结构just eval作用分两步求值先列出 flake 的语法与结构所有 NixOS/Darwin/Home 配置名、包名、devShells再对所有配置做语法检查justfile 第 217-220 行。适用场景不构建的情况下快速确认我改的东西是否被正确识别速度远快于just check。命令 8just format—— 一键格式化just format # 格式化全部文件 just format nixos/ # 只格式化指定目录作用按序运行deadnix清理死代码、statix修复规范问题、treefmt/nixfmt格式化。flag 与 flake 里的formatter输出保持同步justfile 第 633-653 行。适用场景提交代码前必跑保证风格统一。配置了statix.toml和overlays/补丁的仓库尤其需要它。命令 9just gc—— Nix 垃圾回收just gc作用执行nh clean all --keep 5清理 Nix store 中不再使用的旧世代保留最近 5 个。适用场景磁盘空间紧张时运行。经常切换配置的系统/nix/store会持续增长这条命令是清道夫。命令 10just apply—— 极速应用CI 缓存加速just apply # 从缓存应用全部配置 just apply-home # 只应用用户配置 just apply-host # 只应用系统配置作用跳过本地求值和编译直接拉取 CI 发布到 FlakeHub Cache 的预构建闭包用fhCLI 一键激活justfile 第 351-441 行。应用后还会用nvd展示这次到底改了什么。适用场景追求速度。代价是只能应用最后发布到 main 分支的版本本地未提交的改动请用just host/just home。进阶彩蛋管理多台远程主机时just push 主机名可在工作站构建并把 NixOS Home Manager 配置一起推送到远端just install 主机名 IP则能远程安装全新 NixOS。详见 README.md。四、日常工作流推荐把上面的命令串起来你就有了完整的开发循环阶段命令说明1. 修改配置编辑任意default.nix模块放在_mixins下自动被对应主机采纳2. 快速验证just eval或just check不编译只查语法和结构3. 本地构建just build编译通过再往下走4. 应用到本机just switch或一步到位just host/just home5. 应用到远端just apply或just push 主机缓存加速或远程推送6. 收尾just formatjust gc统一风格、回收磁盘五、常见疑问Q没有安装just、nh、nom能用吗可以。README.md 提供了不依赖这些工具的原始nixos-rebuild/nix build/nix run nix-darwin命令对照但日常使用强烈推荐 just 工作流。Qjust build和just check有什么区别check只求值、验证结构速度快build会真正编译出系统闭包耗时更长但能发现更深层的依赖问题。Q我改了配置应用后想撤销怎么办Home Manager 每次切换都会带时间戳备份见 justfile 中的backup_ext变量NixOS 侧则保留了旧系统世代重启选旧版本即可回滚。六、总结nix-config 用clone 即构建的体验重新定义了 Nix 配置管理的学习曲线一条git clone 一条just立刻进入状态10 条命令覆盖 构建、检查、切换、更新、格式化、回收、缓存加速的完整生命周期广播-门控架构让新增功能和新增主机都变成了加一个目录/加一行注册表的简单操作。建议新手先掌握just、just check、just switch、just home这四条其余的随使用自然熟悉。配置仓库的目录结构和模块详解可继续阅读 README.md 和 lib/noughty/README.md。❄️【免费下载链接】nix-configWimpys NixOS, nix-darwin Home Manager Configurations ❄️项目地址: https://gitcode.com/gh_mirrors/nixco/nix-config创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考