diff --git a/pkgs/applications/networking/browsers/firefox-wrapper/default.nix b/pkgs/applications/networking/browsers/firefox-wrapper/default.nix index c806d88c80a..909a52d0a41 100644 --- a/pkgs/applications/networking/browsers/firefox-wrapper/default.nix +++ b/pkgs/applications/networking/browsers/firefox-wrapper/default.nix @@ -11,4 +11,8 @@ stdenv.mkDerivation { # Let each plugin tell us (through its `mozillaPlugin') attribute # where to find the plugin in its tree. plugins = map (x: x ~ x.mozillaPlugin) plugins; + + meta = { + description = firefox.meta.description + " (with various plugins)"; + }; } diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix index d06e065d9c5..4905ed29826 100644 --- a/pkgs/applications/networking/browsers/firefox/default.nix +++ b/pkgs/applications/networking/browsers/firefox/default.nix @@ -41,4 +41,7 @@ stdenv.mkDerivation { ] ++ (if enableOfficialBranding then ["--enable-official-branding"] else []); + meta = { + description = "Mozilla Firefox - the browser, reloaded"; + }; } diff --git a/pkgs/build-support/gcc-cross-wrapper/default.nix b/pkgs/build-support/gcc-cross-wrapper/default.nix index 0ceab44ee27..09f7f006928 100644 --- a/pkgs/build-support/gcc-cross-wrapper/default.nix +++ b/pkgs/build-support/gcc-cross-wrapper/default.nix @@ -27,4 +27,7 @@ stdenv.mkDerivation { langCC = if nativeTools then true else gcc.langCC; langF77 = if nativeTools then false else gcc.langF77; shell = if shell == "" then stdenv.shell else shell; + meta = if gcc != null then gcc.meta else + { description = "System C compiler wrapper"; + }; } diff --git a/pkgs/build-support/gcc-wrapper/default.nix b/pkgs/build-support/gcc-wrapper/default.nix index 4296aef67c8..22d02395129 100644 --- a/pkgs/build-support/gcc-wrapper/default.nix +++ b/pkgs/build-support/gcc-wrapper/default.nix @@ -27,4 +27,7 @@ stdenv.mkDerivation { langCC = if nativeTools then true else gcc.langCC; langF77 = if nativeTools then false else gcc.langF77; shell = if shell == "" then stdenv.shell else shell; + meta = if gcc != null then gcc.meta else + { description = "System C compiler wrapper"; + }; } diff --git a/pkgs/development/compilers/blackdown/default.nix b/pkgs/development/compilers/blackdown/default.nix index 43ed19a1098..b83c3124e8a 100644 --- a/pkgs/development/compilers/blackdown/default.nix +++ b/pkgs/development/compilers/blackdown/default.nix @@ -6,4 +6,4 @@ if stdenv.system == "i686-linux" inherit stdenv fetchurl; } else - false + null diff --git a/pkgs/development/compilers/gcc-4.0-cross/default.nix b/pkgs/development/compilers/gcc-4.0-cross/default.nix index a31353e2d23..ecae99ceeee 100644 --- a/pkgs/development/compilers/gcc-4.0-cross/default.nix +++ b/pkgs/development/compilers/gcc-4.0-cross/default.nix @@ -26,4 +26,10 @@ stdenv.mkDerivation { buildInputs = [binutilsCross]; inherit kernelHeadersCross binutilsCross; platform = cross; + + meta = { + homepage = "http://gcc.gnu.org/"; + license = "GPL/LGPL"; + description = "GNU Compiler Collection, 4.0.x (cross-compiler for " + cross + ")"; + }; } diff --git a/pkgs/development/compilers/gcc-4.0/default.nix b/pkgs/development/compilers/gcc-4.0/default.nix index bed212e964b..8363c10edb4 100644 --- a/pkgs/development/compilers/gcc-4.0/default.nix +++ b/pkgs/development/compilers/gcc-4.0/default.nix @@ -15,4 +15,10 @@ stdenv.mkDerivation { # !!! apply only if noSysDirs is set patches = [./no-sys-dirs.patch]; inherit noSysDirs langC langCC langF77 profiledCompiler; + + meta = { + homepage = "http://gcc.gnu.org/"; + license = "GPL/LGPL"; + description = "GNU Compiler Collection, 4.0.x"; + }; } diff --git a/pkgs/development/libraries/aterm/aterm-2.4.nix b/pkgs/development/libraries/aterm/aterm-2.4.nix index a4a802471fe..c367b4b9054 100644 --- a/pkgs/development/libraries/aterm/aterm-2.4.nix +++ b/pkgs/development/libraries/aterm/aterm-2.4.nix @@ -6,4 +6,9 @@ stdenv.mkDerivation { url = http://nix.cs.uu.nl/dist/tarballs/aterm-2.4.2.tar.gz; md5 = "18617081dd112d85e6c4b1b552628114"; }; + meta = { + homepage = http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/ATerm; + license = "LGPL"; + description = "Library for manipulation of term data structures in C"; + }; } diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index b07a694276e..772b8973e6c 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -16,4 +16,9 @@ genericStdenv { }; shell = "/bin/sh"; + + extraAttrs = { + # Curl should be in /usr/bin or so. + curl = null; + }; } diff --git a/pkgs/system/stdenvs.nix b/pkgs/stdenv/default.nix similarity index 70% rename from pkgs/system/stdenvs.nix rename to pkgs/stdenv/default.nix index b96c3d17674..b66d770782c 100644 --- a/pkgs/system/stdenvs.nix +++ b/pkgs/stdenv/default.nix @@ -5,14 +5,16 @@ # Posix utilities, the GNU C compiler, and so on. On other systems, # we use the native C library. -{system, allPackages}: rec { +{system, allPackages}: + +rec { gccWrapper = import ../build-support/gcc-wrapper; - genericStdenv = import ../stdenv/generic; + genericStdenv = import ./generic; # Trivial environment used for building other environments. - stdenvInitial = (import ../stdenv/initial) { + stdenvInitial = (import ./initial) { name = "stdenv-initial"; inherit system; }; @@ -23,47 +25,44 @@ # 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) { + stdenvNative = (import ./native) { stdenv = stdenvInitial; inherit genericStdenv gccWrapper; }; stdenvNativePkgs = allPackages { - stdenv = stdenvNative; - bootCurl = null; + bootStdenv = stdenvNative; noSysDirs = false; }; # The Nix build environment. - stdenvNix = (import ../stdenv/nix) { + stdenvNix = (import ./nix) { stdenv = stdenvNative; pkgs = stdenvNativePkgs; inherit genericStdenv gccWrapper; }; stdenvNixPkgs = allPackages { - stdenv = stdenvNix; - bootCurl = stdenvNativePkgs.curl; + bootStdenv = stdenvNix; noSysDirs = false; }; # Linux standard environment. - inherit (import ../stdenv/linux {inherit allPackages;}) + inherit (import ./linux {inherit allPackages;}) stdenvLinux stdenvLinuxPkgs; # Darwin (Mac OS X) standard environment. Very simple for now # (essentially it's just the native environment). - stdenvDarwin = (import ../stdenv/darwin) { + stdenvDarwin = (import ./darwin) { stdenv = stdenvInitial; inherit genericStdenv gccWrapper; }; stdenvDarwinPkgs = allPackages { - stdenv = stdenvDarwin; - bootCurl = null; + bootStdenv = stdenvDarwin; noSysDirs = false; }; @@ -71,21 +70,21 @@ # FreeBSD standard environment. Right now this is more or less the # same as the native environemnt. Eventually we'll want a pure # environment similar to stdenvLinux. - stdenvFreeBSD = (import ../stdenv/freebsd) { + stdenvFreeBSD = (import ./freebsd) { stdenv = stdenvInitial; inherit genericStdenv gccWrapper; }; stdenvFreeBSDPkgs = allPackages { - stdenv = stdenvFreeBSD; - bootCurl = null; + bootStdenv = stdenvFreeBSD; noSysDirs = false; }; - stdenvTestPkgs = allPackages { - stdenv = (import ../stdenv/nix-linux-static).stdenvInitial; - bootCurl = (import ../stdenv/nix-linux-static).curl; - noSysDirs = true; - }; + # Select the appropriate stdenv for the platform `system'. + stdenv = + if system == "i686-linux" then stdenvLinux + else if system == "i686-freebsd" then stdenvFreeBSD + else if system == "powerpc-darwin" then stdenvDarwin + else stdenvNative; } diff --git a/pkgs/stdenv/freebsd/default.nix b/pkgs/stdenv/freebsd/default.nix index 2fa92f7d95b..a94533edfaf 100644 --- a/pkgs/stdenv/freebsd/default.nix +++ b/pkgs/stdenv/freebsd/default.nix @@ -16,4 +16,9 @@ genericStdenv { }; shell = "/bin/bash"; + + extraAttrs = { + # Curl should be in /usr/bin or so. + curl = null; + }; } diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index b25703eb9af..90770e9dddc 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -1,5 +1,6 @@ { stdenv, name, preHook ? null, postHook ? null, initialPath, gcc, shell , param1 ? "", param2 ? "", param3 ? "", param4 ? "", param5 ? "" +, extraAttrs ? {} }: let { @@ -24,13 +25,33 @@ let { # Add a utility function to produce derivations that use this # stdenv and its shell. // { - mkDerivation = attrs: derivation (attrs // { - builder = if attrs ? realBuilder then attrs.realBuilder else shell; - args = if attrs ? args then attrs.args else - ["-e" (if attrs ? builder then attrs.builder else ./default-builder.sh)]; - stdenv = body; - system = body.system; - }); - }; + + mkDerivation = attrs: + (derivation ( + (removeAttrs attrs ["meta"]) + // + { + builder = if attrs ? realBuilder then attrs.realBuilder else shell; + args = if attrs ? args then attrs.args else + ["-e" (if attrs ? builder then attrs.builder else ./default-builder.sh)]; + stdenv = body; + system = body.system; + }) + ) + // + # The meta attribute is passed in the resulting attribute set, + # but it's not part of the actual derivation, i.e., it's not + # passed to the builder and is not a dependency. But since we + # include it in the result, it *is* available to nix-env for + # queries. + { meta = if attrs ? meta then attrs.meta else {}; }; + + } + + # Propagate any extra attributes. For instance, we use this to + # "lift" packages like curl from the final stdenv for Linux to + # all-packages.nix for that platform (meaning that it has a line + # like curl = if stdenv ? curl then stdenv.curl else ...). + // extraAttrs; } diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 6c369c65841..3fc3c16e01f 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -114,22 +114,26 @@ rec { # This function builds the various standard environments used during # the bootstrap. - stdenvBootFun = {glibc, gcc, binutils, staticGlibc}: (import ../generic) { - name = "stdenv-linux-boot"; - param1 = if staticGlibc then "static" else "dynamic"; - preHook = ./prehook.sh; - stdenv = stdenvInitial; - shell = ./tools/bash; - gcc = (import ../../build-support/gcc-wrapper) { + stdenvBootFun = + {glibc, gcc, binutils, staticGlibc, extraAttrs ? {}}: + + import ../generic { + name = "stdenv-linux-boot"; + param1 = if staticGlibc then "static" else "dynamic"; + preHook = ./prehook.sh; stdenv = stdenvInitial; - nativeTools = false; - nativeGlibc = false; - inherit gcc glibc binutils; + shell = ./tools/bash; + gcc = (import ../../build-support/gcc-wrapper) { + stdenv = stdenvInitial; + nativeTools = false; + nativeGlibc = false; + inherit gcc glibc binutils; + }; + initialPath = [ + staticTools + ]; + inherit extraAttrs; }; - initialPath = [ - staticTools - ]; - }; # Create the first "real" standard environment. This one consists @@ -139,13 +143,13 @@ rec { # Use the statically linked, downloaded glibc/gcc/binutils. inherit glibc gcc binutils; staticGlibc = true; + extraAttrs = {inherit curl;}; }; # 2) These are the packages that we can build with the first # stdenv. We only need Glibc (in step 3). stdenvLinuxBoot1Pkgs = allPackages { - stdenv = stdenvLinuxBoot1; - bootCurl = curl; + bootStdenv = stdenvLinuxBoot1; }; # 3) Build Glibc with the statically linked tools. The result is the @@ -159,12 +163,12 @@ rec { glibc = stdenvLinuxGlibc; staticGlibc = false; inherit gcc binutils; + extraAttrs = {inherit curl;}; }; # 5) The packages that can be built using the second stdenv. stdenvLinuxBoot2Pkgs = allPackages { - stdenv = stdenvLinuxBoot2; - bootCurl = curl; + bootStdenv = stdenvLinuxBoot2; }; # 6) Construct a third stdenv identical to the second, except that @@ -174,12 +178,12 @@ rec { glibc = stdenvLinuxGlibc; staticGlibc = false; inherit (stdenvLinuxBoot2Pkgs) gcc binutils; + extraAttrs = {inherit curl;}; }; # 7) The packages that can be built using the third stdenv. stdenvLinuxBoot3Pkgs = allPackages { - stdenv = stdenvLinuxBoot3; - bootCurl = curl; + bootStdenv = stdenvLinuxBoot3; }; # 8) Construct the final stdenv. It uses the Glibc, GCC and @@ -205,20 +209,14 @@ rec { }; shell = stdenvLinuxBoot3Pkgs.bash ~ /bin/sh; + + extraAttrs = { + curl = stdenvLinuxBoot3Pkgs.realCurl; + inherit (stdenvLinuxBoot2Pkgs) binutils /* gcc */; + inherit (stdenvLinuxBoot3Pkgs) + gzip bzip2 bash coreutils diffutils findutils gawk + gnumake gnused gnutar gnugrep patch patchelf; + }; }; - # 8) Finally, the set of components built using the Linux stdenv. - # Reuse the tools built in the previous steps. - stdenvLinuxPkgs = - allPackages { - stdenv = stdenvLinux; - bootCurl = stdenvLinuxBoot3Pkgs.curl; - } // - {inherit (stdenvLinuxBoot2Pkgs) binutils gcc;} // - {inherit (stdenvLinuxBoot3Pkgs) - gzip bzip2 bash coreutils diffutils findutils gawk - gnumake gnused gnutar gnugrep curl patch patchelf; - } // - {glibc = stdenvLinuxGlibc;}; - } diff --git a/pkgs/system/all-packages.nix b/pkgs/system/all-packages.nix deleted file mode 100644 index 55f705ebd43..00000000000 --- a/pkgs/system/all-packages.nix +++ /dev/null @@ -1,18 +0,0 @@ -# This file evaluates to a function that, when supplied with a system -# identifier, returns the set of all packages provided by the Nix -# Package Collection. It does this by supplying -# `all-packages-generic.nix' with one of the standard build -# environments defined in `stdenvs.nix'. - -{system ? __currentSystem}: let { - allPackages = import ./all-packages-generic.nix; - - stdenvs = import ./stdenvs.nix {inherit system allPackages;}; - - # Select the right instantiation. - body = - if system == "i686-linux" then stdenvs.stdenvLinuxPkgs - else if system == "i686-freebsd" then stdenvs.stdenvFreeBSDPkgs - else if system == "powerpc-darwin" then stdenvs.stdenvDarwinPkgs - else stdenvs.stdenvNativePkgs; -} diff --git a/pkgs/system/i686-linux.nix b/pkgs/system/i686-linux.nix deleted file mode 100644 index 4ff2a8cda12..00000000000 --- a/pkgs/system/i686-linux.nix +++ /dev/null @@ -1 +0,0 @@ -(import ./all-packages.nix) {system = "i686-linux";} diff --git a/pkgs/system/powerpc-darwin.nix b/pkgs/system/powerpc-darwin.nix deleted file mode 100644 index 48c9164b14b..00000000000 --- a/pkgs/system/powerpc-darwin.nix +++ /dev/null @@ -1 +0,0 @@ -(import ./all-packages.nix) {system = "powerpc-darwin";} diff --git a/pkgs/system/all-packages-generic.nix b/pkgs/top-level/all-packages.nix similarity index 94% rename from pkgs/system/all-packages-generic.nix rename to pkgs/top-level/all-packages.nix index 8c255d21560..1e6b158af4b 100644 --- a/pkgs/system/all-packages-generic.nix +++ b/pkgs/top-level/all-packages.nix @@ -1,17 +1,27 @@ -# This file evaluates to a function that, when supplied with a system -# identifier and a standard build environment, returns the set of all -# packages provided by the Nix Package Collection. +/* This file composes the Nix Packages collection. That is, it + imports the functions that build the various packages, and calls + them with appropriate arguments. The result is a set of all the + packages in the Nix Packages collection for some particular + platform. */ + -{ stdenv, bootCurl, noSysDirs ? true +{ # The system for which to build the packages. + system ? __currentSystem + +, # The standard environment to use. Only used for bootstrapping. If + # null, the default standard environment is used. + bootStdenv ? null + + # More flags for the bootstrapping of stdenv. +, noSysDirs ? true , gccWithCC ? true , gccWithProfiling ? true + }: + rec { - inherit stdenv; - - ### Symbolic names. useOldXLibs = false; @@ -25,13 +35,31 @@ rec { # `xlibs.xlibs' is a wrapper packages that combines libX11 and a bunch # of other basic X client libraries. x11 = if useOldXLibs then xlibsOld.xlibs else xlibsWrapper; - + + + ### Helper functions. + useFromStdenv = hasIt: it: alternative: if hasIt then it else alternative; + + # Applying this to an attribute set will cause nix-env to look + # inside the set for derivations. + recurseIntoAttrs = attrs: attrs // {recurseForDerivations = true;}; + + + ### STANDARD ENVIRONMENT + + stdenv = if bootStdenv == null then defaultStdenv else bootStdenv; + + defaultStdenv = + (import ../stdenv { + inherit system; + allPackages = import ./all-packages.nix; + }).stdenv; + ### BUILD SUPPORT fetchurl = (import ../build-support/fetchurl) { - inherit stdenv; - curl = bootCurl; + inherit stdenv curl; }; fetchsvn = (import ../build-support/fetchsvn) { @@ -53,17 +81,19 @@ rec { inherit fetchurl stdenv flex; }; - coreutils = (import ../tools/misc/coreutils) { - inherit fetchurl stdenv; - }; + coreutils = useFromStdenv (stdenv ? coreutils) stdenv.coreutils + (import ../tools/misc/coreutils { + inherit fetchurl stdenv; + }); coreutilsDiet = (import ../tools/misc/coreutils-diet) { inherit fetchurl stdenv dietgcc perl; }; - findutils = (import ../tools/misc/findutils) { - inherit fetchurl stdenv coreutils; - }; + findutils = useFromStdenv (stdenv ? findutils) stdenv.findutils + (import ../tools/misc/findutils { + inherit fetchurl stdenv coreutils; + }); findutilsWrapper = (import ../tools/misc/findutils-wrapper) { inherit stdenv findutils; @@ -98,27 +128,32 @@ rec { inherit fetchurl stdenv unzip jdk; }; - diffutils = (import ../tools/text/diffutils) { - inherit fetchurl stdenv coreutils; - }; + diffutils = useFromStdenv (stdenv ? diffutils) stdenv.diffutils + (import ../tools/text/diffutils { + inherit fetchurl stdenv coreutils; + }); gnupatch = (import ../tools/text/gnupatch) { inherit fetchurl stdenv; }; - patch = if stdenv.system == "powerpc-darwin" then null else gnupatch; + patch = useFromStdenv (stdenv ? patch) stdenv.patch + (if stdenv.system == "powerpc-darwin" then null else gnupatch); - gnused = (import ../tools/text/gnused) { - inherit fetchurl stdenv; - }; + gnused = useFromStdenv (stdenv ? gnused) stdenv.gnused + (import ../tools/text/gnused { + inherit fetchurl stdenv; + }); - gnugrep = (import ../tools/text/gnugrep) { - inherit fetchurl stdenv pcre; - }; + gnugrep = useFromStdenv (stdenv ? gnugrep) stdenv.gnugrep + (import ../tools/text/gnugrep { + inherit fetchurl stdenv pcre; + }); - gawk = (import ../tools/text/gawk) { - inherit fetchurl stdenv; - }; + gawk = useFromStdenv (stdenv ? gawk) stdenv.gawk + (import ../tools/text/gawk { + inherit fetchurl stdenv; + }); groff = (import ../tools/text/groff) { inherit fetchurl stdenv; @@ -158,9 +193,10 @@ rec { inherit fetchurl stdenv; }; - gnutar = (import ../tools/archivers/gnutar) { - inherit fetchurl stdenv; - }; + gnutar = useFromStdenv (stdenv ? gnutar) stdenv.gnutar + (import ../tools/archivers/gnutar { + inherit fetchurl stdenv; + }); gnutarDiet = (import ../tools/archivers/gnutar-diet) { inherit fetchurl stdenv dietgcc; @@ -174,13 +210,15 @@ rec { inherit fetchurl stdenv; }; - gzip = (import ../tools/compression/gzip) { - inherit fetchurl stdenv; - }; + gzip = useFromStdenv (stdenv ? gzip) stdenv.gzip + (import ../tools/compression/gzip { + inherit fetchurl stdenv; + }); - bzip2 = (import ../tools/compression/bzip2) { - inherit fetchurl stdenv; - }; + bzip2 = useFromStdenv (stdenv ? bzip2) stdenv.bzip2 + (import ../tools/compression/bzip2 { + inherit fetchurl stdenv; + }); zdelta = (import ../tools/compression/zdelta) { inherit fetchurl stdenv; @@ -198,7 +236,9 @@ rec { inherit fetchurl stdenv; }; - curl = (import ../tools/networking/curl) { + curl = if stdenv ? curl then stdenv.curl else (assert false; null); + + realCurl = (import ../tools/networking/curl) { inherit fetchurl stdenv zlib; }; @@ -308,9 +348,10 @@ rec { ### SHELLS - bash = (import ../shells/bash) { - inherit fetchurl stdenv; - }; + bash = useFromStdenv (stdenv ? bash) stdenv.bash + (import ../shells/bash { + inherit fetchurl stdenv; + }); tcsh = (import ../shells/tcsh) { inherit fetchurl stdenv ncurses; @@ -323,9 +364,10 @@ rec { ### DEVELOPMENT - binutils = (import ../development/tools/misc/binutils) { - inherit fetchurl stdenv noSysDirs; - }; + binutils = useFromStdenv (stdenv ? binutils) stdenv.binutils + (import ../development/tools/misc/binutils { + inherit fetchurl stdenv noSysDirs; + }); binutilsMips = (import ../development/tools/misc/binutils-cross) { inherit fetchurl stdenv noSysDirs; @@ -342,9 +384,10 @@ rec { cross = "sparc-linux"; }; - patchelf = (import ../development/tools/misc/patchelf) { - inherit fetchurl stdenv; - }; + patchelf = useFromStdenv (stdenv ? patchelf) stdenv.patchelf + (import ../development/tools/misc/patchelf { + inherit fetchurl stdenv; + }); patchelfNew = (import ../development/tools/misc/patchelf/new.nix) { inherit fetchurl stdenv; @@ -439,9 +482,10 @@ rec { inherit fetchurl stdenv readline ncurses g77 perl flex; }; - gnumake = (import ../development/tools/build-managers/gnumake) { - inherit fetchurl stdenv; - }; + gnumake = useFromStdenv (stdenv ? gnumake) stdenv.gnumake + (import ../development/tools/build-managers/gnumake { + inherit fetchurl stdenv; + }); mk = (import ../development/tools/build-managers/mk) { inherit fetchurl stdenv; @@ -1023,7 +1067,7 @@ rec { inherit fetchurl stdenv pkgconfig x11 fontconfig freetype zlib libpng; }; - gtkLibs = gtkLibs28; + gtkLibs = recurseIntoAttrs gtkLibs28; gtkLibs28 = import ../development/libraries/gtk-libs-2.8 { inherit fetchurl stdenv pkgconfig gettext perl x11 @@ -1114,13 +1158,13 @@ rec { inherit fetchurl stdenv; }; - gnome = import ../development/libraries/gnome { + gnome = recurseIntoAttrs (import ../development/libraries/gnome { inherit fetchurl stdenv pkgconfig audiofile flex bison popt zlib libxml2 libxslt perl perlXMLParser docbook_xml_dtd_42 gettext x11 libtiff libjpeg libpng gtkLibs; inherit (xlibs) libXmu; - }; + }); wxGTK = wxGTK26; @@ -1570,10 +1614,10 @@ rec { inherit fetchurl stdenv apacheHttpd python; }; - xorg = import ../servers/x11/xorg { + xorg = recurseIntoAttrs (import ../servers/x11/xorg { inherit fetchurl stdenv pkgconfig freetype fontconfig expat libdrm libpng zlib perl mesa; - }; + }); postgresql = (import ../servers/sql/postgresql) { inherit fetchurl stdenv readline ncurses zlib; @@ -1911,9 +1955,8 @@ rec { plugins = [ MPlayerPlugin flashplayer - blackdown # RealPlayer # disabled by default for legal reasons - ]; + ] ++ (if blackdown != null then [blackdown] else []); }; firefoxWrapper = wrapFirefox firefox; @@ -2289,14 +2332,12 @@ rec { }; #nixStatic = (import ../misc/nix-static) { - # inherit fetchurl stdenv aterm perl; - # curl = bootCurl; /* !!! ugly */ + # inherit fetchurl stdenv aterm perl curl; # bdb = db4; #}; nix = (import ../misc/nix) { - inherit fetchurl stdenv aterm perl; - curl = bootCurl; /* !!! ugly */ + inherit fetchurl stdenv aterm perl curl; bdb = db4; }; diff --git a/pkgs/system/populate-cache.nix b/pkgs/top-level/build-for-release.nix similarity index 98% rename from pkgs/system/populate-cache.nix rename to pkgs/top-level/build-for-release.nix index 405117dd83f..9cc9e76919e 100644 --- a/pkgs/system/populate-cache.nix +++ b/pkgs/top-level/build-for-release.nix @@ -21,7 +21,6 @@ let { bsdiff bzip2 callgrind - chatzilla cksfv coreutils darcs @@ -115,7 +114,6 @@ let { xmms xorg_sys_opengl xsel - xulrunner zapping zdelta zip @@ -160,7 +158,6 @@ let { libxml2 libxslt nxml - pkgconfig subversion tetex unzip