Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2016-08-17 | Add a mechanism for derivation attributes to reference the derivation's outputs | Eelco Dolstra | 4 | -14/+38 | |
For example, you can now say: configureFlags = "--prefix=${placeholder "out"} --includedir=${placeholder "dev"}"; The strings returned by the ‘placeholder’ builtin are replaced at build time by the actual store paths corresponding to the specified outputs. Previously, you had to work around the inability to self-reference by doing stuff like: preConfigure = '' configureFlags+=" --prefix $out --includedir=$dev" ''; or rely on ad-hoc variable interpolation semantics in Autoconf or Make (e.g. --prefix=\$(out)), which doesn't always work. | |||||
2016-08-16 | Merge pull request #1031 from abbradar/replacestrings-context | Eelco Dolstra | 1 | -7/+17 | |
Allow contexted strings in replaceStrings | |||||
2016-08-16 | Allow contexted strings in replaceStrings | Nikolay Amiantov | 1 | -7/+17 | |
2016-08-15 | builtins.fetch{url,tarball}: Allow name attribute | Shea Levy | 3 | -9/+13 | |
2016-08-11 | Merge branch 'buildenv-c++' of https://github.com/shlevy/nix | Eelco Dolstra | 2 | -0/+195 | |
2016-08-11 | buildenv: perl -> c++ | Shea Levy | 2 | -0/+195 | |
2016-08-10 | HttpBinaryCacheStore: Retry on transient HTTP errors | Eelco Dolstra | 3 | -14/+34 | |
This makes us more robust against 500 errors from CloudFront or S3 (assuming the 500 error isn't cached by CloudFront...). | |||||
2016-08-10 | Show HTTP error codes | Eelco Dolstra | 1 | -2/+6 | |
2016-08-10 | SQLite:: Add some convenience | Eelco Dolstra | 4 | -28/+33 | |
2016-08-10 | FSAccessor: Throw InvalidPath | Eelco Dolstra | 2 | -2/+2 | |
2016-08-10 | NarAccessor: Fix handling of non-executable files | Eelco Dolstra | 1 | -1/+1 | |
2016-08-10 | Mark content-addressed paths in the Nix database and in .narinfo | Eelco Dolstra | 11 | -43/+146 | |
This allows such paths to be imported without signatures. | |||||
2016-08-10 | LocalFSStore::narFromPath(): Handle the diverted store case | Eelco Dolstra | 1 | -1/+1 | |
2016-08-10 | Add a "root" parameter to local stores | Eelco Dolstra | 5 | -5/+13 | |
This makes it easier to create a diverted store, i.e. NIX_REMOTE="local?root=/tmp/root" instead of NIX_REMOTE="local?real=/tmp/root/nix/store&state=/tmp/root/nix/var/nix" NIX_LOG_DIR=/tmp/root/nix/var/log | |||||
2016-08-10 | Remove $NIX_DB_DIR | Eelco Dolstra | 4 | -6/+1 | |
This variable has no reason to exist, given $NIX_STATE_DIR. | |||||
2016-08-10 | RemoteStore / nix-daemon: Drop support for Nix < 1.0 | Eelco Dolstra | 2 | -44/+33 | |
2016-07-26 | makeFixedOutputPath(): Drop superfluous HashType argument | Eelco Dolstra | 11 | -27/+25 | |
2016-07-26 | builtins.{fetchurl,fetchTarball}: Support a sha256 attribute | Eelco Dolstra | 3 | -12/+37 | |
Also, allow builtins.{fetchurl,fetchTarball} in restricted mode if a hash is specified. | |||||
2016-07-24 | Merge branch 'find-runtime-roots-c++' | Shea Levy | 1 | -8/+108 | |
2016-07-23 | Respect --keep-going when a substituter fails. | Shea Levy | 1 | -2/+4 | |
Fixes #977 | |||||
2016-07-21 | Fix assertion failure | Eelco Dolstra | 1 | -1/+1 | |
2016-07-21 | Fix random failures caused by CurlDownloader modifying a shared string | Eelco Dolstra | 1 | -1/+1 | |
2016-07-21 | NarInfo::NarInfo(): Ensure that we get a NAR size/hash | Eelco Dolstra | 2 | -2/+3 | |
2016-07-21 | Fix assertion failure in ThreadPool::enqueue() | Eelco Dolstra | 2 | -2/+6 | |
2016-07-21 | Store::queryMissing(): Use a thread pool | Eelco Dolstra | 1 | -85/+104 | |
For one particular NixOS configuration, this cut the runtime of "nix-store -r --dry-run" from 6m51s to 3.4s. It also fixes a bug in the size calculation that was causing certain paths to be counted twice, e.g. before: these paths will be fetched (1249.98 MiB download, 2995.74 MiB unpacked): and after: these paths will be fetched (1219.56 MiB download, 2862.17 MiB unpacked): | |||||
2016-07-21 | Store::computeFSClosure(): Use thread pool | Eelco Dolstra | 1 | -27/+48 | |
This speeds up queries against the binary cache. | |||||
2016-07-21 | find-runtime-roots: fold into gc.cc | Shea Levy | 1 | -8/+108 | |
2016-07-13 | FdSink: Restore move constructor/assignment | Shea Levy | 1 | -0/+2 | |
2016-07-13 | Make Buffered{Source,Sink} move-safe | Shea Levy | 2 | -27/+12 | |
2016-07-11 | Modernize AutoCloseFD | Shea Levy | 11 | -151/+137 | |
2016-06-20 | Re-implement negative binary cache lookup caching | Eelco Dolstra | 2 | -15/+22 | |
2016-06-09 | Run builds in a user namespace | Eelco Dolstra | 1 | -14/+65 | |
This way, all builds appear to have a uid/gid of 0 inside the chroot. In the future, this may allow using programs like systemd-nspawn inside builds, but that will require assigning a larger UID/GID map to the build. Issue #625. | |||||
2016-06-09 | Use O_CLOEXEC in most places | Eelco Dolstra | 8 | -18/+22 | |
2016-06-03 | Fix "creating statement: table ValidPaths has no column named ultimate" | Eelco Dolstra | 1 | -41/+29 | |
2016-06-03 | Support sandbox builds by non-root users | Eelco Dolstra | 3 | -53/+69 | |
This allows an unprivileged user to perform builds on a diverted store (i.e. where the physical store location differs from the logical location). Example: $ NIX_LOG_DIR=/tmp/log NIX_REMOTE="local?real=/tmp/store&state=/tmp/var" nix-build -E \ 'with import <nixpkgs> {}; runCommand "foo" { buildInputs = [procps nettools]; } "id; ps; ifconfig; echo $out > $out"' will do a build in the Nix store physically in /tmp/store but logically in /nix/store (and thus using substituters for the latter). | |||||
2016-06-03 | Consistent quotes | Eelco Dolstra | 1 | -1/+1 | |
2016-06-03 | Don't call shared_from_this() from a destructor | Eelco Dolstra | 1 | -1/+1 | |
2016-06-03 | Fix some more references to storeDir | Eelco Dolstra | 1 | -2/+2 | |
2016-06-03 | Merge pull request #925 from abbradar/master | Eelco Dolstra | 1 | -5/+5 | |
Show both cycle ends | |||||
2016-06-03 | Show both cycle ends | Nikolay Amiantov | 1 | -5/+5 | |
2016-06-03 | Fix narrowing conversion from int64_t to bool | Eelco Dolstra | 1 | -1/+1 | |
http://hydra.nixos.org/build/36613774 | |||||
2016-06-02 | nix run: Set a reasonable uid/gid | Eelco Dolstra | 1 | -0/+7 | |
2016-06-02 | Make derivationFromPath work on diverted stores | Eelco Dolstra | 5 | -18/+27 | |
2016-06-02 | nix run: Handle the case where the /nix/store mount point doesn't exist | Eelco Dolstra | 1 | -2/+39 | |
2016-06-02 | createTempDir(): Don't do a chown on Linux | Eelco Dolstra | 1 | -0/+2 | |
It's not needed and can cause problems in a user namespace. | |||||
2016-06-02 | nix run: Mount the Nix store in a private namespace | Eelco Dolstra | 2 | -1/+25 | |
This is a convenience command to allow users who are not privileged to create /nix/store to use Nix with regular binary caches. For example, $ NIX_REMOTE="local?state=$HOME/nix/var&real=/$HOME/nix/store" nix run firefox bashInteractive will download Firefox and bash from cache.nixos.org, then start a shell in which $HOME/nix/store is mounted on /nix/store. | |||||
2016-06-02 | Add basic "nix run" command | Eelco Dolstra | 1 | -0/+62 | |
2016-06-02 | LocalStore: Allow the physical and logical store directories to differ | Eelco Dolstra | 5 | -54/+68 | |
This is primarily to subsume the functionality of the copy-from-other-stores substituter. For example, in the NixOS installer, we can now do (assuming we're in the target chroot, and the Nix store of the installation CD is bind-mounted on /tmp/nix): $ nix-build ... --option substituters 'local?state=/tmp/nix/var&real=/tmp/nix/store' However, unlike copy-from-other-stores, this also allows write access to such a store. One application might be fetching substitutes for /nix/store in a situation where the user doesn't have sufficient privileges to create /nix, e.g.: $ NIX_REMOTE="local?state=/home/alice/nix/var&real=/home/alice/nix/store" nix-build ... | |||||
2016-06-02 | Respect build-use-substitutes | Eelco Dolstra | 2 | -1/+3 | |
2016-06-02 | Allow setting the state directory as a store parameter | Eelco Dolstra | 13 | -77/+112 | |
E.g. "local?store=/tmp/store&state=/tmp/var". |