aboutsummaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2013-03-07Prevent config.h from being clobberedEelco Dolstra
2013-02-19build-remote: Use the --quiet flagEelco Dolstra
‘--option verbosity 0’ doesn't actually do anything.
2013-01-21build-remote.pl: Don't keep build logs on the build slaveEelco Dolstra
2013-01-02UrggghEelco Dolstra
http://hydra.nixos.org/build/3661100
2013-01-02Reinstate the http://nixos.org/binary-cache default for the binary-caches ↵Eelco Dolstra
setting
2012-12-21download-from-binary-cache: Use the channels of the calling user rather than ↵Eelco Dolstra
root This should make live easier for single-user (non-daemon) installations. Note that when the daemon is used, the "calling user" is root so we're not using any untrusted caches.
2012-12-06Set a long SQLite timeout in the binary cache substituterEelco Dolstra
2012-12-05Support xz compression of nixexprs.tar in channelsEelco Dolstra
2012-11-26Undo accidental debug changeEelco Dolstra
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-11-23nix-copy-closure: Add flag ‘--use-substitutes’Eelco Dolstra
2012-11-09Use a shorter Nixpkgs channel URLEelco Dolstra
2012-11-06download-from-binary-cache: Try next cache if downloading a NAR failsEelco Dolstra
2012-11-06Process binary caches in order of priorityEelco Dolstra
Binary caches can now specify a priority in their nix-cache-info file. The binary cache substituter checks caches in order of priority. This is to ensure that fast, static caches like nixos.org/binary-cache are processed before slow, dynamic caches like hydra.nixos.org.
2012-11-06nix-push: Handle pushing a symlinkEelco Dolstra
2012-11-06Add an option ‘use-binary-caches’Eelco Dolstra
This allows disabling the use of binary caches, e.g. $ nix-build ... --option use-binary-caches false Note that $ nix-build ... --option binary-caches '' does not disable all binary caches, since the caches defined by channels will still be used.
2012-11-06Fix "Not an ARRAY reference" errorEelco Dolstra
It's a mystery why this error is not triggered in the build farm (e.g. http://hydra.nixos.org/build/3265602). Ah well.
2012-10-23nix-prefetch-url: Improve option handlingEelco Dolstra
2012-10-18nix-push: Add a flag ‘--manifest-path’ to write the manifest to another ↵Eelco Dolstra
directory
2012-10-17nix-push: Add ‘--link’ flagEelco Dolstra
If ‘--link’ is given, nix-push will create hard links to the NAR files in the store, rather than copying them. This is faster and requires less disk space. However, it doesn't work if the store is on a different file system.
2012-10-17nix-push: Only generate and copy a NAR if it doesn't already existEelco Dolstra
This prevents unnecessary and slow rebuilds of NARs that already exist in the binary cache.
2012-10-11download-from-binary-cache: Remove duplicate entries in trustedURLsEelco Dolstra
2012-10-03When ‘--help’ is given, just run ‘man’ to show the manual pageEelco Dolstra
I.e. do what git does. I'm too lazy to keep the builtin help text up to date :-) Also add ‘--help’ to various commands that lacked it (e.g. nix-collect-garbage).
2012-10-03nix-build: Support ‘--repair’ flagEelco Dolstra
2012-10-02Add operation ‘nix-store --repair-path’Eelco Dolstra
This operation allows fixing corrupted or accidentally deleted store paths by redownloading them using substituters, if available. Since the corrupted path cannot be replaced atomically, there is a very small time window (one system call) during which neither the old (corrupted) nor the new (repaired) contents are available. So repairing should be used with some care on critical packages like Glibc.
2012-09-21Style fixEelco Dolstra
2012-09-19Support xz compression in the download-using-manifests substituterEelco Dolstra
2012-09-13nix-collect-garbage: Support --dry-runEelco Dolstra
2012-09-13nix-profile.sh: Revert to single-user versionEelco Dolstra
Commit 6a214f3e06fa1c5f0a4d40e555f14d87691af297 copied most of the Nix shell initialisation code from NixOS to nix-profile.sh; however, that code assumes a multi-user install and is Linux-specific (e.g. it calls the "stat" command). So go back to the simple single-user version. Fixes #49.
2012-09-13Put a time-to-live on negative binary cache lookupsEelco Dolstra
Negative lookups are purged from the DB after a day, at most once per day. However, for non-"have" lookups (e.g. all except "nix-env -qas"), negative lookups are ignored after one hour. This is to ensure that you don't have to wait a day for an operation like "nix-env -i" to start using new binaries in the cache. Should probably make this configurable.
2012-09-13DohEelco Dolstra
2012-09-13nix-channel: Add option to force fetching of manifestsEelco Dolstra
2012-09-13Delete manifests in "nix-channel --remove" or when a binary cache is availableEelco Dolstra
2012-09-12Build hook: Pass the timeout to the remote builderEelco Dolstra
Note that this will only work if the client has a very recent Nix version (post 15e1b2c223494ecb5efefc3ea0e3b926a6b1d7dc), otherwise the --option flag will just be ignored. Fixes #50.
2012-09-12Compatibility fix for WWW::Curl < 4.14Eelco Dolstra
Older versions of WWW::Curl don't support scalar references for CURLOPT_WRITEDATA directly. http://hydra.nixos.org/build/3017188
2012-09-11Support building a derivation if some outputs are already validEelco Dolstra
This handles the chroot and build hook cases, which are easy. Supporting the non-chroot-build case will require more work (hash rewriting!). Issue #21.
2012-08-27Disable the binary cache substituter by default for nowEelco Dolstra
2012-08-27Drop dependency on List::MoreUtilsEelco Dolstra
2012-08-27Merge branch 'master' into no-manifestsEelco Dolstra
2012-08-24Include the output name in the GC root linkEelco Dolstra
Output names are now appended to resulting GC symlinks, e.g. by nix-build. For backwards compatibility, if the output is named "out", nothing is appended. E.g. doing "nix-build -A foo" on a derivation that produces outputs "out", "bin" and "dev" will produce symlinks "./result", "./result-bin" and "./result-dev", respectively.
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-01download-from-binary-cache: Remove duplicate URLsEelco Dolstra
2012-08-01Report substituter errors to clients of the Nix daemonEelco Dolstra
2012-07-31Allow daemon users to override ‘binary-caches’Eelco Dolstra
For security reasons, daemon users can only specify caches that appear in the ‘binary-caches’ and ‘trusted-binary-caches’ options in nix.conf.
2012-07-30Do some validation of URLsEelco Dolstra
2012-07-30Get rid of $NIX_BINARY_CACHESEelco Dolstra
You can use ‘--option binary-caches URLs’ instead.
2012-07-30nix-install-package: Support binary cachesEelco Dolstra
The .nixpkg file format is extended to optionally include the URL of a binary cache, which will be used in preference to the manifest URL (which can be set to a non-existent value).
2012-07-27Allow a binary cache to declare that it doesn't support "nix-env -qas"Eelco Dolstra
Querying all substitutable paths via "nix-env -qas" is potentially hard on a server, since it involves sending thousands of HEAD requests. So a binary cache must now have a meta-info file named "nix-cache-info" that specifies whether the server wants this. It also specifies the store prefix so that we don't send useless queries to a binary cache for a different store prefix.
2012-07-27Let build.cc verify the expected hash of a substituter's outputEelco Dolstra
Since SubstitutionGoal::finished() in build.cc computes the hash anyway, we can prevent the inefficiency of computing the hash twice by letting the substituter tell Nix about the expected hash, which can then verify it.
2012-07-27download-using-manifests: Don't use nix-prefetch-urlEelco Dolstra
Instead call curl directly and pipe it into ‘nix-store --restore’. This saves I/O and prevents creating garbage in the Nix store.