aboutsummaryrefslogtreecommitdiff
path: root/src/libstore
AgeCommit message (Collapse)Author
2019-06-25nix-channel: Don't fetch binary-cache-urlEelco Dolstra
This has been ignored since the Perl->C++ rewrite.
2019-06-24Fix 32-bit overflow with --no-netEelco Dolstra
--no-net causes tarballTtl to be set to the largest 32-bit integer, which causes comparison like 'time + tarballTtl < other_time' to fail on 32-bit systems. So cast them to 64-bit first. https://hydra.nixos.org/build/95076624 (cherry picked from commit 29ccb2e9697ee2184012dd13854e487928ae4441)
2019-06-24Refactor downloadCached() interfaceEelco Dolstra
(cherry picked from commit df3f5a78d5ab0a1f2dc9d288b271b38a9b8b33b5)
2019-06-24Add '--no-net' convenience flagEelco Dolstra
This flag * Disables substituters. * Sets the tarball-ttl to infinity (ensuring e.g. that the flake registry and any downloaded flakes are considered current). * Disables retrying downloads and sets the connection timeout to the minimum. (So it doesn't completely disable downloads at the moment.) (cherry picked from commit 8ea842260b4fd93315d35c5ba94b1ff99ab391d8)
2019-06-24Fix 'error 9 while decompressing xz file'Eelco Dolstra
Once we've started writing data to a Sink, we can't restart a download request, because then we end up writing duplicate data to the Sink. Therefore we shouldn't handle retries in Downloader but at a higher level (in particular, in copyStorePath()). Fixes #2952. (cherry picked from commit a67cf5a3585c41dd9f219a2c7aa9cf67fa69520b)
2019-06-24Downloader: Propagate exceptions from decompressionSink->finish()Eelco Dolstra
(cherry picked from commit 15fa70cd1b853f5e62662b99ccb9ef3da6cfadff)
2019-06-24CachedDownloadResult: Include store pathEelco Dolstra
Also, make fetchGit and fetchMercurial update allowedPaths properly. (Maybe the evaluator, rather than the caller of the evaluator, should apply toRealPath(), but that's a bigger change.) (cherry picked from commit 5c34d665386f4053d666b0899ecca0639e500fbd)
2019-06-24downloadCached: Return ETagEelco Dolstra
(cherry picked from commit 529add316c5356a8060c35f987643b7bf5c796dc)
2019-06-17Another attempt at getting pseudoterminals to work on macOSEelco Dolstra
2019-06-16Hopefully fix macOS testsEelco Dolstra
2019-06-16Set $TERMEelco Dolstra
2019-06-16Run builds in a pseudo-terminalEelco Dolstra
This allows many programs (e.g. gcc, clang, cmake) to print colorized log output (assuming $TERM is set to a value like "xterm"). There are other ways to get colors, in particular setting CLICOLOR_FORCE, but they're less widely supported and can break programs that parse tool output.
2019-06-01Fix segfault in builtin fetchurl with hashed mirrors + SRI hashesEelco Dolstra
2019-05-13Merge pull request #2802 from LnL7/fix-needs-hashrewriteEelco Dolstra
build: move needsHashRewrite initialization to startBuilder
2019-05-12build: make needsHashRewrite a methodDaiderd Jordan
2019-05-12handleDiffHook: stop passing allowVforkGraham Christensen
2019-05-12runProgram: support gid, uid, chdirGraham Christensen
2019-05-12chdir, setgroupsGraham Christensen
2019-05-12diff hook: execute as the build user, and pass the temp dirGraham Christensen
2019-05-12build: run diff-hook under --check and document diff-hookGraham Christensen
2019-05-12build: move needsHashRewrite initialization to startBuilderDaiderd Jordan
The value of useChroot is not set yet in the constructor, resulting in hash rewriting being enabled in certain cases where it should not be. Fixes #2801
2019-05-08Merge pull request #2790 from samueldr/fix/minor-comment-NIX_ROOT_FINDEREelco Dolstra
findRootsNoTemp: fixes comment about findRuntimeRoots
2019-05-03Fix "Bad system call" running i686-linux binaries on x86_64-linuxEelco Dolstra
To determine which seccomp filters to install, we were incorrectly using settings.thisSystem, which doesn't denote the actual system when --system is used. Fixes #2791.
2019-04-30findRootsNoTemp: fixes comment about findRuntimeRootsSamuel Dionne-Riel
The NIX_ROOT_FINDER environment variable was removed in 3c46fe62b833a4e66845665edc99555022d3d98c when porting from perl to C.
2019-04-17build: only skip hash rewriting for sandboxing on linuxDaiderd Jordan
The sandbox on darwin, and possibly other future platforms, doesn't have enough isolation to redirect outputs without hash rewriting.
2019-04-01primeCache(): Barf if builds are needed but not allowedEelco Dolstra
Fixes #2753.
2019-04-01getMachines(): Cache resultEelco Dolstra
2019-03-25store-api.hh: add missing include for unordered_mapWill Dietz
2019-03-15Add a 5 seconds of timeouts to connect to S3.Chaker Benhamed
The default is 1000ms, but we can hit it a lot of we don't have direct link to AWS (e.g. using VPN).
2019-03-14pkg-config files: Use c++17Eelco Dolstra
2019-03-14experimental/optional -> optionalEelco Dolstra
2019-03-14findRoots(): Add 'censor' parameterEelco Dolstra
This is less brittle than filtering paths after the fact in nix-daemon.
2019-03-14findRuntimeRoots: Simplify/fix handling of /proc filesEelco Dolstra
Scanning of /proc/<pid>/{exe,cwd} was broken because '{memory:' was prepended twice. Also, get rid of the whole '{memory:...}' thing because it's unnecessary, we can just list the file in /proc directly.
2019-03-10Unify internal findRootsXxx() apiGuillaume Maudoux
2019-03-10Make roots a map of store paths to pinning linksGuillaume Maudoux
This new structure makes more sense as there may be many sources rooting the same store path. Many profiles can reference the same path but this is even more true with /proc/<pid>/maps where distinct pids can and often do map the same store path. This implementation is also more efficient as the `Roots` map contains only one entry per rooted store path.
2019-03-10Obfuscate memory roots for non-root usersGuillaume Maudoux
2019-03-10detail memory rootsGuillaume Maudoux
2019-02-26fix indentationDzmitry Zaitsau
2019-02-25Apply param values on S3Helper initializationDzmitry Zaitsau
2019-02-25Extend S3 URL parsing with parameters extractionDzmitry Zaitsau
2019-02-25Extract and expose splitUriAndParams functionDzmitry Zaitsau
which splits a URL into localtor and parameter parts
2019-02-05Revert "Restore parent mount namespace before executing a child process"Eelco Dolstra
This reverts commit a0ef21262f4d5652bfb65cfacaec01d89c475a93. This doesn't work in 'nix run' and nix-shell because setns() fails in multithreaded programs, and Boehm GC mark threads are uncancellable. Fixes #2646.
2019-01-18unsupported(): Show the name of the unsupported operationEelco Dolstra
2019-01-05Remove mentions of `libformat`, it no longer existsJohn Ericson
2018-12-12libstore: improve hash mismatch error messageszimbatm
Use the same output ordering and format everywhere. This is such a common issue that we trade the single-line error message for more readability. Old message: ``` fixed-output derivation produced path '/nix/store/d4nw9x2sy9q3r32f3g5l5h1k833c01vq-example.com' with sha256 hash '08y4734bm2zahw75b16bcmcg587vvyvh0n11gwiyir70divwp1rm' instead of the expected hash '1xzwnipjd54wl8g93vpw6hxnpmdabq0wqywriiwmh7x8k0lvpq5m' ``` New message: ``` hash mismatch in fixed-output derivation '/nix/store/d4nw9x2sy9q3r32f3g5l5h1k833c01vq-example.com': wanted: sha256:1xzwnipjd54wl8g93vpw6hxnpmdabq0wqywriiwmh7x8k0lvpq5m got: sha256:08y4734bm2zahw75b16bcmcg587vvyvh0n11gwiyir70divwp1rm ```
2018-12-12Fix assertion failure in NarInfoDiskCacheEelco Dolstra
https://hydra.nixos.org/build/85827920
2018-12-12nar-info-disk-cache: include ca in the cache entriesDaiderd Jordan
Without this information the content addressable state and hashes are lost after the first request, this causes signatures to be required for everything even tho the path could be verified without signing.
2018-12-07s3: make scheme configurableDaiderd Jordan
This enables using for http for S3 request for debugging or implementations that don't have https configured. This is not a problem for binary caches since they should not contain sensitive information. Both package signatures and AWS auth already protect against tampering.
2018-11-20Merge pull request #2216 from dtzWill/fix/curl-760-timeoutEelco Dolstra
download: if there are active requests, never sleep for 10s
2018-11-15Fix 'Read-only file system' when building a derivationEelco Dolstra