用途
该技能用于解答与 NixOS 和 Nix 生态系统相关的问题,覆盖从入门到进阶的多个主题。当用户询问 NixOS、Nix 语言、flakes、nixpkgs、configuration.nix、nixos-rebuild、模块、options、overlays、derivations、mkDerivation 等内容时适用。
主要能力
它是一个 NixOS 与 Nix 生态的文档参考,内容自动生成自官方仓库,包括:
- nix.dev:教程、指南与最佳实践
- NixOS Manual:来自 NixOS/nixpkgs
- Nix Pills:渐进式学习系列
- Release Wiki:NixOS 发布流程
references/ 目录包含来自上述来源的完整、未经修改的文档,并每日更新。
使用方式
- 从用户问题中识别主题,并读取下方表格中匹配的参考文件。
- 基于这些文件作答。如需更多细节,可从 Live Fetching 中的 raw GitHub URL 获取最新文档。
- 区分 NixOS 模块选项(如 services.nginx.enable = true;)与 Nix 语言表达式(如 pkgs.mkDerivation { ... })。
- 使用当前语法展示示例(configuration.nix 或基于 flake 的配置)。当 flakes 相关时,同时展示经典(channels)与 flakes 两种方式。
- 打包时优先使用 callPackage 模式而非原始 import。
- 初学者:从 references/first-steps.md 或 references/nix-pills.md 开始。故障排查:先查阅 references/troubleshooting.md 与 references/faq.md。系统问题:查阅 references/nixos-administration.md。
参考文件分类
入门:安装 Nix 包管理器、NixOS 安装(USB、PXE、VirtualBox、代理、其他发行版)、第一步(临时 shell、声明式 shell、可复现脚本)、升级 NixOS、修改 NixOS 配置、术语表、FAQ。
Nix 语言与概念:Nix 语言教程、Flakes、callPackage 设计模式、模块系统、在 Nix 中使用本地文件、固定 nixpkgs 版本、Nix Pills(20 课渐进式学习)。
NixOS 配置:配置语法与模块化、包管理、用户管理、网络(防火墙、SSH、IPv4/6、无线、NetworkManager)、文件系统(LUKS、SSHFS、OverlayFS)、显示服务器(X11、Wayland、Xfce、GPU 加速)、Linux 内核配置、Kubernetes、配置 profile。
NixOS 管理:服务管理、日志、回滚、故障排查、启动问题、容器。
NixOS 开发:编写 NixOS 模块(options、types、assertions)、NixOS 测试、构建 NixOS 镜像(ISO、systemd-repart)。
打包与构建:为 nixpkgs 打包现有软件、交叉编译。
教程:在 VM 上配置 NixOS、构建并运行 Docker 镜像、构建可启动 ISO 镜像、使用 VM 进行集成测试、用 Terraform 部署 NixOS、分布式构建、在 Raspberry Pi 上运行 NixOS、配置远程机器、二进制缓存。
指南与配方:最佳实践、故障排查、配方(direnv、CI、依赖、Python 环境、二进制缓存、共享依赖)。
发布流程:NixOS 发布流程、角色、branch-off、beta、freeze。
实时抓取
当参考文件不足时,可从 raw GitHub 获取最新文档:
- nix.dev:https://raw.githubusercontent.com/NixOS/nix.dev/master/source/<path>.md
- NixOS Manual (nixpkgs):https://raw.githubusercontent.com/NixOS/nixpkgs/master/nixos/doc/manual/<section>/<file>.md
- Nix Pills:https://raw.githubusercontent.com/NixOS/nix-pills/master/pills/<NN>-<slug>.md
适用场景
适合需要查询 NixOS 与 Nix 生态系统文档、学习 Nix 语言、编写或调试 NixOS 配置、打包软件、进行系统管理或测试的用户。
限制
资料未提供该技能的具体计费方式、价格、支持平台等信息,暂未提供。