aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-30Remove tabsShea Levy
2017-02-07Remove Perl dependency listing in docJanus Troelsen
2017-02-07Add nix-perl package for the perl bindingsShea Levy
2017-02-07Remove perl dependency.Shea Levy
Fixes #341
2017-02-07nix-copy-closure: Use computeFSClosure() and LegacySSHStoreEelco Dolstra
2017-02-07Merge branch 'nix-copy-closure-c++' of https://github.com/shlevy/nixEelco Dolstra
2017-02-07Add a LegacySSHStore that uses nix-store --serveEelco Dolstra
This is useful for nix-copy-closure.
2017-02-07copyStorePath(): Don't require signatures for "trusted" storesEelco Dolstra
For example, SSH stores could be trusted.
2017-02-07Provide default implementations for a couple of Store methodsEelco Dolstra
2017-02-07Move SavingSourceAdapter to serialise.hhEelco Dolstra
2017-02-07Remove unnecessary call to topoSortPaths()Eelco Dolstra
exportPaths() already does this.
2017-02-07SSHStore: uri -> hostEelco Dolstra
2017-02-07CleanupEelco Dolstra
2017-02-07Remove download-via-sshEelco Dolstra
Replaced by SSHStore.
2017-02-07Remove build-remote.pl.inEelco Dolstra
2017-02-02exportReferencesGraph: Only export in JSON format when in structured modeEelco Dolstra
This prevents breaking compatibility with builders that read "closure.*", since they would accidentally pick up the new JSON files.
2017-02-01Restore default signal handling in child processesEelco Dolstra
In particular, this fixes Ctrl-C in nix-shell sessions.
2017-01-27release.nix: Drop nix-shell referencesEelco Dolstra
2017-01-27Periodically purge binary-cache.sqliteEelco Dolstra
2017-01-27Implement TTL for binary cache lookupsEelco Dolstra
2017-01-27Remove unused NARExistence tableEelco Dolstra
2017-01-26exportReferencesGraph: Export more complete info in JSON formatEelco Dolstra
This writes info about every path in the closure in the same format as ‘nix path-info --json’. Thus it also includes NAR hashes and sizes. Example: [ { "path": "/nix/store/10h6li26i7g6z3mdpvra09yyf10mmzdr-hello-2.10", "narHash": "sha256:0ckdc4z20kkmpqdilx0wl6cricxv90lh85xpv2qljppcmz6vzcxl", "narSize": 197648, "references": [ "/nix/store/10h6li26i7g6z3mdpvra09yyf10mmzdr-hello-2.10", "/nix/store/27binbdy296qvjycdgr1535v8872vz3z-glibc-2.24" ], "closureSize": 20939776 }, { "path": "/nix/store/27binbdy296qvjycdgr1535v8872vz3z-glibc-2.24", "narHash": "sha256:1nfn3m3p98y1c0kd0brp80dn9n5mycwgrk183j17rajya0h7gax3", "narSize": 20742128, "references": [ "/nix/store/27binbdy296qvjycdgr1535v8872vz3z-glibc-2.24" ], "closureSize": 20742128 } ] Fixes #1134.
2017-01-26Add support for passing structured data to buildersEelco Dolstra
Previously, all derivation attributes had to be coerced into strings so that they could be passed via the environment. This is lossy (e.g. lists get flattened, necessitating configureFlags vs. configureFlagsArray, of which the latter cannot be specified as an attribute), doesn't support attribute sets at all, and has size limitations (necessitating hacks like passAsFile). This patch adds a new mode for passing attributes to builders, namely encoded as a JSON file ".attrs.json" in the current directory of the builder. This mode is activated via the special attribute __structuredAttrs = true; (The idea is that one day we can set this in stdenv.mkDerivation.) For example, stdenv.mkDerivation { __structuredAttrs = true; name = "foo"; buildInputs = [ pkgs.hello pkgs.cowsay ]; doCheck = true; hardening.format = false; } results in a ".attrs.json" file containing (sans the indentation): { "buildInputs": [], "builder": "/nix/store/ygl61ycpr2vjqrx775l1r2mw1g2rb754-bash-4.3-p48/bin/bash", "configureFlags": [ "--with-foo", "--with-bar=1 2" ], "doCheck": true, "hardening": { "format": false }, "name": "foo", "nativeBuildInputs": [ "/nix/store/10h6li26i7g6z3mdpvra09yyf10mmzdr-hello-2.10", "/nix/store/4jnvjin0r6wp6cv1hdm5jbkx3vinlcvk-cowsay-3.03" ], "propagatedBuildInputs": [], "propagatedNativeBuildInputs": [], "stdenv": "/nix/store/f3hw3p8armnzy6xhd4h8s7anfjrs15n2-stdenv", "system": "x86_64-linux" } "passAsFile" is ignored in this mode because it's not needed - large strings are included directly in the JSON representation. It is up to the builder to do something with the JSON representation. For example, in bash-based builders, lists/attrsets of string values could be mapped to bash (associative) arrays.
2017-01-26Bindings: Add a method for iterating in lexicographically sorted orderEelco Dolstra
2017-01-26Fix assertion failure when a path is lockedEelco Dolstra
Fixes: nix-store: src/libstore/build.cc:3649: void nix::Worker::run(const Goals&): Assertion `!awake.empty()' failed.
2017-01-26Fix interrupt handlingEelco Dolstra
2017-01-26UserLock: Fix multi-threaded access to a global variableEelco Dolstra
2017-01-26openLockFile: Return an AutoCloseFDEelco Dolstra
2017-01-26UserLock: Make more RAII-ishEelco Dolstra
2017-01-26Moving more code out of DerivationGoal::startBuilder()Eelco Dolstra
2017-01-26On HTTP errors, also show the curl errorEelco Dolstra
This is a hopefully temporary measure to diagnose the intermittent "HTTP error 200" failures.
2017-01-26Move exportReferencesGraph into a separate methodEelco Dolstra
startBuilder() is getting rather obese.
2017-01-25Merge pull request #1202 from trofi/no-bsddiff_compat_includeDomen Kožar
Makefile.config.in: drop unused bsddiff_compat_include
2017-01-25Merge pull request #1199 from NixOS/osx-minimal-versionDomen Kožar
Bail out if MacOS 10.9 or lower is used during installer
2017-01-25bail out if macOS 10.9 or lower is used during installerDomen Kožar
2017-01-24Makefile.config.in: drop unused bsddiff_compat_includeSergei Trofimovich
bsddiff_compat_include configure.ac substitution was removed in commit 16d9c872e41eb39248d88a3ba7c5706267676153 Signed-off-by: Sergei Trofimovich <siarheit@google.com>
2017-01-24Revert "Propagate path context via builtins.readFile"Eelco Dolstra
This reverts commit f7f0116dd727ac954fb04d9ef9b9fe7ec034e563. Issue #1174.
2017-01-24Revert "builtins.readFile: Put the references of the file, not those needed ↵Eelco Dolstra
to realize the file, into the context" Reverting commit 451c223deea17918454ae083dcfc0ea2b6103cab for now because it breaks http://hydra.nixos.org/build/46805136, not clear why.
2017-01-24Hopefully fix build on older GCCEelco Dolstra
http://hydra.nixos.org/build/46805140
2017-01-24Fix typoEelco Dolstra
2017-01-24Enable verbose curl outputEelco Dolstra
Closes #1182.
2017-01-24build-remote: Use futimes instead of futimens on APPLEShea Levy
2017-01-24Work around a bug in clang and older versions of gccEelco Dolstra
http://hydra.nixos.org/build/46597440 https://llvm.org/bugs/show_bug.cgi?id=28096
2017-01-24shell.nix: Add a flag for using clangEelco Dolstra
2017-01-20nix-copy-closure: Implement in C++.Shea Levy
Tests fail currently because the database is not given proper hashes in the VM
2017-01-19Merge pull request #981 from shlevy/build-remote-c++Eelco Dolstra
build-remote: Implement in C++
2017-01-19Kill builds when we get EOF on the log FDEelco Dolstra
This closes a long-time bug that allowed builds to hang Nix indefinitely (regardless of timeouts) simply by doing exec > /dev/null 2>&1; while true; do true; done Now, on EOF, we just send SIGKILL to the child to make sure it's really gone.
2017-01-19CleanupEelco Dolstra
2017-01-19Use std::unique_ptr for HookInstanceEelco Dolstra
2017-01-19Add a test for --max-silent-timeEelco Dolstra