forked from lix-project/lix
0a2bee307b
This ensures that 1) the derivation doesn't change when Nix changes; 2) the derivation closure doesn't contain Nix and its dependencies; 3) we don't have to rely on ugly chroot hacks.
26 lines
657 B
Nix
26 lines
657 B
Nix
let
|
|
fromEnv = var: def:
|
|
let val = builtins.getEnv var; in
|
|
if val != "" then val else def;
|
|
in rec {
|
|
perl = "@perl@";
|
|
shell = "@bash@";
|
|
coreutils = "@coreutils@";
|
|
bzip2 = "@bzip2@";
|
|
gzip = "@gzip@";
|
|
xz = "@xz@";
|
|
tar = "@tar@";
|
|
tarFlags = "@tarFlags@";
|
|
tr = "@tr@";
|
|
nixBinDir = fromEnv "NIX_BIN_DIR" "@bindir@";
|
|
nixPrefix = "@prefix@";
|
|
|
|
# If Nix is installed in the Nix store, then automatically add it as
|
|
# a dependency to the core packages. This ensures that they work
|
|
# properly in a chroot.
|
|
chrootDeps =
|
|
if dirOf nixPrefix == builtins.storeDir then
|
|
[ (builtins.storePath nixPrefix) ]
|
|
else
|
|
[ ];
|
|
}
|