about summary refs log tree commit diff
path: root/corepkgs
AgeCommit message (Collapse)AuthorFilesLines
2012-12-04 nix-env: Install all outputs of a derivationEelco Dolstra2-22/+25
If you explicitly install a package, presumably you want all of it. So symlink all outputs in the user environment.
2012-11-26 Make "nix-build -A <derivation>.<output>" do the right thingEelco Dolstra1-3/+3
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-11 Don't use -warning=no-timestamp unless we have GNU tarEelco Dolstra1-1/+1
http://hydra.nixos.org/build/2998485
2012-08-01 nix-channel: Use binary caches advertised by channelsEelco Dolstra1-3/+7
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-01 Use a GNU tar flag to shut up warnings about implausibly old timestampEelco Dolstra2-1/+2
2012-08-01 Inline unpack-channel.shEelco Dolstra3-8/+17
2012-07-26 Merge branch 'master' into no-manifestsEelco Dolstra2-1/+23
2012-07-25 import: If the path is a valid .drv file, parse it and generate a derivation ↵Shea Levy2-1/+23
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-11 Merge branch 'master' of github.com:NixOS/nix into no-manifestsEelco Dolstra3-1/+38
2012-07-09 Pass --insecure to curl so that https worksEelco Dolstra1-1/+1
2012-07-09 Inline fetchurl.shEelco Dolstra3-9/+13
2012-07-09 Remove obsolete commentShea Levy1-3/+0
2012-07-09 corepkgs/fetchurl: Build locally and outside of the chrootShea Levy1-0/+6
2012-07-09 corepkgs/fetchurl: the 'system' argument can be optionalShea Levy1-1/+1
2012-07-09 corepkgs: distribute fetchurl filesShea Levy1-1/+1
2012-07-09 corepkgs/fetchurl: Call the shell directly instead of using the shebangShea Levy2-3/+2
2012-07-09 corepkgs/fetchurl.sh: Use config.nix's curlShea Levy2-2/+4
2012-07-09 The fetchurl builder is now fetchurl.shShea Levy1-1/+1
2012-07-09 Remove old fetchurl makefileShea Levy1-11/+0
2012-07-09 Move fetchurl files out of their subdirectoryShea Levy2-0/+0
2012-07-09 corepkgs/config.nix.in: We'll need curlShea Levy1-0/+1
2012-07-09 Resurrect old corepkgs fetchurlShea Levy3-0/+39
2012-07-01 Fix xz compressionEelco Dolstra1-3/+3
2012-07-01 Allow both bzip2 and xz compressionEelco Dolstra1-5/+13
2012-06-29 Use XZ compression in binary cachesEelco Dolstra2-5/+7
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-09 Disable building in chroot for Nix's corepkgsEelco Dolstra3-0/+10
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-26 Don't use the build hook for unpacking channelsEelco Dolstra1-0/+2
2012-04-14 If the (redirected) channel URL contains a version number, use itEelco Dolstra2-3/+3
2012-04-14 Remove unnecessary "system" argumentEelco Dolstra2-4/+5
2012-04-14 nix-channel improvementsEelco Dolstra2-32/+6
"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 Dolstra1-1/+1
aspect.
2012-01-04 * Export the original input attributes of the derivation inEelco Dolstra1-1/+4
‘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 Dolstra1-18/+11
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 Dolstra1-4/+4
2012-01-03 * Move the implementation of the ‘derivation’ primop into a separateEelco Dolstra2-1/+32
file.
2012-01-03 * Forgot to add.Eelco Dolstra1-0/+13
2012-01-03 * Add a test for nix-channel.Eelco Dolstra6-57/+45
* Refactor the nix-channel unpacker a bit.
2012-01-03 * Refactoring: Get rid of a few subdirectories in corepkgs/, and someEelco Dolstra8-46/+46
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 Dolstra1-1/+1
2011-10-10 * Install NixManifest.pm, NixConfig.pm and GeneratePatches.pm underEelco Dolstra1-1/+1
the Nix:: namespace.
2010-11-17 * nix-push: no need to compute the NAR hash, since the Nix databaseEelco Dolstra1-2/+0
already has it (`nix-store -q --hash').
2010-08-04 * Allow derivations to hint that they should not be built remotelyEelco Dolstra1-0/+4
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 Dolstra1-1/+9
2010-05-05 buildenv: Special-case Python's `site.py' and `site.pyc'.Ludovic Courtès1-0/+2
* corepkgs/buildenv/builder.pl.in (createLinks): Skip `site.py' and `site.pyc' files.
2010-05-03 buildenv: Special-case Python's `easy-install.pth' files.Ludovic Courtès1-1/+7
* corepkgs/buildenv/builder.pl.in (createLinks): Skip `easy-install.pth' files. Comment the hack.
2010-04-21 * Store user environment manifests as a Nix expression inEelco Dolstra1-1/+1
$out/manifest.nix rather than as an ATerm. (Hm, I thought I committed this two days ago...)
2010-02-02 * Ugly hack to make `nix-channel' work on Cygwin.Eelco Dolstra1-0/+3
2009-03-03 * Allow the channel to declare a name for itself.Eelco Dolstra1-0/+6
2007-09-17 * nix-env: allow ~/.nix-defexpr to be a directory. If it is, then theEelco Dolstra1-10/+3
Nix expressions in that directory are combined into an attribute set {file1 = import file1; file2 = import file2; ...}, i.e. each Nix expression is an attribute with the file name as the attribute name. Also recurses into directories. * nix-env: removed the "--import" (-I) option which set the ~/.nix-defexpr symlink. * nix-channel: don't use "nix-env --import", instead symlink ~/.nix-defexpr/channels. So finally nix-channel --update doesn't override any default Nix expressions but combines with them. This means that you can have (say) a local Nixpkgs SVN tree and use it as a default for nix-env: $ ln -s .../path-to-nixpkgs-tree ~/.nix-defexpr/nixpkgs_svn and be subscribed to channels (including Nixpkgs) at the same time. (If there is any ambiguity, the -A flag can be used to disambiguate, e.g. "nix-env -i -A nixpkgs_svn.pan".)
2007-05-16 * New builtin function "isFunction". You're not supposed to use itEelco Dolstra1-1/+1
;-) * Channels: fix channels that are plain lists of derivations (like strategoxt-unstable) instead of functions (like nixpkgs-unstable). This fixes the error message "error: the left-hand side of the function call is neither a function nor a primop (built-in operation) but a list".