aboutsummaryrefslogtreecommitdiff
path: root/corepkgs
AgeCommit message (Collapse)Author
2013-07-01Add support for uncompressed NARs in binary cachesEelco Dolstra
Issue NixOS/hydra#102.
2013-03-08Revert "Prevent config.h from being clobbered"Eelco Dolstra
This reverts commit 28bba8c44f484eae38e8a15dcec73cfa999156f6.
2013-03-07Prevent config.h from being clobberedEelco Dolstra
2013-01-21corepkgs/fetchurl: Enable making the downloaded file executableShea Levy
2012-12-05Support xz compression of nixexprs.tar in channelsEelco Dolstra
2012-12-04buildenv.pl: Create symlinks in priority orderEelco Dolstra
This reduces unnecessary symlink/unlink steps.
2012-12-04Add a test for ‘nix-env --set-flag active ...’Eelco Dolstra
2012-12-04nix-env: Install all outputs of a derivationEelco Dolstra
If you explicitly install a package, presumably you want all of it. So symlink all outputs in the user environment.
2012-11-26Make "nix-build -A <derivation>.<output>" do the right thingEelco Dolstra
For example, given a derivation with outputs "out", "man" and "bin": $ nix-build -A pkg produces ./result pointing to the "out" output; $ nix-build -A pkg.man produces ./result-man pointing to the "man" output; $ nix-build -A pkg.all produces ./result, ./result-man and ./result-bin; $ nix-build -A pkg.all -A pkg2 produces ./result, ./result-man, ./result-bin and ./result-2.
2012-09-11Don't use -warning=no-timestamp unless we have GNU tarEelco Dolstra
http://hydra.nixos.org/build/2998485
2012-08-01nix-channel: Use binary caches advertised by channelsEelco Dolstra
Channels can now advertise a binary cache by creating a file <channel-url>/binary-cache-url. The channel unpacker puts these in its "binary-caches" subdirectory. Thus, the URLS of the binary caches for the channels added by root appear in /nix/var/nix/profiles/per-user/eelco/channels/binary-caches/*. The binary cache substituter reads these and adds them to the list of binary caches.
2012-08-01Use a GNU tar flag to shut up warnings about implausibly old timestampEelco Dolstra
2012-08-01Inline unpack-channel.shEelco Dolstra
2012-07-26Merge branch 'master' into no-manifestsEelco Dolstra
2012-07-25import: If the path is a valid .drv file, parse it and generate a derivation ↵Shea Levy
attrset. The generated attrset has drvPath and outPath with the right string context, type 'derivation', outputName with the right name, all with a list of outputs, and an attribute for each output. I see three uses for this (though certainly there may be more): * Using derivations generated by something besides nix-instantiate (e.g. guix) * Allowing packages provided by channels to be used in nix expressions. If a channel installed a valid deriver for each package it provides into the store, then those could be imported and used as dependencies or installed in environment.systemPackages, for example. * Enable hydra to be consistent in how it treats inputs that are outputs of another build. Right now, if an input is passed as an argument to the job, it is passed as a derivation, but if it is accessed via NIX_PATH (i.e. through the <> syntax), then it is a path that can be imported. This is problematic because the build being depended upon may have been built with non-obvious arguments passed to its jobset file. With this feature, hydra can just set the name of that input to the path to its drv file in NIX_PATH
2012-07-11Merge branch 'master' of github.com:NixOS/nix into no-manifestsEelco Dolstra
2012-07-09Pass --insecure to curl so that https worksEelco Dolstra
2012-07-09Inline fetchurl.shEelco Dolstra
2012-07-09Remove obsolete commentShea Levy
2012-07-09corepkgs/fetchurl: Build locally and outside of the chrootShea Levy
2012-07-09corepkgs/fetchurl: the 'system' argument can be optionalShea Levy
2012-07-09corepkgs: distribute fetchurl filesShea Levy
2012-07-09corepkgs/fetchurl: Call the shell directly instead of using the shebangShea Levy
2012-07-09corepkgs/fetchurl.sh: Use config.nix's curlShea Levy
2012-07-09The fetchurl builder is now fetchurl.shShea Levy
2012-07-09Remove old fetchurl makefileShea Levy
2012-07-09Move fetchurl files out of their subdirectoryShea Levy
2012-07-09corepkgs/config.nix.in: We'll need curlShea Levy
2012-07-09Resurrect old corepkgs fetchurlShea Levy
2012-07-01Fix xz compressionEelco Dolstra
2012-07-01Allow both bzip2 and xz compressionEelco Dolstra
2012-06-29Use XZ compression in binary cachesEelco Dolstra
XZ compresses significantly better than bzip2. Here are the compression ratios and execution times (using 4 cores in parallel) on my /var/run/current-system (3.1 GiB): bzip2: total compressed size 849.56 MiB, 30.8% [2m08] xz -6: total compressed size 641.84 MiB, 23.4% [6m53] xz -7: total compressed size 621.82 MiB, 22.6% [7m19] xz -8: total compressed size 599.33 MiB, 21.8% [7m18] xz -9: total compressed size 588.18 MiB, 21.4% [7m40] Note that compression takes much longer. More importantly, however, decompression is much faster: bzip2: 1m47.274s xz -6: 0m55.446s xz -7: 0m54.119s xz -8: 0m52.388s xz -9: 0m51.842s The only downside to using -9 is that decompression takes a fair amount (~65 MB) of memory.
2012-05-09Disable building in chroot for Nix's corepkgsEelco Dolstra
The dependencies of the corepkgs are not necessarily in the chroot (or in the Nix store), so don't build them in a chroot.
2012-04-26Don't use the build hook for unpacking channelsEelco Dolstra
2012-04-14If the (redirected) channel URL contains a version number, use itEelco Dolstra
2012-04-14Remove unnecessary "system" argumentEelco Dolstra
2012-04-14nix-channel improvementsEelco Dolstra
"nix-channel --add" now accepts a second argument: the channel name. This allows channels to have a nicer name than (say) nixpkgs_unstable. If no name is given, it defaults to the last component of the URL (with "-unstable" or "-stable" removed). Also, channels are now stored in a profile (/nix/var/nix/profiles/per-user/$USER/channels). One advantage of this is that it allows rollbacks (e.g. if "nix-channel --update" gives an undesirable update).
2012-01-04* currentOutput -> outputName. "current" implies some temporalEelco Dolstra
aspect.
2012-01-04* Export the original input attributes of the derivation inEelco Dolstra
‘drvAttrs’. This will simplify the implementation of functions such as ‘overrideDerivation’ in Nixpkgs, which need to filter out any added attributes such as outPath.
2012-01-04* Simplify the implementation of "derivation" a bit: lift out theEelco Dolstra
common attribution so that they're evaluated only once, etc. Note that the default output is now the first element of the "outputs" attribute, rather than the first element of the sorted list of outputs. This seems more user-friendly.
2012-01-03* Drop the inefficient "Path" suffix in output attribute names.Eelco Dolstra
2012-01-03* Move the implementation of the ‘derivation’ primop into a separateEelco Dolstra
file.
2012-01-03* Forgot to add.Eelco Dolstra
2012-01-03* Add a test for nix-channel.Eelco Dolstra
* Refactor the nix-channel unpacker a bit.
2012-01-03* Refactoring: Get rid of a few subdirectories in corepkgs/, and someEelco Dolstra
other simplifications. * Use <nix/...> to locate the corepkgs. This allows them to be overriden through $NIX_PATH. * Use bash's pipefail option in the NAR builder so that we don't need to create a temporary file.
2011-11-05* Fix the broken reference to bunzip2 in the channel unpack script.Eelco Dolstra
2011-10-10* Install NixManifest.pm, NixConfig.pm and GeneratePatches.pm underEelco Dolstra
the Nix:: namespace.
2010-11-17* nix-push: no need to compute the NAR hash, since the Nix databaseEelco Dolstra
already has it (`nix-store -q --hash').
2010-08-04* Allow derivations to hint that they should not be built remotelyEelco Dolstra
using the build hook mechanism, by setting the derivation attribute "preferLocalBuild" to true. This has a few use cases: - The user environment builder. Since it just creates a bunch of symlinks without much computation, there is no reason to do it remotely. In fact, doing it remotely requires the entire closure of the user environment to be copied to the remote machine, which is extremely wasteful. - `fetchurl'. Performing the download on a remote machine and then copying it to the local machine involves twice as much network traffic as performing the download locally, and doesn't save any CPU cycles on the local machine.
2010-05-07* Sync with the trunk.Eelco Dolstra