* 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
{ name = "gnutar-1.13.25"
, system = stdenv.system
, builder = ./builder.sh
, src = fetchurl
{ url = ftp://alpha.gnu.org/gnu/tar/tar-1.13.25.tar.gz
, md5 = "6ef8c906e81eee441f8335652670ac4a"
}
, stdenv = stdenv
}
{stdenv, fetchurl}: derivation {
name = "gnutar-1.13.25";
system = stdenv.system;
builder = ./builder.sh;
src = fetchurl {
url = ftp://alpha.gnu.org/gnu/tar/tar-1.13.25.tar.gz;
md5 = "6ef8c906e81eee441f8335652670ac4a";
};
stdenv = stdenv;
}

View file

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

View file

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

View file

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

View file

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

View file

@ -1,20 +1,21 @@
{stdenv, fetchurl, kernelHeaders}: derivation
{ name = "glibc-2.3.2"
, system = stdenv.system
, builder = ./builder.sh
, glibcSrc = fetchurl
{ 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
, md5 = "894b8969cfbdf787c73e139782167607"
}
{stdenv, fetchurl, kernelHeaders}: derivation {
name = "glibc-2.3.2";
system = stdenv.system;
builder = ./builder.sh;
glibcSrc = fetchurl {
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;
md5 = "894b8969cfbdf787c73e139782167607";
};
# This is a patch to make glibc compile under GCC 3.3. Presumably
# 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
, kernelHeaders = kernelHeaders
}
stdenv = stdenv;
kernelHeaders = kernelHeaders;
}

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -8,43 +8,43 @@
# Posix utilities, the GNU C compiler, and so on. On other systems,
# we use the native C library.
{system}: let
{ allPackages = import ./all-packages-generic.fix
{system}: let {
allPackages = import ./all-packages-generic.fix;
# The native (i.e., impure) build environment. This one uses the
# tools installed on the system outside of the Nix environment,
# i.e., the stuff in /bin, /usr/bin, etc. This environment should
# be used with care, since many Nix packages will not build properly
# with it (e.g., because they require GNU Make).
, stdenvNative = (import ../stdenv/native) {system = system}
, stdenvNativePkgs = allPackages {system = system, stdenv = stdenvNative}
stdenvNative = (import ../stdenv/native) {system = system};
stdenvNativePkgs = allPackages {system = system; stdenv = stdenvNative};
# The Nix build environment.
, stdenvNix = (import ../stdenv/nix)
{ bootStdenv = stdenvNative
, pkgs = stdenvNativePkgs
}
, stdenvNixPkgs = allPackages {system = system, stdenv = stdenvNix}
stdenvNix = (import ../stdenv/nix) {
bootStdenv = stdenvNative;
pkgs = stdenvNativePkgs;
};
stdenvNixPkgs = allPackages {system = system; stdenv = stdenvNix};
# The Linux build environment consists of the Nix build environment
# built against the GNU C Library.
, stdenvLinuxGlibc = stdenvNativePkgs.glibc
, stdenvLinuxBoot = (import ../stdenv/nix-linux/boot.fix)
{ system = system
, glibc = stdenvLinuxGlibc
}
, stdenvLinuxBootPkgs = allPackages {system = system, stdenv = stdenvLinuxBoot}
stdenvLinuxGlibc = stdenvNativePkgs.glibc;
stdenvLinuxBoot = (import ../stdenv/nix-linux/boot.fix) {
system = system;
glibc = stdenvLinuxGlibc;
};
stdenvLinuxBootPkgs = allPackages {system = system; stdenv = stdenvLinuxBoot};
, stdenvLinux = (import ../stdenv/nix-linux)
{ bootStdenv = stdenvLinuxBoot
, pkgs = stdenvLinuxBootPkgs
, glibc = stdenvLinuxGlibc
}
, stdenvLinuxPkgs = allPackages {system = system, stdenv = stdenvLinux}
stdenvLinux = (import ../stdenv/nix-linux) {
bootStdenv = stdenvLinuxBoot;
pkgs = stdenvLinuxBootPkgs;
glibc = stdenvLinuxGlibc;
};
stdenvLinuxPkgs = allPackages {system = system; stdenv = stdenvLinux};
# Select the right instantiation.
, body =
if system == "i686-suse-linux"
then stdenvLinuxPkgs
else stdenvNixPkgs
}
body =
if system == "i686-suse-linux"
then stdenvLinuxPkgs
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
{ name = "user-environment"
, system = system
, builder = ./populate-linkdirs.pl
, pkgs =
[ ((import ./all-packages.fix) {system = system}).aterm
]
}
# Given a system identifier, this function returns a derivation of a
# user environment, i.e., a set of symbolic links to `activated'
# packages. The resulting package is typically passed to the
# `nix-switch' command in order to actually activate it.
{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;
};
}