still rather rough around the edges:
- example config files are installed to $out/etc/ssmtp
- the binary expects config files in /etc/ssmtp
- it's the user's responsibility to add the global config files
svn path=/nixpkgs/trunk/; revision=9064
* Make sure that every package in all-packages.nix has a unique name.
Not all of them do, but there are now a few helper functions that
modify the name of a package for display purposes in nix-env (e.g.,
you get "zlib-1.2.3" and "zlib-1.2.3-static" in "nix-env -qa").
svn path=/nixpkgs/trunk/; revision=8607
* Dhcp client script: create resolv.conf even if the DHCP server
doesn't provide a domain name, only a list of name servers. (The
QEMU DHCP server does this.)
svn path=/nixpkgs/trunk/; revision=7920
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
* Added a patch to MPlayer to fix the aspect ratio on screens rotated
with Xrandr.
* Disable toolbus for now because it requires a non-existant package
(tcltk).
svn path=/nixpkgs/trunk/; revision=5171
It would be good to use the output from this Nix expression for the initial
static stdenv. Right now it is present, but we have not on record how it
exactly was compiled. If we use this package, we do know that in the future.
However, if we update this package it will cause a *MASSIVE* rebuild, namely
everything.
I won't be doing that...for now...even though some downtime for some people
would be a very good idea ;)
svn path=/nixpkgs/trunk/; revision=4433
* GCC 3.4.5.
* Updated several other stdenv packages.
* Modified the builders of several packages to use the generic
builder.
svn path=/nixpkgs/trunk/; revision=4336
this contains mostly Armijn's pure stdenv-linux.
* After unpacking the statically linked GCC, patch all store paths to
/nix/store/ffffffffffffffffffffffffffffffff. Ugly hack to prevent
undeclared references but it works.
* We don't need Glib's dynamic libraries in the first bootstrap stage;
delete them. Actually the downloaded Glibc binary is only needed
for building Glibc, since GCC needs a C compiler to build some
programs in `configure'. So static linking is fine for that. Maybe
it would be better to patch `configure' so that we don't need a
pre-built Glibc at all.
* Set the svn:executable property on `cp' and `patchelf'.
* In Glibc, revert to LinuxThreads. Maybe NPTL will work, but TLS
support is a problem.
* Delete most Glibc patches; they're no longer needed since the branch
updated it to 20050110.
* Some cleanups.
svn path=/nixpkgs/trunk/; revision=2258
- disable tiger, strategoxt, they don't work and give errors
- ftp.nl.kernel.org seems to have some problems, replaced with ftp.de.kernel.org
should be put back eventually
svn path=/nixpkgs/trunk/; revision=1215
adds all directories specified in `ACLOCAL_PATH' to the `aclocal'
command line as `-I' flags. Also, it provides a setup hook that
adds the `.../share/aclocal' directory of every build input to
`ACLOCAL_PATH'.
* Upgraded Libtool.
* Graphviz requires the X Athena widgets, which in turn requires the X
miscellaneous utilities library; added those. However it doesn't
work yet since libXt is broken.
svn path=/nixpkgs/trunk/; revision=888
* Make builders unexecutable by removing the hash-bang line and
execute permission.
* Convert calls to `derivation' to `mkDerivation'.
* Remove `system' and `stdenv' attributes from calls to
`mkDerivation'. These transformations were all done automatically,
so it is quite possible I broke stuff.
* Put the `mkDerivation' function in stdenv/generic.
svn path=/nixpkgs/trunk/; revision=874
builders for typical Autoconf-style to be much shorten, e.g.,
. $stdenv/setup
genericBuild
The generic builder does lots of stuff automatically:
- Unpacks source archives specified by $src or $srcs (it knows about
gzip, bzip2, tar, zip, and unpacked source trees).
- Determines the source tree.
- Applies patches specified by $patches.
- Fixes libtool not to search for libraries in /lib etc.
- Runs `configure'.
- Runs `make'.
- Runs `make install'.
- Strips debug information from static libraries.
- Writes nested log information (in the format accepted by
`log2xml').
There are also lots of hooks and variables to customise the generic
builder. See `stdenv/generic/docs.txt'.
* Adapted the base packages (i.e., the ones used by stdenv) to use the
generic builder.
* We now use `curl' instead of `wget' to download files in `fetchurl'.
* Neither `curl' nor `wget' are part of stdenv. We shouldn't
encourage people to download stuff in builders (impure!).
* Updated some packages.
* `buildinputs' is now `buildInputs' (but the old name also works).
* `findInputs' in the setup script now prevents inputs from being
processed multiple times (which could happen, e.g., if an input was
a propagated input of several other inputs; this caused the size
variables like $PATH to blow up exponentially in the worst case).
* Patched GNU Make to write nested log information in the format
accepted by `log2xml'. Also, prior to writing the build command,
Make now writes a line `building X' to indicate what is being
built. This is unfortunately often obscured by the gigantic tool
invocations in many Makefiles. The actual build commands are marked
`unimportant' so that they don't clutter pages generated by
`log2html'.
svn path=/nixpkgs/trunk/; revision=845