* Updated to reflect the changes to the grammar.

svn path=/nixpkgs/trunk/; revision=464
This commit is contained in:
Eelco Dolstra 2003-11-03 10:22:00 +00:00
parent 2041469c69
commit 77d20ed799
26 changed files with 397 additions and 379 deletions

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "gnutar-1.13.25" name = "gnutar-1.13.25";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://alpha.gnu.org/gnu/tar/tar-1.13.25.tar.gz url = ftp://alpha.gnu.org/gnu/tar/tar-1.13.25.tar.gz;
, md5 = "6ef8c906e81eee441f8335652670ac4a" md5 = "6ef8c906e81eee441f8335652670ac4a";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,9 +1,9 @@
{stdenv}: {url, md5}: derivation {stdenv}: {url, md5}: derivation {
{ name = baseNameOf (toString url) name = baseNameOf (toString url);
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, stdenv = stdenv stdenv = stdenv;
, url = url url = url;
, md5 = md5 md5 = md5;
, id = md5 id = md5;
} }

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "gzip-1.3.3" name = "gzip-1.3.3";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = http://www.gzip.org/gzip-1.3.3.tar.gz url = http://www.gzip.org/gzip-1.3.3.tar.gz;
, md5 = "52eaf713673507d21f7abefee98ba662" md5 = "52eaf713673507d21f7abefee98ba662";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,12 +1,12 @@
{stdenv, fetchurl, binutils}: derivation {stdenv, fetchurl, binutils}: derivation {
{ name = "gcc-3.3.2" name = "gcc-3.3.2";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.nluug.nl/pub/gnu/gcc/gcc-3.3.2/gcc-3.3.2.tar.bz2 url = ftp://ftp.nluug.nl/pub/gnu/gcc/gcc-3.3.2/gcc-3.3.2.tar.bz2;
, md5 = "65999f654102f5438ac8562d13a6eced" md5 = "65999f654102f5438ac8562d13a6eced";
} };
, stdenv = stdenv stdenv = stdenv;
, binutils = binutils binutils = binutils;
, noSysDirs = stdenv.noSysDirs noSysDirs = stdenv.noSysDirs;
} }

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "aterm-2.0" name = "aterm-2.0";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = http://www.cwi.nl/projects/MetaEnv/aterm/aterm-2.0.tar.gz url = http://www.cwi.nl/projects/MetaEnv/aterm/aterm-2.0.tar.gz;
, md5 = "853474e4bcf4a85f7d38a0676b36bded" md5 = "853474e4bcf4a85f7d38a0676b36bded";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,20 +1,21 @@
{stdenv, fetchurl, kernelHeaders}: derivation {stdenv, fetchurl, kernelHeaders}: derivation {
{ name = "glibc-2.3.2" name = "glibc-2.3.2";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, glibcSrc = fetchurl
{ url = ftp://ftp.nl.net/pub/gnu/glibc/glibc-2.3.2.tar.bz2 glibcSrc = fetchurl {
, md5 = "ede969aad568f48083e413384f20753c" url = ftp://ftp.nl.net/pub/gnu/glibc/glibc-2.3.2.tar.bz2;
} md5 = "ede969aad568f48083e413384f20753c";
, linuxthreadsSrc = fetchurl };
{ url = ftp://ftp.nl.net/pub/gnu/glibc/glibc-linuxthreads-2.3.2.tar.bz2 linuxthreadsSrc = fetchurl {
, md5 = "894b8969cfbdf787c73e139782167607" url = ftp://ftp.nl.net/pub/gnu/glibc/glibc-linuxthreads-2.3.2.tar.bz2;
} md5 = "894b8969cfbdf787c73e139782167607";
};
# This is a patch to make glibc compile under GCC 3.3. Presumably # This is a patch to make glibc compile under GCC 3.3. Presumably
# later releases of glibc won't need this. # later releases of glibc won't need this.
, vaargsPatch = ./glibc-2.3.2-sscanf-1.patch vaargsPatch = ./glibc-2.3.2-sscanf-1.patch;
, stdenv = stdenv stdenv = stdenv;
, kernelHeaders = kernelHeaders kernelHeaders = kernelHeaders;
} }

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "pcre-4.3" name = "pcre-4.3";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-4.3.tar.bz2 url = ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-4.3.tar.bz2;
, md5 = "7bc7d5b590a41e6f9ede30f272002a02" md5 = "7bc7d5b590a41e6f9ede30f272002a02";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,11 +1,11 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "binutils-2.14" name = "binutils-2.14";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.nluug.nl/pub/gnu/binutils/binutils-2.14.tar.bz2 url = ftp://ftp.nluug.nl/pub/gnu/binutils/binutils-2.14.tar.bz2;
, md5 = "2da8def15d28af3ec6af0982709ae90a" md5 = "2da8def15d28af3ec6af0982709ae90a";
} };
, stdenv = stdenv stdenv = stdenv;
, noSysDirs = stdenv.noSysDirs noSysDirs = stdenv.noSysDirs;
} }

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "gnumake-3.80" name = "gnumake-3.80";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.nluug.nl/pub/gnu/make/make-3.80.tar.bz2 url = ftp://ftp.nluug.nl/pub/gnu/make/make-3.80.tar.bz2;
, md5 = "0bbd1df101bc0294d440471e50feca71" md5 = "0bbd1df101bc0294d440471e50feca71";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,10 +1,11 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "linux-headers-2.4.22-i386" # !!! check that this is a i386
, system = stdenv.system name = "linux-headers-2.4.22-i386";
, builder = ./builder.sh system = stdenv.system;
, src = fetchurl builder = ./builder.sh;
{ url = ftp://ftp.nl.kernel.org/pub/linux/kernel/v2.4/linux-2.4.22.tar.bz2 src = fetchurl {
, md5 = "75dc85149b06ac9432106b8941eb9f7b" url = ftp://ftp.nl.kernel.org/pub/linux/kernel/v2.4/linux-2.4.22.tar.bz2;
} md5 = "75dc85149b06ac9432106b8941eb9f7b";
, stdenv = stdenv };
} stdenv = stdenv;
}

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "bash-2.05b" name = "bash-2.05b";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.nluug.nl/pub/gnu/bash/bash-2.05b.tar.gz url = ftp://ftp.nluug.nl/pub/gnu/bash/bash-2.05b.tar.gz;
, md5 = "5238251b4926d778dfe162f6ce729733" md5 = "5238251b4926d778dfe162f6ce729733";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,22 +1,23 @@
{system, name, noSysDirs, prehook, posthook, initialPath, {system, name, noSysDirs, prehook, posthook, initialPath,
param1, param2, param3, param4, param5}: derivation param1, param2, param3, param4, param5}:
{ name = name derivation {
, system = system name = name;
, builder = ./builder.sh system = system;
, noSysDirs = noSysDirs builder = ./builder.sh;
noSysDirs = noSysDirs;
, setup = ./setup.sh setup = ./setup.sh;
, gccwrapper = ./gcc-wrapper.sh gccwrapper = ./gcc-wrapper.sh;
, ldwrapper = ./ld-wrapper.sh ldwrapper = ./ld-wrapper.sh;
, prehook = prehook prehook = prehook;
, posthook = posthook posthook = posthook;
, initialPath = initialPath initialPath = initialPath;
# TODO: make this more elegant. # TODO: make this more elegant.
, param1 = param1 param1 = param1;
, param2 = param2 param2 = param2;
, param3 = param3 param3 = param3;
, param4 = param4 param4 = param4;
, param5 = param5 param5 = param5;
} }

