aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-10-21Remove addPathToAccessorEelco Dolstra
2016-10-21BinaryCacheStore: Optionally write a NAR listingEelco Dolstra
The store parameter "write-nar-listing=1" will cause BinaryCacheStore to write a file ‘<store-hash>.ls.xz’ for each ‘<store-hash>.narinfo’ added to the binary cache. This file contains an XZ-compressed JSON file describing the contents of the NAR, excluding the contents of regular files. E.g. { "version": 1, "root": { "type": "directory", "entries": { "lib": { "type": "directory", "entries": { "Mcrt1.o": { "type": "regular", "size": 1288 }, "Scrt1.o": { "type": "regular", "size": 3920 }, } } } ... } } (The actual file has no indentation.) This is intended to speed up the NixOS channels programs index generator [1], since fetching gazillions of large NARs from cache.nixos.org is currently a bottleneck for updating the regular (non-small) channel. [1] https://github.com/NixOS/nixos-channel-scripts/blob/master/generate-programs-index.cc
2016-10-19Merge branch 'priorityqueue' of https://github.com/groxxda/nixEelco Dolstra
2016-10-19Merge branch 'regex' of https://github.com/groxxda/nixEelco Dolstra
2016-10-19fixup! replace own regex class with std::regexAlexander Ried
2016-10-19Fix Darwin buildEelco Dolstra
Done slightly differently from https://github.com/NixOS/nix/pull/1093.
2016-10-19Handle $TMPDIR ending with a slashEelco Dolstra
This caused the gc test to fail on Darwin.
2016-10-19Shut up clang warningEelco Dolstra
2016-10-19Fix uninitialised variableEelco Dolstra
2016-10-19Merge pull request #1096 from groxxda/gitignoreEelco Dolstra
.gitignore: catch up with perl -> c conversion
2016-10-18replace own regex class with std::regexAlexander Ried
2016-10-18downloader: use priority_queueAlexander Ried
2016-10-17.gitignore: catch up with perl -> c conversionAlexander Ried
2016-10-14Fix /dev/ptmx in sandboxesEelco Dolstra
This was broken since ff0c0b645cc1448959126185bb2fafe41cf0bddf. Since I can't figure out how to mount a devpts instance in the sandbox, let's just bind-mount the host devpts.
2016-10-14CURL_AT_LEAST_VERSION -> LIBCURL_VERSION_NUMEelco Dolstra
http://hydra.nixos.org/build/42025230
2016-10-13Fix HTTP/2 supportEelco Dolstra
Commit 86e8c67efc33cf756500a1dec7fd6313658f2664 broke it, because CURL_* are not actually #defines.
2016-10-13SSL_CERT_FILE -> NIX_SSL_CERT_FILEEelco Dolstra
This prevents collisions with the "native" OpenSSL, in particular on OS X. Fixes #921.
2016-10-12Shut up some warningsEelco Dolstra
2016-10-12Add some functions needed by hydraEelco Dolstra
2016-10-07querySubstitutablePaths(): Don't query paths for which we already have a ↵Eelco Dolstra
substituter
2016-10-07LocalStore::querySubstitutablePaths(): Implement using queryValidPaths()Eelco Dolstra
2016-10-07Store::queryValidPaths(): Use async queryPathInfo()Eelco Dolstra
This allows the binary cache substituter to pipeline requests.
2016-10-07Implement generic Store::queryValidPaths()Eelco Dolstra
2016-10-07Add copyClosure utility function for HydraEelco Dolstra
2016-10-07importPaths(): Fix accessor support for HydraEelco Dolstra
2016-10-06toJSON(): Support some more typesEelco Dolstra
2016-10-06Fix getS3Stats()Eelco Dolstra
2016-10-06Merge pull request #998 from veprbl/rx_chmod_fixEelco Dolstra
override rx directory permissions in deletePath()
2016-10-05Use std::random_deviceEelco Dolstra
2016-10-04Fix build with older versions of libcurlEelco Dolstra
2016-09-22Handle the case where signed-binary-caches consists of whitespaceEelco Dolstra
2016-09-22<nix/fetchurl.nix>: Support nix-prefetch-urlEelco Dolstra
2016-09-21Add sandbox-dev-shm-size optionEelco Dolstra
Fixes #1069.
2016-09-21nix-build, nix-shell: Don't print error message if nix-store/nix-instantiate ↵Eelco Dolstra
fails
2016-09-21printMsg(lvlError, ...) -> printError(...) etc.Eelco Dolstra
2016-09-21Some notational convenience for formatting stringsEelco Dolstra
We can now write throw Error("file '%s' not found", path); instead of throw Error(format("file '%s' not found") % path); and similarly printError("file '%s' not found", path); instead of printMsg(lvlError, format("file '%s' not found") % path);
2016-09-21Merge pull request #1068 from zimbatm/doc-set-toStringEelco Dolstra
Document the { __toString } interface
2016-09-21Document the { __toString } interfacezimbatm
2016-09-20Merge pull request #1066 from adevress/disable-docEelco Dolstra
Add a new option to disable documentation generation at configure time
2016-09-20TweakEelco Dolstra
2016-09-20Improve robustnessEelco Dolstra
2016-09-20Fix "Promise already satisfied" errorEelco Dolstra
2016-09-20Add a new option to disable documentation generation at configure timeAdrien Devresse
2016-09-20nix-shell: Fix $PATH handling in the impure caseEelco Dolstra
We were passing "p=$PATH" rather than "p=$PATH;", resulting in some invalid shell code. Also, construct a separate environment for the child rather than overwriting the parent's.
2016-09-20nix-shell: Restore CPU affinityEelco Dolstra
Otherwise the shell and its children will be bound to one CPU core...
2016-09-16armv5tel can be built by armv6l and armv7l (#1063)Eric Litak
2016-09-16Make computeFSClosure() single-threaded againEelco Dolstra
The fact that queryPathInfo() is synchronous meant that we needed a thread for every concurrent binary cache lookup, even though they end up being handled by the same download thread. Requiring hundreds of threads is not a good idea. So now there is an asynchronous version of queryPathInfo() that takes a callback function to process the result. Similarly, enqueueDownload() now takes a callback rather than returning a future. Thus, a command like nix path-info --store https://cache.nixos.org/ -r /nix/store/slljrzwmpygy1daay14kjszsr9xix063-nixos-16.09beta231.dccf8c5 that returns 4941 paths now takes 1.87s using only 2 threads (the main thread and the downloader thread). (This is with a prewarmed CloudFront.)
2016-09-16printMsg(): Don't check for interruptsEelco Dolstra
Having the logger function potentially throw exceptions is Heisenbuggy.
2016-09-14nix path-info: Add some more examplesEelco Dolstra
2016-09-14Revive binary-caches-parallel-connectionsEelco Dolstra
It's a slight misnomer now because it actually limits *all* downloads, not just binary cache lookups. Also add a "enable-http2" option to allow disabling use of HTTP/2 (enabled by default).