* If the environment variable buildCommand is set, then eval that
instead of doing the build phases. This is used by the runCommand
function in all-packages.nix to allow one-lines like
foo = runCommand "foo" {} "mkdir $out; echo foo > $out/foo";
svn path=/nixpkgs/trunk/; revision=7298
from the fbsplash kernel patch. So use the actual patched kernel as
an input to klibc, instead of Glibc's kernel headers.
svn path=/nixpkgs/trunk/; revision=7138
some programs (such as module-init-tools) need it.
* Remove module-init-tools-static, it now builds out of the box with
dietlibc.
svn path=/nixpkgs/trunk/; revision=6938
`@var@' in the file `src', writing the result to $out, where `var'
is any environment variable starting with a lowercase character.
Example:
genericSubstituter {
src = ./file;
foo = "bla";
shell = bash + "/bin/sh";
};
will replace `@foo@' with `bla' and `@shell@' with
`/nix/store/...-bash-.../bin/sh'.
svn path=/nixpkgs/trunk/; revision=6928
* Kernel: accept a list of kernel patches through the kernelPatches
argument. The names of the patches are added to the description
attribute (e.g., "The Linux kernel (with patches:
skas-2.6.18-v9-pre9)").
* Generic builder (forked in setup-new.sh): support patches that are
compressed using gzip or bzip2.
svn path=/nixpkgs/trunk/; revision=6913
- Hack to make it work with the latest host kernel headers
(2.6.18.1).
- Don't call depmod impurily, rather use oldskool modutils.
- modutils: use the final version, and use GCC 3.4 to compile it
(4.1 doesn't work).
svn path=/nixpkgs/trunk/; revision=6908
* To prevent this kind of thing, check that all tools are statically
linked.
* Use findutils 4.2.27, 4.2.28 doesn't build with dietlibc.
svn path=/nixpkgs/trunk/; revision=6881
Glibc. This is useful when building GCC.
* gcc-wrapper: the dynamic linker has a different name on x86_64 and
powerpc.
* gcc-wrapper: "glibc" -> "libc", because someday we might support
different C libraries.
* gcc: don't do a multilib build (e.g., 32-bit support on x86_64),
don't need it.
* gcc: merge in support for static builds.
* gcc: various simplifications in the compiler/linker flags, hope they
work.
svn path=/nixpkgs/trunk/; revision=6823
* The statically linked bootstrap tools are now automatically
reproducable, just do:
$ nix-build ./make-bootstrap-tools.nix
The resulting binaries in result/in-nixpkgs go to
stdenv/linux/bootstrap/<platform>/, and the tarballs in
result/on-server go to
https://svn.cs.uu.nl:12443/repos/trace/tarballs/trunk/stdenv-linux/<platform>/<revision>/.
These are checked out on nix.cs.uu.nl under http://.../dist/tarballs.
* The statically linked libraries all use dietlibc now (except
patchelf and glibc), so they are much smaller. This is especially
nice for the tools in the Nixpkgs tree, since it makes Nixpkgs
tarballs smaller.
* Use Binutils 2.17 and GCC 4.1.1 for the bootstrap.
* The stdenv is now based on Glibc 2.5. I hope it works ;-)
svn path=/nixpkgs/trunk/; revision=6803
dietlibc to produce small, statically linked binaries. This stdenv
also passes `-Os' to GCC automatically to optimise for size. It
also tries to prevent builders from linking against dynamic
libraries (which dietlibc doesn't support).
* A function `addAttrsToDerivation' that returns a modified stdenv
that always adds the specified attributes to the derivations that it
produces. Example (from curl):
curlDiet = import ../tools/networking/curl {
inherit fetchurl zlib;
stdenv = addAttrsToDerivation {
CFLAGS = "-DHAVE_INET_NTOA_R_2_ARGS=1";
} (useDietLibC stdenv);
};
(This is needed to get curl to build with dietlibc. Also note the
stacking of stdenv-modifying functions.)
* curl-diet: no longer necessary.
svn path=/nixpkgs/trunk/; revision=6761
configuration switches, it should be structured. For instance,
{
firefox = {
enableRealPlayer = true;
};
quake3 = {
dataFiles = "/windows/D/Program Files/Quake 3/baseq3";
}
}
Configuration switches can be obtained using the function getConfig,
e.g., `getConfig ["firefox" "enableRealPlayer"] false'.
svn path=/nixpkgs/trunk/; revision=6596
$NIXPKGS_CONFIG or $HOME/.nixpkgs/config.nix. E.g., a configuration
file
{ enableRealPlayer = true; }
will cause the RealPlayer plugin to be enabled in the Firefox
wrapper, which isn't the default case. Previously users had to
modify all-packages.nix for this sort of thing, which made it tricky
to keep an installation up-to-date without losing those local
configuration changes (channels would override such changes
completely, for instance).
svn path=/nixpkgs/trunk/; revision=6595
* Run `make oldconfig' before building.
* Split buildPhase into configure/build/installPhase.
* Strip the kernel modules for a huge space savings.
svn path=/nixpkgs/trunk/; revision=6555