View file

@ -1,13 +1,13 @@
{system}: (import ../generic) {system}: (import ../generic) {
{ name = "stdenv-native" name = "stdenv-native";
, system = system system = system;
, prehook = ./prehook.sh prehook = ./prehook.sh;
, posthook = ./posthook.sh posthook = ./posthook.sh;
, initialPath = "/usr/local /usr /" initialPath = "/usr/local /usr /";
, param1 = "" param1 = "";
, param2 = "" param2 = "";
, param3 = "" param3 = "";
, param4 = "" param4 = "";
, param5 = "" param5 = "";
, noSysDirs = false noSysDirs = false;
} }

View file

@ -1,13 +1,13 @@
{system, glibc}: (import ../generic) {system, glibc}: (import ../generic) {
{ name = "stdenv-linux-boot" name = "stdenv-linux-boot";
, system = system system = system;
, prehook = ./prehook-boot.sh prehook = ./prehook-boot.sh;
, posthook = ./posthook.sh posthook = ./posthook.sh;
, initialPath = "/usr/local /usr /" initialPath = "/usr/local /usr /";
, param1 = "" param1 = "";
, param2 = "" param2 = "";
, param3 = "" param3 = "";
, param4 = glibc param4 = glibc;
, param5 = "" param5 = "";
, noSysDirs = true noSysDirs = true;
} }

