【问题标题】:Nix tutorial on installing in home directoryNix 关于在主目录中安装的教程
【发布时间】:2016-11-29 18:51:46
【问题描述】:

我正在尝试关注这个tutorial,以便在我的主目录中安装 Nix 包管理器而不是 /nix

我正在安装 PRoot(参见教程中的 2.)。最后, 教程建议在 Building native packages 部分变得聪明, 能够在没有 PRoot 的情况下运行包:

要本地运行包(没有 PRoot),它们必须从源代码构建,因为到 nix 存储的所有路径都是硬编码的。真的很简单:

mkdir $HOME/nix

nix-channel --update

env NIX_STORE_DIR=$HOME/nix nix-env -i nix

现在您的 Nix 商店使用新路径建立起来了。构建的二进制文件可以直接从那里运行。

我这样做了,但我不明白它是如何让我摆脱 PRoot 的。如果我不使用 PRoot 执行 /nix 挂载点,则没有任何效果(没有 nix-env 可执行文件, 我无法安装新软件包)。

这个NIX_STORE_DIR 环境变量是否应该放在我的.bashrc 中?

看来我总是需要运行 PRoot 因为~/.nix-profile 指向 /nix/... 目录:

.nix-profile -> /nix/var/nix/profiles/default

本教程中有更多步骤(5.、6.) - 我应该遵循它们吗?似乎它们仅适用于使用手动安装(第 4 步)的情况, 虽然不是很明确。

任何帮助将不胜感激:)

【问题讨论】:

  • 最后一步之后,可以访问$HOME/nix/var/nix/profiles/default/nix-env吗?

标签: home-directory nix


【解决方案1】:

来自 Google 的未来人,它仍然不受支持,但确实有效。 Script here 安装几个依赖项,构建一个临时 Nix,并使用它在您选择的目录中安装适当的版本。

【讨论】:

    【解决方案2】:

    对于遇到这个老问题的任何人:目前不支持没有root 的安装 Nix 的方法。上面的 wiki 已移至 https://nixos.wiki/wiki/Nix_Installation_Guide 。它很可能已经过时了。 PRoot 可以工作,但即便如此,以不同的路径重建整个存储也不是一个好主意,尤其是因为二进制缓存无济于事,您需要构建所有内容 .

    我建议在虚拟机或云服务器中尝试 Nix。

    【讨论】:

    • 我刚刚从 Nix 2.0.4 开始工作。这不是太难,只是无证。 Code here.
    猜你喜欢
    • 2013-02-12
    • 1970-01-01
    • 1970-01-01
    • 2013-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-08
    • 1970-01-01
    相关资源
    最近更新 更多