关于在主目录中安装的 Nix 教程
Nix tutorial on installing in home directory
我正在尝试遵循这个 tutorial,以便在我的主目录而不是 /nix
.
中安装 Nix 包管理器
我正在执行 PRoot 安装(请参阅教程中的 2.)。最后,
教程建议在 Building native packages 部分变得聪明,成为
能够 运行 没有 PRoot 的包:
To run packages natively (without PRoot) they have to be build from source because all paths to the nix store are hard-coded. It is simple, really:
mkdir $HOME/nix
nix-channel --update
env NIX_STORE_DIR=$HOME/nix nix-env -i nix
And now your Nix store gets built up using the new paths. The built binaries can be run directly from there.
我做到了,但我看不出它如何让我摆脱 PRoot。如果我不使用 PRoot 执行 /nix
安装点,则没有任何效果(没有 nix-env
可执行文件,
我无法安装新软件包)。
这个NIX_STORE_DIR
环境变量应该放在我的.bashrc
中吗?
似乎我总是需要 运行 PRoot 因为 ~/.nix-profile
指向
一个 /nix/...
目录:
.nix-profile -> /nix/var/nix/profiles/default
教程中有更多步骤(5.、6.)- 我应该遵循它们吗?似乎它们仅适用于使用手动安装(第 4 步)的情况,
虽然不是很明确。
任何帮助将不胜感激:)
对于遇到这个老问题的任何人:没有 root
当前没有支持的安装 Nix 的方法。上述 wiki 已移至 https://nixos.wiki/wiki/Nix_Installation_Guide 。它可能已经过时了。 PRoot
可以工作,但即便如此,在不同的路径上重建整个存储也不是一个好主意,尤其是因为二进制缓存无济于事,你需要构建 everything .
我建议在虚拟机或云服务器中试用 Nix。
来自 Google 的未来人,它仍然不受支持,但确实有效。 Script here 安装几个依赖项,构建一个临时 Nix,并使用它在您选择的目录中安装适当的版本。
我正在尝试遵循这个 tutorial,以便在我的主目录而不是 /nix
.
我正在执行 PRoot 安装(请参阅教程中的 2.)。最后, 教程建议在 Building native packages 部分变得聪明,成为 能够 运行 没有 PRoot 的包:
To run packages natively (without PRoot) they have to be build from source because all paths to the nix store are hard-coded. It is simple, really:
mkdir $HOME/nix
nix-channel --update
env NIX_STORE_DIR=$HOME/nix nix-env -i nix
And now your Nix store gets built up using the new paths. The built binaries can be run directly from there.
我做到了,但我看不出它如何让我摆脱 PRoot。如果我不使用 PRoot 执行 /nix
安装点,则没有任何效果(没有 nix-env
可执行文件,
我无法安装新软件包)。
这个NIX_STORE_DIR
环境变量应该放在我的.bashrc
中吗?
似乎我总是需要 运行 PRoot 因为 ~/.nix-profile
指向
一个 /nix/...
目录:
.nix-profile -> /nix/var/nix/profiles/default
教程中有更多步骤(5.、6.)- 我应该遵循它们吗?似乎它们仅适用于使用手动安装(第 4 步)的情况, 虽然不是很明确。
任何帮助将不胜感激:)
对于遇到这个老问题的任何人:没有 root
当前没有支持的安装 Nix 的方法。上述 wiki 已移至 https://nixos.wiki/wiki/Nix_Installation_Guide 。它可能已经过时了。 PRoot
可以工作,但即便如此,在不同的路径上重建整个存储也不是一个好主意,尤其是因为二进制缓存无济于事,你需要构建 everything .
我建议在虚拟机或云服务器中试用 Nix。
来自 Google 的未来人,它仍然不受支持,但确实有效。 Script here 安装几个依赖项,构建一个临时 Nix,并使用它在您选择的目录中安装适当的版本。