stdenv: Store one package per line in nix-support/propagated-*
This makes those files a bit easier to read. Also, for what it's worth, it brings us one baby step closer to handling spaces in store paths. Also, I optimized handling of many transitive deps with read. Probably, not very beneficial, but nice to enforce the pkg-per-line structure. Doing so let me find much dubious code and fix it. Two misc notes: - `propagated-user-env-packages` also needed to be adjusted as sometimes it is copied to/from the propagated input files. - `local fd` should ensure that file descriptors aren't clobbered during recursion.
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
export PATH=
|
||||
for i in $initialPath; do
|
||||
if [ "$i" = / ]; then i=; fi
|
||||
PATH=$PATH${PATH:+:}$i/bin
|
||||
@@ -15,4 +14,6 @@ cat "$setup" >> $out/setup
|
||||
# Allow the user to install stdenv using nix-env and get the packages
|
||||
# in stdenv.
|
||||
mkdir $out/nix-support
|
||||
echo $propagatedUserEnvPkgs > $out/nix-support/propagated-user-env-packages
|
||||
if [ "$propagatedUserEnvPkgs" ]; then
|
||||
printf '%s\n' $propagatedUserEnvPkgs > $out/nix-support/propagated-user-env-packages
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user