about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2016-07-11 Modernize AutoCloseFDShea Levy11-151/+137
2016-06-20 Re-implement negative binary cache lookup cachingEelco Dolstra2-15/+22
2016-06-09 Run builds in a user namespaceEelco Dolstra1-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 placesEelco Dolstra8-18/+22
2016-06-03 Fix "creating statement: table ValidPaths has no column named ultimate"Eelco Dolstra1-41/+29
2016-06-03 Support sandbox builds by non-root usersEelco Dolstra3-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 quotesEelco Dolstra1-1/+1
2016-06-03 Don't call shared_from_this() from a destructorEelco Dolstra1-1/+1
2016-06-03 Fix some more references to storeDirEelco Dolstra1-2/+2
2016-06-03 Merge pull request #925 from abbradar/masterEelco Dolstra1-5/+5
Show both cycle ends
2016-06-03 Show both cycle endsNikolay Amiantov1-5/+5
2016-06-03 Fix narrowing conversion from int64_t to boolEelco Dolstra1-1/+1
http://hydra.nixos.org/build/36613774
2016-06-02 nix run: Set a reasonable uid/gidEelco Dolstra1-0/+7
2016-06-02 Make derivationFromPath work on diverted storesEelco Dolstra5-18/+27
2016-06-02 nix run: Handle the case where the /nix/store mount point doesn't existEelco Dolstra1-2/+39
2016-06-02 createTempDir(): Don't do a chown on LinuxEelco Dolstra1-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 namespaceEelco Dolstra2-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" commandEelco Dolstra1-0/+62
2016-06-02 LocalStore: Allow the physical and logical store directories to differEelco Dolstra5-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-substitutesEelco Dolstra2-1/+3
2016-06-02 Allow setting the state directory as a store parameterEelco Dolstra13-77/+112
E.g. "local?store=/tmp/store&state=/tmp/var".
2016-06-01 <nix/fetchurl.nix>: Use tarballs.nixos.orgEelco Dolstra1-20/+35
This ensures that the disappearance of upstream bootstrap tarballs (e.g. https://github.com/NixOS/nixpkgs-channels/pull/1) doesn't break stdenv rebuilds.
2016-06-01 TypoEelco Dolstra1-1/+1
2016-06-01 Skip substituters with an incompatible store directoryEelco Dolstra2-0/+7
2016-06-01 HttpBinaryCacheStore: Fix caching of WantMassQueryEelco Dolstra5-20/+25
Also, test HttpBinaryCacheStore in addition to LocalBinaryCacheStore.
2016-06-01 Make the store directory a member variable of StoreEelco Dolstra33-292/+312
2016-05-31 Shut up some clang warningsEelco Dolstra4-10/+12
2016-05-31 Fix clang build failureEelco Dolstra1-1/+2
Apparently opinion is divided on whether [[noreturn]] is allowed on a lambda: http://stackoverflow.com/questions/26888805/how-to-declare-a-lambdas-operator-as-noreturn http://hydra.nixos.org/build/36462100
2016-05-31 nix-copy-closure / build-remote.pl: Disable signature checkingEelco Dolstra9-13/+16
This restores the Nix 1.11 behaviour.
2016-05-31 use $(LIBLZMA_LIBS) instead of -llzmaDmitry Kalinkin1-1/+1
This is needed in case of non-standard lzma installation path that will be specified in pkgconfig manifest as extra -L option for LDFLAGS.
2016-05-30 Fix buildEelco Dolstra1-1/+1
2016-05-30 Check signatures before downloading the substituteEelco Dolstra2-0/+11
2016-05-30 Test the NAR info cacheEelco Dolstra1-0/+7
2016-05-30 Re-implement binary cache signature checkingEelco Dolstra2-0/+9
This is now done in LocalStore::addToStore(), rather than in the binary cache substituter (which no longer exists).
2016-05-30 LocalStore::addToStore: Verify hash of the imported pathEelco Dolstra1-0/+5
2016-05-30 Re-implement the WantMassQuery property of binary cachesEelco Dolstra8-8/+40
2016-05-30 Fix repair during substitutionEelco Dolstra3-4/+5
2016-05-30 BinaryCacheStore: Remove buildPaths() / ensurePath()Eelco Dolstra6-83/+20
2016-05-04 Make the aws-cpp-sdk dependency optionalEelco Dolstra2-1/+11
2016-05-04 Cleanup: Remove singleton()Eelco Dolstra9-35/+23
2016-05-04 Do compression in a sinkEelco Dolstra6-137/+206
2016-05-04 More GC fixesEelco Dolstra1-5/+5
2016-05-04 Add a Store::addToStore() variant that accepts a NAREelco Dolstra15-338/+235
As a side effect, this ensures that signatures are propagated when copying paths between stores. Also refactored import/export to make use of this.
2016-05-04 nix-daemon: Fix queryPathInfo() backward compatibilityEelco Dolstra1-2/+6
2016-05-04 Fix segfault in xz compression/decompressionEelco Dolstra1-2/+2
2016-05-04 Remove OpenSSL-based signingEelco Dolstra10-116/+39
2016-05-04 Add a copyStorePath() utility functionEelco Dolstra5-10/+27
2016-04-29 Support Git repos in the Nix pathEelco Dolstra5-37/+71
E.g. $ nix-build -I nixpkgs=git://github.com/NixOS/nixpkgs '<nixpkgs>' -A hello This is not extremely useful yet because you can't specify a branch/revision.
2016-04-29 Add fetchgit builtinEelco Dolstra2-1/+78
The function builtins.fetchgit fetches Git repositories at evaluation time, similar to builtins.fetchTarball. (Perhaps the name should be changed, being confusing with respect to Nixpkgs's fetchgit function, with works at build time.) Example: (import (builtins.fetchgit git://github.com/NixOS/nixpkgs) {}).hello or (import (builtins.fetchgit { url = git://github.com/NixOS/nixpkgs-channels; rev = "nixos-16.03"; }) {}).hello Note that the result does not contain a .git directory.
2016-04-29 nix-store -l: Simplify implementationEelco Dolstra1-15/+2