View file

@ -1,25 +1,25 @@
{bootStdenv, pkgs, glibc}: (import ../generic) {bootStdenv, pkgs, glibc}: (import ../generic) {
{ name = "stdenv-nix-linux" name = "stdenv-nix-linux";
, system = bootStdenv.system system = bootStdenv.system;
, prehook = ./prehook.sh prehook = ./prehook.sh;
, posthook = ./posthook.sh posthook = ./posthook.sh;
, initialPath = initialPath =
[ pkgs.coreutils [ pkgs.coreutils
, pkgs.findutils , pkgs.findutils
, pkgs.diffutils , pkgs.diffutils
, pkgs.gnused , pkgs.gnused
, pkgs.gnugrep , pkgs.gnugrep
, pkgs.gawk , pkgs.gawk
, pkgs.gnutar , pkgs.gnutar
, pkgs.gzip , pkgs.gzip
, pkgs.binutils , pkgs.binutils
, pkgs.gnumake , pkgs.gnumake
, pkgs.gcc , pkgs.gcc
] ];
, param1 = pkgs.bash param1 = pkgs.bash;
, param2 = pkgs.gcc param2 = pkgs.gcc;
, param3 = pkgs.binutils param3 = pkgs.binutils;
, param4 = glibc param4 = glibc;
, param5 = "" param5 = "";
, noSysDirs = true noSysDirs = true;
} }

View file

@ -1,25 +1,25 @@
{bootStdenv, pkgs}: (import ../generic) {bootStdenv, pkgs}: (import ../generic) {
{ name = "stdenv-nix" name = "stdenv-nix";
, system = bootStdenv.system system = bootStdenv.system;
, prehook = ./prehook.sh prehook = ./prehook.sh;
, posthook = ./posthook.sh posthook = ./posthook.sh;
, initialPath = initialPath =
[ pkgs.coreutils [ pkgs.coreutils
, pkgs.findutils , pkgs.findutils
, pkgs.diffutils , pkgs.diffutils
, pkgs.gnused , pkgs.gnused
, pkgs.gnugrep , pkgs.gnugrep
, pkgs.gawk , pkgs.gawk
, pkgs.gnutar , pkgs.gnutar
, pkgs.gzip , pkgs.gzip
, pkgs.binutils , pkgs.binutils
, pkgs.gnumake , pkgs.gnumake
, pkgs.gcc , pkgs.gcc
] ];
, param1 = pkgs.bash param1 = pkgs.bash;
, param2 = pkgs.gcc param2 = pkgs.gcc;
, param3 = pkgs.binutils param3 = pkgs.binutils;
, param4 = "" param4 = "";
, param5 = "" param5 = "";
, noSysDirs = false noSysDirs = false;
} }

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "coreutils-5.0" name = "coreutils-5.0";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.nluug.nl/pub/gnu/coreutils/coreutils-5.0.tar.bz2 url = ftp://ftp.nluug.nl/pub/gnu/coreutils/coreutils-5.0.tar.bz2;
, md5 = "94e5558ee2a65723d4840bfde2d323f0" md5 = "94e5558ee2a65723d4840bfde2d323f0";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "diffutils-2.8.1" name = "diffutils-2.8.1";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.nluug.nl/pub/gnu/diffutils/diffutils-2.8.1.tar.gz url = ftp://ftp.nluug.nl/pub/gnu/diffutils/diffutils-2.8.1.tar.gz;
, md5 = "71f9c5ae19b60608f6c7f162da86a428" md5 = "71f9c5ae19b60608f6c7f162da86a428";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "findutils-4.1.20" name = "findutils-4.1.20";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://alpha.gnu.org/pub/gnu/findutils/findutils-4.1.20.tar.gz url = ftp://alpha.gnu.org/pub/gnu/findutils/findutils-4.1.20.tar.gz;
, md5 = "e90ce7222daadeb8616b8db461e17cbc" md5 = "e90ce7222daadeb8616b8db461e17cbc";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "gawk-3.1.3" name = "gawk-3.1.3";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.nluug.nl/pub/gnu/gawk/gawk-3.1.3.tar.bz2 url = ftp://ftp.nluug.nl/pub/gnu/gawk/gawk-3.1.3.tar.bz2;
, md5 = "a116eec17e7ba085febb74c7758823bd" md5 = "a116eec17e7ba085febb74c7758823bd";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -1,11 +1,11 @@
{stdenv, fetchurl, pcre}: derivation {stdenv, fetchurl, pcre}: derivation {
{ name = "gnugrep-2.5.1" name = "gnugrep-2.5.1";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.nluug.nl/pub/gnu/grep/grep-2.5.1.tar.bz2 url = ftp://ftp.nluug.nl/pub/gnu/grep/grep-2.5.1.tar.bz2;
, md5 = "ddd99e2d5d4f4611357e31e97f080cf2" md5 = "ddd99e2d5d4f4611357e31e97f080cf2";
} };
, stdenv = stdenv stdenv = stdenv;
, pcre = pcre pcre = pcre;
} }

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl}: derivation {stdenv, fetchurl}: derivation {
{ name = "gnused-4.0.7" name = "gnused-4.0.7";
, system = stdenv.system system = stdenv.system;
, builder = ./builder.sh builder = ./builder.sh;
, src = fetchurl src = fetchurl {
{ url = ftp://ftp.nluug.nl/pub/gnu/sed/sed-4.0.7.tar.gz url = ftp://ftp.nluug.nl/pub/gnu/sed/sed-4.0.7.tar.gz;
, md5 = "005738e7f97bd77d95b6907156c8202a" md5 = "005738e7f97bd77d95b6907156c8202a";
} };
, stdenv = stdenv stdenv = stdenv;
} }

