跳转至

Nix Channels

地址

https://mirrors.ustc.edu.cn/nix-channels/

说明

Nixpkgs channel 以及 binary cache。Binary cache 为动态缓存。

使用说明

替换 channel 为科大源

单独安装的 Nix 对应使用的是 nixpkgs。以 nixpkgs-unstable 为例:

nix-channel --add https://mirrors.ustc.edu.cn/nix-channels/nixpkgs-unstable nixpkgs
nix-channel --update

NixOS channel 也可以以类似命令替换,以 nixos-19.09 为例(需要以 root 用户身份执行):

nix-channel --add https://mirrors.ustc.edu.cn/nix-channels/nixos-19.09 nixos
nix-channel --update

替换 binary cache 为科大源

对于单独安装的 Nix,需要修改或添加相应的配置(~/.config/nix/nix.conf/etc/nix/nix.conf),配置在重启 nix-daemon 服务之后生效:

substituters = https://mirrors.ustc.edu.cn/nix-channels/store https://cache.nixos.org/

对于 NixOS 和 nix-darwin,需要编辑 NixOS / nix-darwin 配置文件,系统会自动生成对应的 /etc/nix/nix.conf 文件。

Warning

如果你手动指定了 NIX_PATH 或是使用 Flakes 管理系统,请根据具体情况编辑对应的文件,以下仅供参考。

对于 nix-darwin,在 ~/.nixpkgs/darwin-configuration.nix 中添加:

nix.settings.substituters = [ "https://mirrors.ustc.edu.cn/nix-channels/store" ];

对于 NixOS 21.11 及之前的版本,在 /etc/nixos/configuration.nix 中添加:

nix.binaryCaches = [ "https://mirrors.ustc.edu.cn/nix-channels/store" ];

对于 NixOS 22.05 及之后的版本,在 /etc/nixos/configuration.nix 中添加:

nix.settings.substituters = [ "https://mirrors.ustc.edu.cn/nix-channels/store" ];

Note

对于所有 NixOS 19.09 及之后的版本和 nix-darwin, "https://cache.nixos.org/" 会被自动添加到配置中。

Note

由于目前的动态缓存设计不会关联 narinfonar.xz 文件,下载新文件时可能会出现类似如下的错误:

error: file 'nar/1q9n0kjn2m11z49j1bcif6d2i63h4lz964w6apkxb4mkam6phni3.nar.xz' does not exist in binary cache 'https://mirrors.ustc.edu.cn/nix-channels/store'

忽略即可,Nix 会自动回退。也可以在以上配置中按顺序添加其他的 binary cache 站点作为备选。

临时使用

在安装 NixOS 时,添加 --option substituters 可以临时使用科大源:

# nixos-install --option substituters https://mirrors.ustc.edu.cn/nix-channels/store

同样,在 NixOS 切换配置时也可以设置为临时使用:

# nixos-rebuild --option substituters https://mirrors.ustc.edu.cn/nix-channels/store

substituters 后的参数设置为空字符串 "" 可以临时禁用自己设置的镜像。

本帮助参考了 TUNA 的 nix 帮助 编写。

相关链接

NixOS 主页

https://nixos.org/

安装 Nix

https://nixos.org/manual/nix/stable/installation/installing-binary.html

上游 Nix Channels 列表

https://channels.nixos.org/