mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-01 07:01:54 +00:00
* Merged the usability branch (from trunk@4749 to branches/usability@5087).
svn path=/nixpkgs/trunk/; revision=5088
This commit is contained in:
commit
09a9cae715
@ -11,4 +11,8 @@ stdenv.mkDerivation {
|
|||||||
# Let each plugin tell us (through its `mozillaPlugin') attribute
|
# Let each plugin tell us (through its `mozillaPlugin') attribute
|
||||||
# where to find the plugin in its tree.
|
# where to find the plugin in its tree.
|
||||||
plugins = map (x: x ~ x.mozillaPlugin) plugins;
|
plugins = map (x: x ~ x.mozillaPlugin) plugins;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = firefox.meta.description + " (with various plugins)";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -41,4 +41,7 @@ stdenv.mkDerivation {
|
|||||||
]
|
]
|
||||||
++ (if enableOfficialBranding then ["--enable-official-branding"] else []);
|
++ (if enableOfficialBranding then ["--enable-official-branding"] else []);
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Mozilla Firefox - the browser, reloaded";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -27,4 +27,7 @@ stdenv.mkDerivation {
|
|||||||
langCC = if nativeTools then true else gcc.langCC;
|
langCC = if nativeTools then true else gcc.langCC;
|
||||||
langF77 = if nativeTools then false else gcc.langF77;
|
langF77 = if nativeTools then false else gcc.langF77;
|
||||||
shell = if shell == "" then stdenv.shell else shell;
|
shell = if shell == "" then stdenv.shell else shell;
|
||||||
|
meta = if gcc != null then gcc.meta else
|
||||||
|
{ description = "System C compiler wrapper";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -27,4 +27,7 @@ stdenv.mkDerivation {
|
|||||||
langCC = if nativeTools then true else gcc.langCC;
|
langCC = if nativeTools then true else gcc.langCC;
|
||||||
langF77 = if nativeTools then false else gcc.langF77;
|
langF77 = if nativeTools then false else gcc.langF77;
|
||||||
shell = if shell == "" then stdenv.shell else shell;
|
shell = if shell == "" then stdenv.shell else shell;
|
||||||
|
meta = if gcc != null then gcc.meta else
|
||||||
|
{ description = "System C compiler wrapper";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -6,4 +6,4 @@ if stdenv.system == "i686-linux"
|
|||||||
inherit stdenv fetchurl;
|
inherit stdenv fetchurl;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
false
|
null
|
||||||
|
@ -26,4 +26,10 @@ stdenv.mkDerivation {
|
|||||||
buildInputs = [binutilsCross];
|
buildInputs = [binutilsCross];
|
||||||
inherit kernelHeadersCross binutilsCross;
|
inherit kernelHeadersCross binutilsCross;
|
||||||
platform = cross;
|
platform = cross;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "http://gcc.gnu.org/";
|
||||||
|
license = "GPL/LGPL";
|
||||||
|
description = "GNU Compiler Collection, 4.0.x (cross-compiler for " + cross + ")";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -15,4 +15,10 @@ stdenv.mkDerivation {
|
|||||||
# !!! apply only if noSysDirs is set
|
# !!! apply only if noSysDirs is set
|
||||||
patches = [./no-sys-dirs.patch];
|
patches = [./no-sys-dirs.patch];
|
||||||
inherit noSysDirs langC langCC langF77 profiledCompiler;
|
inherit noSysDirs langC langCC langF77 profiledCompiler;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "http://gcc.gnu.org/";
|
||||||
|
license = "GPL/LGPL";
|
||||||
|
description = "GNU Compiler Collection, 4.0.x";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -6,4 +6,9 @@ stdenv.mkDerivation {
|
|||||||
url = http://nix.cs.uu.nl/dist/tarballs/aterm-2.4.2.tar.gz;
|
url = http://nix.cs.uu.nl/dist/tarballs/aterm-2.4.2.tar.gz;
|
||||||
md5 = "18617081dd112d85e6c4b1b552628114";
|
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";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -16,4 +16,9 @@ genericStdenv {
|
|||||||
};
|
};
|
||||||
|
|
||||||
shell = "/bin/sh";
|
shell = "/bin/sh";
|
||||||
|
|
||||||
|
extraAttrs = {
|
||||||
|
# Curl should be in /usr/bin or so.
|
||||||
|
curl = null;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -5,14 +5,16 @@
|
|||||||
# 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, allPackages}: rec {
|
{system, allPackages}:
|
||||||
|
|
||||||
|
rec {
|
||||||
|
|
||||||
gccWrapper = import ../build-support/gcc-wrapper;
|
gccWrapper = import ../build-support/gcc-wrapper;
|
||||||
genericStdenv = import ../stdenv/generic;
|
genericStdenv = import ./generic;
|
||||||
|
|
||||||
|
|
||||||
# Trivial environment used for building other environments.
|
# Trivial environment used for building other environments.
|
||||||
stdenvInitial = (import ../stdenv/initial) {
|
stdenvInitial = (import ./initial) {
|
||||||
name = "stdenv-initial";
|
name = "stdenv-initial";
|
||||||
inherit system;
|
inherit system;
|
||||||
};
|
};
|
||||||
@ -23,47 +25,44 @@
|
|||||||
# 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) {
|
stdenvNative = (import ./native) {
|
||||||
stdenv = stdenvInitial;
|
stdenv = stdenvInitial;
|
||||||
inherit genericStdenv gccWrapper;
|
inherit genericStdenv gccWrapper;
|
||||||
};
|
};
|
||||||
|
|
||||||
stdenvNativePkgs = allPackages {
|
stdenvNativePkgs = allPackages {
|
||||||
stdenv = stdenvNative;
|
bootStdenv = stdenvNative;
|
||||||
bootCurl = null;
|
|
||||||
noSysDirs = false;
|
noSysDirs = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
# The Nix build environment.
|
# The Nix build environment.
|
||||||
stdenvNix = (import ../stdenv/nix) {
|
stdenvNix = (import ./nix) {
|
||||||
stdenv = stdenvNative;
|
stdenv = stdenvNative;
|
||||||
pkgs = stdenvNativePkgs;
|
pkgs = stdenvNativePkgs;
|
||||||
inherit genericStdenv gccWrapper;
|
inherit genericStdenv gccWrapper;
|
||||||
};
|
};
|
||||||
|
|
||||||
stdenvNixPkgs = allPackages {
|
stdenvNixPkgs = allPackages {
|
||||||
stdenv = stdenvNix;
|
bootStdenv = stdenvNix;
|
||||||
bootCurl = stdenvNativePkgs.curl;
|
|
||||||
noSysDirs = false;
|
noSysDirs = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
# Linux standard environment.
|
# Linux standard environment.
|
||||||
inherit (import ../stdenv/linux {inherit allPackages;})
|
inherit (import ./linux {inherit allPackages;})
|
||||||
stdenvLinux stdenvLinuxPkgs;
|
stdenvLinux stdenvLinuxPkgs;
|
||||||
|
|
||||||
|
|
||||||
# Darwin (Mac OS X) standard environment. Very simple for now
|
# Darwin (Mac OS X) standard environment. Very simple for now
|
||||||
# (essentially it's just the native environment).
|
# (essentially it's just the native environment).
|
||||||
stdenvDarwin = (import ../stdenv/darwin) {
|
stdenvDarwin = (import ./darwin) {
|
||||||
stdenv = stdenvInitial;
|
stdenv = stdenvInitial;
|
||||||
inherit genericStdenv gccWrapper;
|
inherit genericStdenv gccWrapper;
|
||||||
};
|
};
|
||||||
|
|
||||||
stdenvDarwinPkgs = allPackages {
|
stdenvDarwinPkgs = allPackages {
|
||||||
stdenv = stdenvDarwin;
|
bootStdenv = stdenvDarwin;
|
||||||
bootCurl = null;
|
|
||||||
noSysDirs = false;
|
noSysDirs = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -71,21 +70,21 @@
|
|||||||
# FreeBSD standard environment. Right now this is more or less the
|
# FreeBSD standard environment. Right now this is more or less the
|
||||||
# same as the native environemnt. Eventually we'll want a pure
|
# same as the native environemnt. Eventually we'll want a pure
|
||||||
# environment similar to stdenvLinux.
|
# environment similar to stdenvLinux.
|
||||||
stdenvFreeBSD = (import ../stdenv/freebsd) {
|
stdenvFreeBSD = (import ./freebsd) {
|
||||||
stdenv = stdenvInitial;
|
stdenv = stdenvInitial;
|
||||||
inherit genericStdenv gccWrapper;
|
inherit genericStdenv gccWrapper;
|
||||||
};
|
};
|
||||||
|
|
||||||
stdenvFreeBSDPkgs = allPackages {
|
stdenvFreeBSDPkgs = allPackages {
|
||||||
stdenv = stdenvFreeBSD;
|
bootStdenv = stdenvFreeBSD;
|
||||||
bootCurl = null;
|
|
||||||
noSysDirs = false;
|
noSysDirs = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
stdenvTestPkgs = allPackages {
|
# Select the appropriate stdenv for the platform `system'.
|
||||||
stdenv = (import ../stdenv/nix-linux-static).stdenvInitial;
|
stdenv =
|
||||||
bootCurl = (import ../stdenv/nix-linux-static).curl;
|
if system == "i686-linux" then stdenvLinux
|
||||||
noSysDirs = true;
|
else if system == "i686-freebsd" then stdenvFreeBSD
|
||||||
};
|
else if system == "powerpc-darwin" then stdenvDarwin
|
||||||
|
else stdenvNative;
|
||||||
}
|
}
|
@ -16,4 +16,9 @@ genericStdenv {
|
|||||||
};
|
};
|
||||||
|
|
||||||
shell = "/bin/bash";
|
shell = "/bin/bash";
|
||||||
|
|
||||||
|
extraAttrs = {
|
||||||
|
# Curl should be in /usr/bin or so.
|
||||||
|
curl = null;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
{ stdenv, name, preHook ? null, postHook ? null, initialPath, gcc, shell
|
{ stdenv, name, preHook ? null, postHook ? null, initialPath, gcc, shell
|
||||||
, param1 ? "", param2 ? "", param3 ? "", param4 ? "", param5 ? ""
|
, param1 ? "", param2 ? "", param3 ? "", param4 ? "", param5 ? ""
|
||||||
|
, extraAttrs ? {}
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let {
|
let {
|
||||||
@ -24,13 +25,33 @@ let {
|
|||||||
# Add a utility function to produce derivations that use this
|
# Add a utility function to produce derivations that use this
|
||||||
# stdenv and its shell.
|
# stdenv and its shell.
|
||||||
// {
|
// {
|
||||||
mkDerivation = attrs: derivation (attrs // {
|
|
||||||
builder = if attrs ? realBuilder then attrs.realBuilder else shell;
|
mkDerivation = attrs:
|
||||||
args = if attrs ? args then attrs.args else
|
(derivation (
|
||||||
["-e" (if attrs ? builder then attrs.builder else ./default-builder.sh)];
|
(removeAttrs attrs ["meta"])
|
||||||
stdenv = body;
|
//
|
||||||
system = body.system;
|
{
|
||||||
});
|
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;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -114,22 +114,26 @@ rec {
|
|||||||
|
|
||||||
# This function builds the various standard environments used during
|
# This function builds the various standard environments used during
|
||||||
# the bootstrap.
|
# the bootstrap.
|
||||||
stdenvBootFun = {glibc, gcc, binutils, staticGlibc}: (import ../generic) {
|
stdenvBootFun =
|
||||||
name = "stdenv-linux-boot";
|
{glibc, gcc, binutils, staticGlibc, extraAttrs ? {}}:
|
||||||
param1 = if staticGlibc then "static" else "dynamic";
|
|
||||||
preHook = ./prehook.sh;
|
import ../generic {
|
||||||
stdenv = stdenvInitial;
|
name = "stdenv-linux-boot";
|
||||||
shell = ./tools/bash;
|
param1 = if staticGlibc then "static" else "dynamic";
|
||||||
gcc = (import ../../build-support/gcc-wrapper) {
|
preHook = ./prehook.sh;
|
||||||
stdenv = stdenvInitial;
|
stdenv = stdenvInitial;
|
||||||
nativeTools = false;
|
shell = ./tools/bash;
|
||||||
nativeGlibc = false;
|
gcc = (import ../../build-support/gcc-wrapper) {
|
||||||
inherit gcc glibc binutils;
|
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
|
# Create the first "real" standard environment. This one consists
|
||||||
@ -139,13 +143,13 @@ rec {
|
|||||||
# Use the statically linked, downloaded glibc/gcc/binutils.
|
# Use the statically linked, downloaded glibc/gcc/binutils.
|
||||||
inherit glibc gcc binutils;
|
inherit glibc gcc binutils;
|
||||||
staticGlibc = true;
|
staticGlibc = true;
|
||||||
|
extraAttrs = {inherit curl;};
|
||||||
};
|
};
|
||||||
|
|
||||||
# 2) These are the packages that we can build with the first
|
# 2) These are the packages that we can build with the first
|
||||||
# stdenv. We only need Glibc (in step 3).
|
# stdenv. We only need Glibc (in step 3).
|
||||||
stdenvLinuxBoot1Pkgs = allPackages {
|
stdenvLinuxBoot1Pkgs = allPackages {
|
||||||
stdenv = stdenvLinuxBoot1;
|
bootStdenv = stdenvLinuxBoot1;
|
||||||
bootCurl = curl;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# 3) Build Glibc with the statically linked tools. The result is the
|
# 3) Build Glibc with the statically linked tools. The result is the
|
||||||
@ -159,12 +163,12 @@ rec {
|
|||||||
glibc = stdenvLinuxGlibc;
|
glibc = stdenvLinuxGlibc;
|
||||||
staticGlibc = false;
|
staticGlibc = false;
|
||||||
inherit gcc binutils;
|
inherit gcc binutils;
|
||||||
|
extraAttrs = {inherit curl;};
|
||||||
};
|
};
|
||||||
|
|
||||||
# 5) The packages that can be built using the second stdenv.
|
# 5) The packages that can be built using the second stdenv.
|
||||||
stdenvLinuxBoot2Pkgs = allPackages {
|
stdenvLinuxBoot2Pkgs = allPackages {
|
||||||
stdenv = stdenvLinuxBoot2;
|
bootStdenv = stdenvLinuxBoot2;
|
||||||
bootCurl = curl;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# 6) Construct a third stdenv identical to the second, except that
|
# 6) Construct a third stdenv identical to the second, except that
|
||||||
@ -174,12 +178,12 @@ rec {
|
|||||||
glibc = stdenvLinuxGlibc;
|
glibc = stdenvLinuxGlibc;
|
||||||
staticGlibc = false;
|
staticGlibc = false;
|
||||||
inherit (stdenvLinuxBoot2Pkgs) gcc binutils;
|
inherit (stdenvLinuxBoot2Pkgs) gcc binutils;
|
||||||
|
extraAttrs = {inherit curl;};
|
||||||
};
|
};
|
||||||
|
|
||||||
# 7) The packages that can be built using the third stdenv.
|
# 7) The packages that can be built using the third stdenv.
|
||||||
stdenvLinuxBoot3Pkgs = allPackages {
|
stdenvLinuxBoot3Pkgs = allPackages {
|
||||||
stdenv = stdenvLinuxBoot3;
|
bootStdenv = stdenvLinuxBoot3;
|
||||||
bootCurl = curl;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# 8) Construct the final stdenv. It uses the Glibc, GCC and
|
# 8) Construct the final stdenv. It uses the Glibc, GCC and
|
||||||
@ -205,20 +209,14 @@ rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
shell = stdenvLinuxBoot3Pkgs.bash ~ /bin/sh;
|
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;};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -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;
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
(import ./all-packages.nix) {system = "i686-linux";}
|
|
@ -1 +0,0 @@
|
|||||||
(import ./all-packages.nix) {system = "powerpc-darwin";}
|
|
@ -1,17 +1,27 @@
|
|||||||
# This file evaluates to a function that, when supplied with a system
|
/* This file composes the Nix Packages collection. That is, it
|
||||||
# identifier and a standard build environment, returns the set of all
|
imports the functions that build the various packages, and calls
|
||||||
# packages provided by the Nix Package Collection.
|
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
|
, gccWithCC ? true
|
||||||
, gccWithProfiling ? true
|
, gccWithProfiling ? true
|
||||||
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
|
||||||
rec {
|
rec {
|
||||||
|
|
||||||
inherit stdenv;
|
|
||||||
|
|
||||||
|
|
||||||
### Symbolic names.
|
### Symbolic names.
|
||||||
|
|
||||||
useOldXLibs = false;
|
useOldXLibs = false;
|
||||||
@ -27,11 +37,29 @@ rec {
|
|||||||
x11 = if useOldXLibs then xlibsOld.xlibs else xlibsWrapper;
|
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
|
### BUILD SUPPORT
|
||||||
|
|
||||||
fetchurl = (import ../build-support/fetchurl) {
|
fetchurl = (import ../build-support/fetchurl) {
|
||||||
inherit stdenv;
|
inherit stdenv curl;
|
||||||
curl = bootCurl;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
fetchsvn = (import ../build-support/fetchsvn) {
|
fetchsvn = (import ../build-support/fetchsvn) {
|
||||||
@ -53,17 +81,19 @@ rec {
|
|||||||
inherit fetchurl stdenv flex;
|
inherit fetchurl stdenv flex;
|
||||||
};
|
};
|
||||||
|
|
||||||
coreutils = (import ../tools/misc/coreutils) {
|
coreutils = useFromStdenv (stdenv ? coreutils) stdenv.coreutils
|
||||||
inherit fetchurl stdenv;
|
(import ../tools/misc/coreutils {
|
||||||
};
|
inherit fetchurl stdenv;
|
||||||
|
});
|
||||||
|
|
||||||
coreutilsDiet = (import ../tools/misc/coreutils-diet) {
|
coreutilsDiet = (import ../tools/misc/coreutils-diet) {
|
||||||
inherit fetchurl stdenv dietgcc perl;
|
inherit fetchurl stdenv dietgcc perl;
|
||||||
};
|
};
|
||||||
|
|
||||||
findutils = (import ../tools/misc/findutils) {
|
findutils = useFromStdenv (stdenv ? findutils) stdenv.findutils
|
||||||
inherit fetchurl stdenv coreutils;
|
(import ../tools/misc/findutils {
|
||||||
};
|
inherit fetchurl stdenv coreutils;
|
||||||
|
});
|
||||||
|
|
||||||
findutilsWrapper = (import ../tools/misc/findutils-wrapper) {
|
findutilsWrapper = (import ../tools/misc/findutils-wrapper) {
|
||||||
inherit stdenv findutils;
|
inherit stdenv findutils;
|
||||||
@ -98,27 +128,32 @@ rec {
|
|||||||
inherit fetchurl stdenv unzip jdk;
|
inherit fetchurl stdenv unzip jdk;
|
||||||
};
|
};
|
||||||
|
|
||||||
diffutils = (import ../tools/text/diffutils) {
|
diffutils = useFromStdenv (stdenv ? diffutils) stdenv.diffutils
|
||||||
inherit fetchurl stdenv coreutils;
|
(import ../tools/text/diffutils {
|
||||||
};
|
inherit fetchurl stdenv coreutils;
|
||||||
|
});
|
||||||
|
|
||||||
gnupatch = (import ../tools/text/gnupatch) {
|
gnupatch = (import ../tools/text/gnupatch) {
|
||||||
inherit fetchurl stdenv;
|
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) {
|
gnused = useFromStdenv (stdenv ? gnused) stdenv.gnused
|
||||||
inherit fetchurl stdenv;
|
(import ../tools/text/gnused {
|
||||||
};
|
inherit fetchurl stdenv;
|
||||||
|
});
|
||||||
|
|
||||||
gnugrep = (import ../tools/text/gnugrep) {
|
gnugrep = useFromStdenv (stdenv ? gnugrep) stdenv.gnugrep
|
||||||
inherit fetchurl stdenv pcre;
|
(import ../tools/text/gnugrep {
|
||||||
};
|
inherit fetchurl stdenv pcre;
|
||||||
|
});
|
||||||
|
|
||||||
gawk = (import ../tools/text/gawk) {
|
gawk = useFromStdenv (stdenv ? gawk) stdenv.gawk
|
||||||
inherit fetchurl stdenv;
|
(import ../tools/text/gawk {
|
||||||
};
|
inherit fetchurl stdenv;
|
||||||
|
});
|
||||||
|
|
||||||
groff = (import ../tools/text/groff) {
|
groff = (import ../tools/text/groff) {
|
||||||
inherit fetchurl stdenv;
|
inherit fetchurl stdenv;
|
||||||
@ -158,9 +193,10 @@ rec {
|
|||||||
inherit fetchurl stdenv;
|
inherit fetchurl stdenv;
|
||||||
};
|
};
|
||||||
|
|
||||||
gnutar = (import ../tools/archivers/gnutar) {
|
gnutar = useFromStdenv (stdenv ? gnutar) stdenv.gnutar
|
||||||
inherit fetchurl stdenv;
|
(import ../tools/archivers/gnutar {
|
||||||
};
|
inherit fetchurl stdenv;
|
||||||
|
});
|
||||||
|
|
||||||
gnutarDiet = (import ../tools/archivers/gnutar-diet) {
|
gnutarDiet = (import ../tools/archivers/gnutar-diet) {
|
||||||
inherit fetchurl stdenv dietgcc;
|
inherit fetchurl stdenv dietgcc;
|
||||||
@ -174,13 +210,15 @@ rec {
|
|||||||
inherit fetchurl stdenv;
|
inherit fetchurl stdenv;
|
||||||
};
|
};
|
||||||
|
|
||||||
gzip = (import ../tools/compression/gzip) {
|
gzip = useFromStdenv (stdenv ? gzip) stdenv.gzip
|
||||||
inherit fetchurl stdenv;
|
(import ../tools/compression/gzip {
|
||||||
};
|
inherit fetchurl stdenv;
|
||||||
|
});
|
||||||
|
|
||||||
bzip2 = (import ../tools/compression/bzip2) {
|
bzip2 = useFromStdenv (stdenv ? bzip2) stdenv.bzip2
|
||||||
inherit fetchurl stdenv;
|
(import ../tools/compression/bzip2 {
|
||||||
};
|
inherit fetchurl stdenv;
|
||||||
|
});
|
||||||
|
|
||||||
zdelta = (import ../tools/compression/zdelta) {
|
zdelta = (import ../tools/compression/zdelta) {
|
||||||
inherit fetchurl stdenv;
|
inherit fetchurl stdenv;
|
||||||
@ -198,7 +236,9 @@ rec {
|
|||||||
inherit fetchurl stdenv;
|
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;
|
inherit fetchurl stdenv zlib;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -308,9 +348,10 @@ rec {
|
|||||||
|
|
||||||
### SHELLS
|
### SHELLS
|
||||||
|
|
||||||
bash = (import ../shells/bash) {
|
bash = useFromStdenv (stdenv ? bash) stdenv.bash
|
||||||
inherit fetchurl stdenv;
|
(import ../shells/bash {
|
||||||
};
|
inherit fetchurl stdenv;
|
||||||
|
});
|
||||||
|
|
||||||
tcsh = (import ../shells/tcsh) {
|
tcsh = (import ../shells/tcsh) {
|
||||||
inherit fetchurl stdenv ncurses;
|
inherit fetchurl stdenv ncurses;
|
||||||
@ -323,9 +364,10 @@ rec {
|
|||||||
|
|
||||||
### DEVELOPMENT
|
### DEVELOPMENT
|
||||||
|
|
||||||
binutils = (import ../development/tools/misc/binutils) {
|
binutils = useFromStdenv (stdenv ? binutils) stdenv.binutils
|
||||||
inherit fetchurl stdenv noSysDirs;
|
(import ../development/tools/misc/binutils {
|
||||||
};
|
inherit fetchurl stdenv noSysDirs;
|
||||||
|
});
|
||||||
|
|
||||||
binutilsMips = (import ../development/tools/misc/binutils-cross) {
|
binutilsMips = (import ../development/tools/misc/binutils-cross) {
|
||||||
inherit fetchurl stdenv noSysDirs;
|
inherit fetchurl stdenv noSysDirs;
|
||||||
@ -342,9 +384,10 @@ rec {
|
|||||||
cross = "sparc-linux";
|
cross = "sparc-linux";
|
||||||
};
|
};
|
||||||
|
|
||||||
patchelf = (import ../development/tools/misc/patchelf) {
|
patchelf = useFromStdenv (stdenv ? patchelf) stdenv.patchelf
|
||||||
inherit fetchurl stdenv;
|
(import ../development/tools/misc/patchelf {
|
||||||
};
|
inherit fetchurl stdenv;
|
||||||
|
});
|
||||||
|
|
||||||
patchelfNew = (import ../development/tools/misc/patchelf/new.nix) {
|
patchelfNew = (import ../development/tools/misc/patchelf/new.nix) {
|
||||||
inherit fetchurl stdenv;
|
inherit fetchurl stdenv;
|
||||||
@ -439,9 +482,10 @@ rec {
|
|||||||
inherit fetchurl stdenv readline ncurses g77 perl flex;
|
inherit fetchurl stdenv readline ncurses g77 perl flex;
|
||||||
};
|
};
|
||||||
|
|
||||||
gnumake = (import ../development/tools/build-managers/gnumake) {
|
gnumake = useFromStdenv (stdenv ? gnumake) stdenv.gnumake
|
||||||
inherit fetchurl stdenv;
|
(import ../development/tools/build-managers/gnumake {
|
||||||
};
|
inherit fetchurl stdenv;
|
||||||
|
});
|
||||||
|
|
||||||
mk = (import ../development/tools/build-managers/mk) {
|
mk = (import ../development/tools/build-managers/mk) {
|
||||||
inherit fetchurl stdenv;
|
inherit fetchurl stdenv;
|
||||||
@ -1023,7 +1067,7 @@ rec {
|
|||||||
inherit fetchurl stdenv pkgconfig x11 fontconfig freetype zlib libpng;
|
inherit fetchurl stdenv pkgconfig x11 fontconfig freetype zlib libpng;
|
||||||
};
|
};
|
||||||
|
|
||||||
gtkLibs = gtkLibs28;
|
gtkLibs = recurseIntoAttrs gtkLibs28;
|
||||||
|
|
||||||
gtkLibs28 = import ../development/libraries/gtk-libs-2.8 {
|
gtkLibs28 = import ../development/libraries/gtk-libs-2.8 {
|
||||||
inherit fetchurl stdenv pkgconfig gettext perl x11
|
inherit fetchurl stdenv pkgconfig gettext perl x11
|
||||||
@ -1114,13 +1158,13 @@ rec {
|
|||||||
inherit fetchurl stdenv;
|
inherit fetchurl stdenv;
|
||||||
};
|
};
|
||||||
|
|
||||||
gnome = import ../development/libraries/gnome {
|
gnome = recurseIntoAttrs (import ../development/libraries/gnome {
|
||||||
inherit fetchurl stdenv pkgconfig audiofile
|
inherit fetchurl stdenv pkgconfig audiofile
|
||||||
flex bison popt zlib libxml2 libxslt
|
flex bison popt zlib libxml2 libxslt
|
||||||
perl perlXMLParser docbook_xml_dtd_42 gettext x11
|
perl perlXMLParser docbook_xml_dtd_42 gettext x11
|
||||||
libtiff libjpeg libpng gtkLibs;
|
libtiff libjpeg libpng gtkLibs;
|
||||||
inherit (xlibs) libXmu;
|
inherit (xlibs) libXmu;
|
||||||
};
|
});
|
||||||
|
|
||||||
wxGTK = wxGTK26;
|
wxGTK = wxGTK26;
|
||||||
|
|
||||||
@ -1570,10 +1614,10 @@ rec {
|
|||||||
inherit fetchurl stdenv apacheHttpd python;
|
inherit fetchurl stdenv apacheHttpd python;
|
||||||
};
|
};
|
||||||
|
|
||||||
xorg = import ../servers/x11/xorg {
|
xorg = recurseIntoAttrs (import ../servers/x11/xorg {
|
||||||
inherit fetchurl stdenv pkgconfig freetype fontconfig
|
inherit fetchurl stdenv pkgconfig freetype fontconfig
|
||||||
expat libdrm libpng zlib perl mesa;
|
expat libdrm libpng zlib perl mesa;
|
||||||
};
|
});
|
||||||
|
|
||||||
postgresql = (import ../servers/sql/postgresql) {
|
postgresql = (import ../servers/sql/postgresql) {
|
||||||
inherit fetchurl stdenv readline ncurses zlib;
|
inherit fetchurl stdenv readline ncurses zlib;
|
||||||
@ -1911,9 +1955,8 @@ rec {
|
|||||||
plugins = [
|
plugins = [
|
||||||
MPlayerPlugin
|
MPlayerPlugin
|
||||||
flashplayer
|
flashplayer
|
||||||
blackdown
|
|
||||||
# RealPlayer # disabled by default for legal reasons
|
# RealPlayer # disabled by default for legal reasons
|
||||||
];
|
] ++ (if blackdown != null then [blackdown] else []);
|
||||||
};
|
};
|
||||||
|
|
||||||
firefoxWrapper = wrapFirefox firefox;
|
firefoxWrapper = wrapFirefox firefox;
|
||||||
@ -2289,14 +2332,12 @@ rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
#nixStatic = (import ../misc/nix-static) {
|
#nixStatic = (import ../misc/nix-static) {
|
||||||
# inherit fetchurl stdenv aterm perl;
|
# inherit fetchurl stdenv aterm perl curl;
|
||||||
# curl = bootCurl; /* !!! ugly */
|
|
||||||
# bdb = db4;
|
# bdb = db4;
|
||||||
#};
|
#};
|
||||||
|
|
||||||
nix = (import ../misc/nix) {
|
nix = (import ../misc/nix) {
|
||||||
inherit fetchurl stdenv aterm perl;
|
inherit fetchurl stdenv aterm perl curl;
|
||||||
curl = bootCurl; /* !!! ugly */
|
|
||||||
bdb = db4;
|
bdb = db4;
|
||||||
};
|
};
|
||||||
|
|
@ -21,7 +21,6 @@ let {
|
|||||||
bsdiff
|
bsdiff
|
||||||
bzip2
|
bzip2
|
||||||
callgrind
|
callgrind
|
||||||
chatzilla
|
|
||||||
cksfv
|
cksfv
|
||||||
coreutils
|
coreutils
|
||||||
darcs
|
darcs
|
||||||
@ -115,7 +114,6 @@ let {
|
|||||||
xmms
|
xmms
|
||||||
xorg_sys_opengl
|
xorg_sys_opengl
|
||||||
xsel
|
xsel
|
||||||
xulrunner
|
|
||||||
zapping
|
zapping
|
||||||
zdelta
|
zdelta
|
||||||
zip
|
zip
|
||||||
@ -160,7 +158,6 @@ let {
|
|||||||
libxml2
|
libxml2
|
||||||
libxslt
|
libxslt
|
||||||
nxml
|
nxml
|
||||||
pkgconfig
|
|
||||||
subversion
|
subversion
|
||||||
tetex
|
tetex
|
||||||
unzip
|
unzip
|
Loading…
Reference in New Issue
Block a user