Nix 入门指南
💡
原文英文,约800词,阅读约需3分钟。
📝
内容提要
本文介绍了Nix世界的工具和使用方法,包括Nix Package Manager、NixOS、Home Manager和Flakes。新旧两种使用方式分别使用Flakes和CLI命令、经典的Nix命令。文章提供了进一步阅读的链接。
🎯
关键要点
- Nix Package Manager 是核心工具,支持声明式和可重现的包管理。
- NixOS 是完全基于 Nix 包管理器的 Linux 发行版,建议先使用 Nix 包管理器再切换到 NixOS。
- Home Manager 管理用户包、点文件、环境变量和 shell 配置,支持跨不同机器的可移植用户环境。
- Flakes 提供 Nix 项目的标准化结构,提高可重现性和组合性,尽管仍处于实验阶段,但已被广泛采用。
- 使用 Nix 有两种方式:旧的经典方式和新的 Flakes 方式。
- 新方式使用 flake.nix 和 flake.lock 文件,命令以 'nix' 开头,旨在提高可重现性和组合性。
- 旧方式使用 nix-channel、nix-env、nix-shell 和 nix-build,依赖于通道进行包管理,结构不够标准化。
- 新方式是 Nix 的演变,解决了经典方式的一些局限性,并借鉴了其他现代包管理器的理念。
- 在 macOS 上使用 home-manager 管理用户特定的包和配置,项目使用 flake.nix 文件定义开发环境和依赖。
- 可以通过搜索 nixos.org 查找包,并在 home.nix 文件中添加,运行 home-manager switch 应用更改。
- 要安装特定版本的包,可以在 nixhub.io 搜索并在 home.nix 文件中指向所需版本。
- 提供了进一步阅读的链接,包括 Flakes 介绍和 Nix 包管理器的官方指南。
➡️