答案1
你可以尝试使用安装nix普罗特。或者您可以构建自定义前缀:
NIX_STORE_DIR=/opt/custom/store \
NIX_STATE_DIR=/opt/custom/var/nix \
NIX_DB_DIR=/opt/custom/var/nix/db \
nix-build ...
答案2
Nix 和 Guix 在从源代码构建时都允许您将选项传递--with-store-dir=${alternative_store_dir}
给它们的配置脚本。这分别默认为/nix/store
和/gnu/store
。您可以将其设置为您有写入权限的位置。
但请注意,对于两者来说,更改存储路径意味着更改许多衍生品的哈希值。这意味着您基本上无法再使用预构建的二进制包,并且最终将从源代码构建(几乎)所有内容。
答案3
nix-user-chroot
为我工作
https://nixos.wiki/wiki/Nix_Installation_Guide#nix-user-chroot
https://github.com/nix-community/nix-user-chroot
附注如果 shell 以登录名 ( nix-user-chroot ~/.nix bash -l
)启动,则 nix 命令有效;我还需要从 nix 用户再次运行安装脚本才能最终使其工作。
答案4
你确实可以在没有 Final 的情况下安装 Guix make install
,因此不需要 root 权限:http://dustycloud.org/blog/guix-package-manager-without-make-install/