* Allow the user to install stdenv (nix-env -i stdenv) and get all the
packages in the stdenv as propagated user environment packages. svn path=/nixpkgs/branches/stdenv-updates/; revision=15300
This commit is contained in:
parent
5175cce9a9
commit
671d53dd35
@ -123,5 +123,9 @@ rec {
|
|||||||
else f (path ++ [name]) value;
|
else f (path ++ [name]) value;
|
||||||
in mapAttrs g set;
|
in mapAttrs g set;
|
||||||
in recurse [] set;
|
in recurse [] set;
|
||||||
|
|
||||||
|
|
||||||
|
/* Check whether the argument is a derivation. */
|
||||||
|
isDerivation = x: isAttrs x && x ? type && x.type == "derivation";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -30,3 +30,8 @@ sed \
|
|||||||
-e "s^@param4@^$p4^g" \
|
-e "s^@param4@^$p4^g" \
|
||||||
-e "s^@param5@^$p5^g" \
|
-e "s^@param5@^$p5^g" \
|
||||||
< "$setup" > "$out/setup"
|
< "$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
|
||||||
|
@ -7,7 +7,9 @@
|
|||||||
fetchurlBoot
|
fetchurlBoot
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let {
|
let
|
||||||
|
|
||||||
|
lib = import ../../lib;
|
||||||
|
|
||||||
stdenvGenerator = setupScript: rec {
|
stdenvGenerator = setupScript: rec {
|
||||||
|
|
||||||
@ -27,6 +29,9 @@ let {
|
|||||||
|
|
||||||
# TODO: make this more elegant.
|
# TODO: make this more elegant.
|
||||||
inherit param1 param2 param3 param4 param5;
|
inherit param1 param2 param3 param4 param5;
|
||||||
|
|
||||||
|
propagatedUserEnvPkgs = [gcc] ++
|
||||||
|
lib.filter lib.isDerivation initialPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
// {
|
// {
|
||||||
@ -79,7 +84,7 @@ let {
|
|||||||
|
|
||||||
# For convenience, bring in the library functions in lib/ so
|
# For convenience, bring in the library functions in lib/ so
|
||||||
# packages don't have to do that themselves.
|
# packages don't have to do that themselves.
|
||||||
lib = import ../../lib;
|
inherit lib;
|
||||||
|
|
||||||
inherit fetchurlBoot;
|
inherit fetchurlBoot;
|
||||||
|
|
||||||
@ -94,6 +99,4 @@ let {
|
|||||||
}.result;
|
}.result;
|
||||||
|
|
||||||
|
|
||||||
body = stdenvGenerator ./setup.sh;
|
in stdenvGenerator ./setup.sh
|
||||||
|
|
||||||
}
|
|
||||||
|
@ -205,10 +205,9 @@ rec {
|
|||||||
|
|
||||||
preHook = builtins.toFile "prehook.sh" commonPreHook;
|
preHook = builtins.toFile "prehook.sh" commonPreHook;
|
||||||
|
|
||||||
initialPath = [
|
initialPath =
|
||||||
((import ../common-path.nix) {pkgs = stdenvLinuxBoot3Pkgs;})
|
((import ../common-path.nix) {pkgs = stdenvLinuxBoot3Pkgs;})
|
||||||
stdenvLinuxBoot3Pkgs.patchelf
|
++ [stdenvLinuxBoot3Pkgs.patchelf];
|
||||||
];
|
|
||||||
|
|
||||||
gcc = wrapGCC rec {
|
gcc = wrapGCC rec {
|
||||||
inherit (stdenvLinuxBoot2Pkgs) binutils;
|
inherit (stdenvLinuxBoot2Pkgs) binutils;
|
||||||
|
Loading…
Reference in New Issue
Block a user