与此问题相关:nix-shell:如何指定自定义环境变量?
有了这个推导:
stdenv.mkDerivation rec {
FOO = "bar";
}
FOO
将在 nix shell 中作为环境变量提供,但是否可以从 env 文件加载环境变量?
与此问题相关:nix-shell:如何指定自定义环境变量?
有了这个推导:
stdenv.mkDerivation rec {
FOO = "bar";
}
FOO
将在 nix shell 中作为环境变量提供,但是否可以从 env 文件加载环境变量?
您可以使用nix-shell
'sshellHook
从文件中加载环境变量,方法是将它们作为 shell 代码采购。例如:
stdenv.mkDerivation {
name = "my-shell";
shellHook = ''
# Mark variables which are modified or created for export.
set -a
source env.sh
# or to make it relative to the directory of this shell.nix file
# source ${toString ./env.sh}
set +a
'';
}
如果您的外壳也不是一个包,您可以切换stdenv.mkDerivation
到。mkShell