默认订阅什么 nix 频道
What nix channel is subscribed to by default
我几周前在我的机器 (macOS 10.12.6 Sierra) 上安装了 nix 包管理器。
我想更新 mylocal nixpkgs 集合,使其与频道中的任何上游更新同步。我的理解是可以通过运行ning:nix-channel --update
来实现。但是,当我 运行 时,我得到以下输出:
unpacking channels...
created 0 symlinks in user environment
表明我的系统订阅的频道中没有更新任何表情。如果我 运行 nix-channel --list
我没有看到列出任何频道。我的系统默认订阅了哪个频道?我应该期望它被列出吗?
是不是一般情况下nix-channel --update
只有在我修改了我订阅的频道或者订阅了不稳定的频道后才会产生局部变化?
您的 nix-channel --update
表明您的频道列表中有零个频道,而不是零个包。您可以使用 nix-channel --list
查看您的频道配置。您可能需要配置频道。
Nix 安装脚本当前使用名称 nixpkgs
:
配置单个频道
"$nix/bin/nix-channel" --add https://nixos.org/channels/nixpkgs-unstable
所以这是默认频道,安装后它应该列在 nix-channel --list
中,直到您 nix-channel --remove nixpkgs
或 rm ~/.nix-channels
.
nix-channel
命令仅更新您的 Nix 表达式。它不会更新任何软件包安装。它只会影响以后对 nix-build
、nix-env
和所有其他使用 $NIX_PATH
的调用。 (它在这方面类似于 apt-get update
,或者 brew update
,除了 nix-channel
不会更新已安装的 Nix 版本。)
以下内容可能特定于 OSX:
Nix 频道是按用户管理的 (source). nix-channel --list
's output is empty because by default you are not subscribed to any channels - only root is subscribed to nixpkgs-unstable
(source)。
您可以 运行 nix-channel --list
作为 root 查看他的订阅。但是
- 不要运行它通过
sudo
(参见:https://github.com/NixOS/nix/issues/1548)和
- 不要使用简单的
sudo su
,因为它不会加载 /etc/profile (source) and thus will not have the nix env variables set up (variables-setup)。
工作示例:
user$ nix-channel --list
user$ sudo su -
root# nix-channel --list
nixpkgs https://nixos.org/channels/nixpkgs-unstable
我几周前在我的机器 (macOS 10.12.6 Sierra) 上安装了 nix 包管理器。
我想更新 mylocal nixpkgs 集合,使其与频道中的任何上游更新同步。我的理解是可以通过运行ning:nix-channel --update
来实现。但是,当我 运行 时,我得到以下输出:
unpacking channels...
created 0 symlinks in user environment
表明我的系统订阅的频道中没有更新任何表情。如果我 运行 nix-channel --list
我没有看到列出任何频道。我的系统默认订阅了哪个频道?我应该期望它被列出吗?
是不是一般情况下nix-channel --update
只有在我修改了我订阅的频道或者订阅了不稳定的频道后才会产生局部变化?
您的 nix-channel --update
表明您的频道列表中有零个频道,而不是零个包。您可以使用 nix-channel --list
查看您的频道配置。您可能需要配置频道。
Nix 安装脚本当前使用名称 nixpkgs
:
"$nix/bin/nix-channel" --add https://nixos.org/channels/nixpkgs-unstable
所以这是默认频道,安装后它应该列在 nix-channel --list
中,直到您 nix-channel --remove nixpkgs
或 rm ~/.nix-channels
.
nix-channel
命令仅更新您的 Nix 表达式。它不会更新任何软件包安装。它只会影响以后对 nix-build
、nix-env
和所有其他使用 $NIX_PATH
的调用。 (它在这方面类似于 apt-get update
,或者 brew update
,除了 nix-channel
不会更新已安装的 Nix 版本。)
以下内容可能特定于 OSX:
Nix 频道是按用户管理的 (source). nix-channel --list
's output is empty because by default you are not subscribed to any channels - only root is subscribed to nixpkgs-unstable
(source)。
您可以 运行 nix-channel --list
作为 root 查看他的订阅。但是
- 不要运行它通过
sudo
(参见:https://github.com/NixOS/nix/issues/1548)和 - 不要使用简单的
sudo su
,因为它不会加载 /etc/profile (source) and thus will not have the nix env variables set up (variables-setup)。
工作示例:
user$ nix-channel --list
user$ sudo su -
root# nix-channel --list
nixpkgs https://nixos.org/channels/nixpkgs-unstable