about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2018-02-13 Fix #1762Linus Heckemann3-1/+5
nix-store --export, nix-store --dump, and nix dump-path would previously fail silently if writing the data out failed, because a) FdSink::write ignored exceptions, and b) the commands relied on FdSink's destructor, which ignores exceptions, to flush the data out. This could cause rather opaque issues with installing nixos, because nix-store --export would happily proceed even if it couldn't write its data out (e.g. if nix-store --import on the other side of the pipe failed). This commit adds tests that expose these issues in the nix-store commands, and fixes them for all three.
2018-02-13 Merge pull request #1859 from FRidh/flattenEelco Dolstra1-3/+6
Nix stats: flatten statistics
2018-02-12 Fix hang in build-remoteEelco Dolstra3-2/+4
2018-02-12 Fix 'deadlock: trying to re-acquire self-held lock'Eelco Dolstra4-22/+24
This was caused by derivations with 'allowSubstitutes = false'. Such derivations will be built locally. However, if there is another SubstitionGoal that has the output of the first derivation in its closure, then the path will be simultaneously built and substituted. There was a check to catch this situation (via pathIsLockedByMe()), but it no longer worked reliably because substitutions are now done in another thread. (Thus the comment 'It can't happen between here and the lockPaths() call below because we're not allowing multi-threading' was no longer valid.) The fix is to handle the path already being locked in both SubstitutionGoal and DerivationGoal.
2018-02-12 toBuildables -> buildEelco Dolstra3-4/+4
2018-02-11 Nix stats: flatten statisticsFrederik Rietdijk1-3/+6
Flattens the list of statistics as suggested in https://github.com/NixOS/ofborg/issues/67. This makes it easier to work with.
2018-02-09 nix: Ensure that the user sees errors from substitutersEelco Dolstra1-3/+3
2018-02-09 getDefaultSubstituters(): Skip broken substitutersEelco Dolstra1-1/+5
Fixes #1340.
2018-02-09 Merge pull request #1848 from AmineChikhaoui/parallel-xzEelco Dolstra4-10/+30
support multi threaded xz encoder
2018-02-08 nix-env: Fix parsing of --systemEelco Dolstra1-0/+4
https://hydra.nixos.org/build/68827814
2018-02-08 Merge branch 'master' of https://github.com/NixOS/nix into parallel-xzAmineChikhaoui1-1/+1
2018-02-07 More completely fix recursive nix, unbreak testsWill Dietz1-1/+1
See: https://github.com/NixOS/nix/commit/88b5d0c8e89afefbc547b6243c5aa5a3ec8176e9#commitcomment-27406365
2018-02-07 Merge branch 'master' of https://github.com/NixOS/nix into parallel-xzAmineChikhaoui1-1/+1
2018-02-07 move the parallel-compression setting to binary-cache-store, the settingAmineChikhaoui3-4/+3
can be done now from the url e.g s3://nix-cache?parallel-compression=1 instead of nix.conf.
2018-02-07 Prevent accidental recursive NixEelco Dolstra1-1/+1
2018-02-07 make multi threaded compression configurable and use single threadedAmineChikhaoui4-20/+31
by default.
2018-02-07 Merge branch 'master' of https://github.com/NixOS/nix into parallel-xzAmineChikhaoui9-96/+134
2018-02-07 Improve filtering of ANSI escape sequences in build logsEelco Dolstra5-71/+53
All ANSI sequences except color setting are now filtered out. In particular, terminal resets (such as from NixOS VM tests) are filtered out. Also, fix the completely broken tab character handling.
2018-02-07 Merge pull request #1816 from shlevy/add-pathEelco Dolstra4-25/+81
Add path primop.
2018-02-07 set block size to 0 to let the lzma lib choose the right one, addAmineChikhaoui1-1/+6
some comments about possible improvements wrt memory usage/threading.
2018-02-06 Add path primop.Shea Levy4-25/+81
builtins.path allows specifying the name of a path (which makes paths with store-illegal names now addable), allows adding paths with flat instead of recursive hashes, allows specifying a filter (so is a generalization of filterSource), and allows specifying an expected hash (enabling safe path adding in pure mode).
2018-02-06 support multi threaded xz encoder, this might be particularly useful inAmineChikhaoui1-2/+7
the case of hydra where the overhead of single threaded encoding is more noticeable e.g most of the time spent in "Sending inputs"/"Receiving outputs" is due to compression while the actual upload to the binary cache seems to be negligible.
2018-02-06 Update the progress bar at most 20 times per secondEelco Dolstra2-14/+31
Fixes #1834.
2018-02-06 realiseContext(): Add derivation outputs to the allowed pathsEelco Dolstra1-10/+24
This makes import-from-derivation work in restricted mode again.
2018-02-06 checkURI(): Check file URIs against allowedPathsEelco Dolstra1-0/+12
This makes e.g. 'fetchGit ./.' work (assuming that ./. is an allowed path).
2018-02-05 Tweak progress bar messageEelco Dolstra1-1/+6
Say "copying" instead of "fetching" when copying from another local store. Nice for nixos-install.
2018-02-05 Allow substituters to be marked as trustedEelco Dolstra2-2/+7
This is needed by nixos-install, which uses the Nix store on the installation CD as a substituter. We don't want to disable signature checking entirely because substitutes from cache.nixos.org should still be checked. So now we can pas "local?trusted=1" to mark only the Nix store in /nix as not requiring signatures. Fixes #1819.
2018-02-05 Fix segfault using non-binary cache stores as substitutersEelco Dolstra1-1/+1
2018-02-03 Remove nix-build --hashEelco Dolstra4-25/+28
Instead, if a fixed-output derivation produces has an incorrect output hash, we now unconditionally move the outputs to the path corresponding with the actual hash and register it as valid. Thus, after correcting the hash in the Nix expression (e.g. in a fetchurl call), the fixed-output derivation doesn't have to be built again. It would still be good to have a command for reporting the actual hash of a fixed-output derivation (instead of throwing an error), but "nix-build --hash" didn't do that.
2018-02-01 Merge branch 'master' of git://github.com/catern/nixShea Levy1-0/+3
2018-02-01 nix-build: Ignore --indirectEelco Dolstra1-1/+1
Note that nix-build always creates indirect roots. Fixes #1830.
2018-02-01 Remove obsolete references to manifestsEelco Dolstra1-3/+1
Closes #323.
2018-01-31 document ability to set NIX_REMOTE=unix://path/to/socketSpencer Baugh1-0/+3
2018-01-31 Merge pull request #1801 from catern/masterEelco Dolstra2-2/+26
remote_store: register for NIX_REMOTE=unix://path
2018-01-31 Fix building without aws-sdk-cppEelco Dolstra1-4/+5
2018-01-31 Rename 1.12 -> 2.0Eelco Dolstra1-1/+1
Following discussion with Shea and Graham. It's a big enough change from the last release. Also, from a semver perspective, 2.0 makes more sense because we did remove some interfaces (like nix-pull/nix-push).
2018-01-31 Add 'nix upgrade-nix' commandEelco Dolstra3-1/+137
This command upgrades Nix to the latest stable version by installing a store path obtained from https://github.com/NixOS/nixpkgs/raw/master/nixos/modules/installer/tools/nix-fallback-paths.nix which is the same store path that the installer at https://nixos.org/nix/install.sh uses. The upgrade fails if Nix is not installed in a profile (e.g. on NixOS, or when installed outside of the Nix store).
2018-01-31 CleanupEelco Dolstra2-5/+6
2018-01-31 Merge branch 'http-binary-cache-put-upsert' of https://github.com/adelbertc/nixEelco Dolstra3-4/+38
2018-01-31 Indent properlyEelco Dolstra1-3/+3
2018-01-26 remote_store: register for NIX_REMOTE=unix://pathSpencer Baugh2-2/+26
This allows overriding the socket path so the daemon may be listening at an arbitrary Unix domain socket location. Fixes #1800
2018-01-26 HttpBinaryCacheStore: Support upsertFile with PUT.Shea Levy3-4/+38
Some servers, such as Artifactory, allow uploading with PUT and BASIC auth. This allows nix copy to work to upload binaries to those servers. Worked on together with @adelbertc
2018-01-26 Remove signed-binary-caches as the default for require-sigsEelco Dolstra1-4/+1
This was for backward compatibility. However, with security-related configuration settings, it's best not to have any confusion. Issue #495.
2018-01-24 Merge pull request #1811 from dtzWill/update/json-3.0.1Eelco Dolstra1-781/+932
nlohmann-json: 2.1.1 -> 3.0.1
2018-01-23 Fix obscure corner case in name resolution for builtin:fetchurl in sandboxed ↵Dan Peebles1-0/+17
environments
2018-01-22 nlohmann-json: 2.1.1 -> 3.0.1Will Dietz1-781/+932
2018-01-19 Don't use [[noreturn]]Eelco Dolstra1-6/+3
2018-01-19 Rewrite builtin derivation environmentEelco Dolstra1-1/+6
Also add a test. Fixes #1803. Closes #1805.
2018-01-19 Don't retry CURLE_URL_MALFORMATEelco Dolstra1-0/+1
2018-01-18 Don't define builtins.{currentSystem,currentTime} in pure modeEelco Dolstra1-6/+2
This makes it easier to provide a default, e.g. system = builtins.currentSystem or "x86_64-linux";