需安装nix包管理器以实现macos上可复现、声明式、隔离的软件包管理;首先打开终端,执行官方单行安装脚本完成多用户或单用户模式配置及shell环境变量设置。

如果您希望在 macOS 系统上获得可复现、声明式且隔离的软件包管理体验,则需要安装 Nix 包管理器。以下是完成安装与基础配置的详细步骤:
一、通过官方安装脚本安装 Nix
该方法使用 Nix 官方维护的单行安装脚本,自动配置多用户模式(推荐)或单用户模式,并设置必要的 shell 环境变量。
1、打开终端应用程序(位于“应用程序 > 实用工具”中)。
2、执行以下命令下载并运行安装脚本:
sh
3、当提示选择安装模式时,按回车接受默认的多用户安装(需输入管理员密码)。
4、安装完成后,关闭当前终端窗口,重新打开一个新的终端窗口以加载新环境。
二、手动启用 Nix 配置文件(适用于 macOS Catalina 及更新版本)
macOS 10.15+ 默认使用 zsh,Nix 安装脚本可能未自动修改 shell 初始化文件,需手动确认并追加配置。
1、检查当前 shell 类型:
echo $SHELL
2、若输出为 /bin/zsh,则编辑 ~/.zshrc 文件:
nano ~/.zshrc
3、在文件末尾添加以下三行内容:
export NIX_PATH=nixpkgs=https://github.com/NixOS/nixpkgs/archive/nixos-23.11.tar.gz
export PATH="/nix/var/nix/profiles/default/bin:$PATH"
. /nix/var/nix/profiles/default/etc/profile.d/nix.sh
4、保存并退出 nano(Ctrl+O → Enter → Ctrl+X),然后运行:
source ~/.zshrc
三、验证 Nix 安装状态
通过执行核心命令确认 Nix 已正确初始化并能访问通道和包索引。
1、检查 Nix 版本信息:
nix --version
2、列出已配置的 Nix 通道:
nix-channel --list
3、尝试构建一个最小表达式以验证求值能力:
nix eval --raw '(builtins.toString 42)'
4、若返回 42,说明 Nix 表达式引擎工作正常。
四、安装首个 Nix 包(以 ripgrep 为例)
Nix 提供两种安装方式:临时运行(不写入 profile)与持久安装(添加至用户 profile),此处演示后者。
1、搜索可用的 ripgrep 包:
nix search nixpkgs ripgrep
2、将 ripgrep 安装到当前用户的 profile 中:
nix-env -iA nixpkgs.ripgrep
3、验证是否可在 shell 中直接调用:
rg --version
4、查看当前 profile 中已安装的所有包:
nix-env -q
五、启用 Flakes 功能(高级用户必选)
Flakes 是 Nix 的现代项目封装机制,需显式启用才能使用 nix build、nix run 等命令。
1、创建 Nix 配置目录(如不存在):
mkdir -p ~/.config/nix
2、编辑或新建 ~/.config/nix/nix.conf 文件:
nano ~/.config/nix/nix.conf
3、在该文件中添加以下两行:
experimental-features = nix-command flakes
warn-dirty = false
4、重启终端或运行 source ~/.zshrc 后,执行:
nix flake metadata











