about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2019-04-17 build: only skip hash rewriting for sandboxing on linuxDaiderd Jordan1-2/+18
The sandbox on darwin, and possibly other future platforms, doesn't have enough isolation to redirect outputs without hash rewriting.
2019-04-11 Add environment variable NIX_SHOW_SYMBOLS for dumping the symbol tableEelco Dolstra2-0/+13
2019-04-01 primeCache(): Barf if builds are needed but not allowedEelco Dolstra1-0/+6
Fixes #2753.
2019-04-01 getMachines(): Cache resultEelco Dolstra1-4/+5
2019-03-27 Fix Bison 3.3 warningEelco Dolstra1-1/+1
2019-03-25 Merge pull request #1828 from zimbatm/isPathEelco Dolstra1-0/+7
Add isPath primop
2019-03-25 store-api.hh: add missing include for unordered_mapWill Dietz1-0/+1
2019-03-24 Add isPath primopzimbatm1-0/+7
this is added for completeness' sake since all the other possible `builtins.typeOf` results have a corresponding `builtins.is<Type>`
2019-03-21 eval: improve type description for primops and applied primopsLinus Heckemann1-2/+14
This can make type errors a little easier to understand.
2019-03-15 Add a 5 seconds of timeouts to connect to S3.Chaker Benhamed1-0/+1
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-14 pkg-config files: Use c++17Eelco Dolstra3-3/+3
2019-03-14 experimental/optional -> optionalEelco Dolstra14-26/+26
2019-03-14 nix-store --gc --print-roots: Sort outputEelco Dolstra1-1/+5
2019-03-14 findRoots(): Don't censor for trusted usersEelco Dolstra1-1/+1
They're pretty much root anyway.
2019-03-14 findRoots(): Add 'censor' parameterEelco Dolstra7-53/+40
This is less brittle than filtering paths after the fact in nix-daemon.
2019-03-14 findRuntimeRoots: Simplify/fix handling of /proc filesEelco Dolstra2-15/+14
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-10 Fix warning about unused variableGuillaume Maudoux1-2/+5
2019-03-10 Unify internal findRootsXxx() apiGuillaume Maudoux2-24/+15
2019-03-10 unify naming of roots as links & targetsGuillaume Maudoux1-6/+6
2019-03-10 Also obfuscate the number of memory rootsGuillaume Maudoux1-2/+16
2019-03-10 Also print rooted path in `nix-store -q --roots`Guillaume Maudoux1-1/+1
2019-03-10 fixup! Make roots a map of store paths to pinning linksGuillaume Maudoux1-3/+3
2019-03-10 Make roots a map of store paths to pinning linksGuillaume Maudoux5-35/+39
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-10 Obfuscate memory roots for non-root usersGuillaume Maudoux2-9/+16
2019-03-10 detail memory rootsGuillaume Maudoux2-31/+32
2019-03-06 canBuildLocally: check for featuresvolth1-3/+10
It could happen that the local builder match the system but lacks some features. Now it results a failure. The fix gracefully excludes the local builder from the set of available builders for derivation which requires the feature, so the derivation is built on remote builders only (as though it has incompatible system, like ```aarch64-linux``` when local is x86)
2019-03-01 archive.cc: ignore more posix_fallocate "not supported" error codesWill Dietz1-1/+1
Fixes w/musl.
2019-02-26 fix indentationDzmitry Zaitsau1-2/+2
2019-02-25 Apply param values on S3Helper initializationDzmitry Zaitsau1-1/+8
2019-02-25 Extend S3 URL parsing with parameters extractionDzmitry Zaitsau1-5/+17
2019-02-25 Extract and expose splitUriAndParams functionDzmitry Zaitsau2-4/+16
which splits a URL into localtor and parameter parts
2019-02-14 Merge pull request #2579 from catern/dumpdbEelco Dolstra1-5/+10
nix-store: make --dump-db take a list of paths to dump
2019-02-12 Merge pull request #2628 from shlevy/context-introspectionEelco Dolstra3-54/+192
Context introspection
2019-02-05 Revert "Restore parent mount namespace before executing a child process"Eelco Dolstra9-52/+4
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-31 Add builtins.appendContext.Shea Levy1-2/+57
A partner of builtins.getContext, useful for the same reasons.
2019-01-23 nix-store: make --dump-db take a list of paths to dumpSpencer Baugh1-5/+10
Inside a derivation, exportReferencesGraph already provides a way to dump the Nix database for a specific closure. On the command line, --dump-db gave us the same information, but only for the entire Nix database at once. With this change, one can now pass a list of paths to --dump-db to get the Nix database dumped for just those paths. (The user is responsible for ensuring this is a closure, like for --export). Among other things, this is useful for deploying a closure to a new host without using --import/--export; one can use tar to transfer the store paths, and --dump-db/--load-db to transfer the validity information. This is useful if the new host doesn't actually have Nix yet, and the closure that is being deployed itself contains Nix.
2019-01-18 unsupported(): Show the name of the unsupported operationEelco Dolstra4-76/+31
2019-01-14 Add builtins.getContext.Shea Levy3-38/+135
This can be very helpful when debugging, as well as enabling complex black magic like surgically removing a single dependency from a string's context.
2019-01-13 Treat plain derivation paths in context as normal paths.Shea Levy1-17/+3
Previously, plain derivation paths in the string context (e.g. those that arose from builtins.storePath on a drv file, not those that arose from accessing .drvPath of a derivation) were treated somewhat like derivaiton paths derived from .drvPath, except their dependencies weren't recursively added to the input set. With this change, such plain derivation paths are simply treated as paths and added to the source inputs set accordingly, simplifying context handling code and removing the inconsistency. If drvPath-like behavior is desired, the .drv file can be imported and then .drvPath can be accessed. This is a backwards-incompatibility, but storePath is never used on drv files within nixpkgs and almost never used elsewhere.
2019-01-10 Merge pull request #2608 from dtzWill/fix/issue-2546Eelco Dolstra1-0/+1
EvalState::resetFileCache: clear parse cache as well as eval cache
2019-01-10 Merge pull request #2617 from veprbl/pr/V547_nix_repl.ccEelco Dolstra1-18/+1
remove some dead code in nix/repl.cc
2019-01-07 Merge pull request #2601 from dtzWill/update/json-3.5.0Eelco Dolstra1-2649/+8181
Update nlohmann-json 3.0.1 -> 3.5.0
2019-01-05 Remove mentions of `libformat`, it no longer existsJohn Ericson6-7/+5
2019-01-05 brotli is only used as a library nowJohn Ericson1-2/+0
2018-12-31 EvalState::resetFileCache: clear parse cache as well as eval cacheWill Dietz1-0/+1
Fixes #2546. (at least the basic reproduction I've been testing)
2018-12-25 remove some dead code in nix/repl.ccDmitry Kalinkin1-18/+1
Fixes a static analyzer warning: Expression 'isDrv' is always false. Fixes: 3beb6f6e7 ('Show derivations more concisely')
2018-12-21 nlohmann-json: 3.4.0 -> 3.5.0Will Dietz1-129/+261
https://github.com/nlohmann/json/releases/tag/v3.5.0
2018-12-21 nlohmann: 3.0.1 -> 3.4.0Will Dietz1-2634/+8034
``` $ curl -L "https://github.com/nlohmann/json/releases/download/v3.4.0/json.hpp" -o src/nlohmann/json.hpp ```
2018-12-15 nix-store: remove debugging printWill Dietz1-3/+0
2018-12-13 Support SRI hashesEelco Dolstra5-32/+45
SRI hashes (https://www.w3.org/TR/SRI/) combine the hash algorithm and a base-64 hash. This allows more concise and standard hash specifications. For example, instead of import <nix/fetchurl.nl> { url = https://nixos.org/releases/nix/nix-2.1.3/nix-2.1.3.tar.xz; sha256 = "5d22dad058d5c800d65a115f919da22938c50dd6ba98c5e3a183172d149840a4"; }; you can write import <nix/fetchurl.nl> { url = https://nixos.org/releases/nix/nix-2.1.3/nix-2.1.3.tar.xz; hash = "sha256-XSLa0FjVyADWWhFfkZ2iKTjFDda6mMXjoYMXLRSYQKQ="; }; In fixed-output derivations, the outputHashAlgo is no longer mandatory if outputHash specifies the hash (either as an SRI or in the old "<type>:<hash>" format). 'nix hash-{file,path}' now print hashes in SRI format by default. I also reverted them to use SHA-256 by default because that's what we're using most of the time in Nixpkgs. Suggested by @zimbatm.