View file

@ -2,108 +2,110 @@
# identifier and a standard build environment, returns the set of all # identifier and a standard build environment, returns the set of all
# packages provided by the Nix Package Collection. # packages provided by the Nix Package Collection.
{system, stdenv}: rec {system, stdenv}: rec {
{ fetchurl = (import ../build-support/fetchurl)
{ stdenv = stdenv # build-support/fetchurl
} fetchurl = (import ../build-support/fetchurl) {
stdenv = stdenv;
};
# sys-utils/coreutils # sys-utils/coreutils
, coreutils = (import ../sys-utils/coreutils) coreutils = (import ../sys-utils/coreutils) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# sys-utils/findutils # sys-utils/findutils
, findutils = (import ../sys-utils/findutils) findutils = (import ../sys-utils/findutils) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# sys-utils/diffutils # sys-utils/diffutils
, diffutils = (import ../sys-utils/diffutils) diffutils = (import ../sys-utils/diffutils) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# sys-utils/gnused # sys-utils/gnused
, gnused = (import ../sys-utils/gnused) gnused = (import ../sys-utils/gnused) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# sys-utils/gnugrep # sys-utils/gnugrep
, gnugrep = (import ../sys-utils/gnugrep) gnugrep = (import ../sys-utils/gnugrep) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
, pcre = pcre pcre = pcre;
} };
# sys-utils/gawk # sys-utils/gawk
, gawk = (import ../sys-utils/gawk) gawk = (import ../sys-utils/gawk) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# archivers/gnutar # archivers/gnutar
, gnutar = (import ../archivers/gnutar) gnutar = (import ../archivers/gnutar) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# compression/gzip # compression/gzip
, gzip = (import ../compression/gzip) gzip = (import ../compression/gzip) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# shells/bash # shells/bash
, bash = (import ../shells/bash) bash = (import ../shells/bash) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# devel/tools/binutils # devel/tools/binutils
, binutils = (import ../devel/tools/binutils) binutils = (import ../devel/tools/binutils) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# devel/tools/gnumake # devel/tools/gnumake
, gnumake = (import ../devel/tools/gnumake) gnumake = (import ../devel/tools/gnumake) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# devel/compilers/gcc # devel/compilers/gcc
, gcc = (import ../devel/compilers/gcc) gcc = (import ../devel/compilers/gcc) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
, binutils = binutils binutils = binutils;
} };
# devel/libs/pcre # devel/libs/pcre
, pcre = (import ../devel/libs/pcre) pcre = (import ../devel/libs/pcre) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# devel/libs/glibc # devel/libs/glibc
, glibc = (import ../devel/libs/glibc) glibc = (import ../devel/libs/glibc) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
, kernelHeaders = kernelHeaders kernelHeaders = kernelHeaders;
} };
# devel/libs/aterm # devel/libs/aterm
, aterm = (import ../devel/libs/aterm) aterm = (import ../devel/libs/aterm) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
# os-specific/linux/kernel-headers # os-specific/linux/kernel-headers
, kernelHeaders = (import ../os-specific/linux/kernel-headers) kernelHeaders = (import ../os-specific/linux/kernel-headers) {
{ fetchurl = fetchurl fetchurl = fetchurl;
, stdenv = stdenv stdenv = stdenv;
} };
} }

View file

@ -8,43 +8,43 @@
# Posix utilities, the GNU C compiler, and so on. On other systems, # Posix utilities, the GNU C compiler, and so on. On other systems,
# we use the native C library. # we use the native C library.
{system}: let {system}: let {
{ allPackages = import ./all-packages-generic.fix allPackages = import ./all-packages-generic.fix;
# The native (i.e., impure) build environment. This one uses the # The native (i.e., impure) build environment. This one uses the
# tools installed on the system outside of the Nix environment, # tools installed on the system outside of the Nix environment,
# i.e., the stuff in /bin, /usr/bin, etc. This environment should # i.e., the stuff in /bin, /usr/bin, etc. This environment should
# be used with care, since many Nix packages will not build properly # be used with care, since many Nix packages will not build properly
# with it (e.g., because they require GNU Make). # with it (e.g., because they require GNU Make).
, stdenvNative = (import ../stdenv/native) {system = system} stdenvNative = (import ../stdenv/native) {system = system};
, stdenvNativePkgs = allPackages {system = system, stdenv = stdenvNative} stdenvNativePkgs = allPackages {system = system; stdenv = stdenvNative};
# The Nix build environment. # The Nix build environment.
, stdenvNix = (import ../stdenv/nix) stdenvNix = (import ../stdenv/nix) {
{ bootStdenv = stdenvNative bootStdenv = stdenvNative;
, pkgs = stdenvNativePkgs pkgs = stdenvNativePkgs;
} };
, stdenvNixPkgs = allPackages {system = system, stdenv = stdenvNix} stdenvNixPkgs = allPackages {system = system; stdenv = stdenvNix};
# The Linux build environment consists of the Nix build environment # The Linux build environment consists of the Nix build environment
# built against the GNU C Library. # built against the GNU C Library.
, stdenvLinuxGlibc = stdenvNativePkgs.glibc stdenvLinuxGlibc = stdenvNativePkgs.glibc;
, stdenvLinuxBoot = (import ../stdenv/nix-linux/boot.fix) stdenvLinuxBoot = (import ../stdenv/nix-linux/boot.fix) {
{ system = system system = system;
, glibc = stdenvLinuxGlibc glibc = stdenvLinuxGlibc;
} };
, stdenvLinuxBootPkgs = allPackages {system = system, stdenv = stdenvLinuxBoot} stdenvLinuxBootPkgs = allPackages {system = system; stdenv = stdenvLinuxBoot};
, stdenvLinux = (import ../stdenv/nix-linux) stdenvLinux = (import ../stdenv/nix-linux) {
{ bootStdenv = stdenvLinuxBoot bootStdenv = stdenvLinuxBoot;
, pkgs = stdenvLinuxBootPkgs pkgs = stdenvLinuxBootPkgs;
, glibc = stdenvLinuxGlibc glibc = stdenvLinuxGlibc;
} };
, stdenvLinuxPkgs = allPackages {system = system, stdenv = stdenvLinux} stdenvLinuxPkgs = allPackages {system = system; stdenv = stdenvLinux};
# Select the right instantiation. # Select the right instantiation.
, body = body =
if system == "i686-suse-linux" if system == "i686-suse-linux"
then stdenvLinuxPkgs then stdenvLinuxPkgs
else stdenvNixPkgs else stdenvNixPkgs;
} }

View file

@ -1 +1 @@
(import ./user-environment.fix) { system = "i686-suse-linux" } (import ./user-environment.fix) {system = "i686-suse-linux"}

View file

@ -1,8 +1,21 @@
{system}: derivation # Given a system identifier, this function returns a derivation of a
{ name = "user-environment" # user environment, i.e., a set of symbolic links to `activated'
, system = system # packages. The resulting package is typically passed to the
, builder = ./populate-linkdirs.pl # `nix-switch' command in order to actually activate it.
, pkgs =
[ ((import ./all-packages.fix) {system = system}).aterm {system}: let {
] # All activated packages.
} pkgs = (import ./all-packages.fix) {system = system};
# This
selectedPkgs =
[ pkgs.aterm
];
body = derivation {
name = "user-environment";
system = system;
builder = ./populate-linkdirs.pl;
dirs = selectedPkgs;
};
}