aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2020-12-02Sink: Use std::string_viewEelco Dolstra
2020-12-02writeFull/writeFile: Use std::string_viewEelco Dolstra
2020-12-01Merge pull request #4284 from tweag/fixed-output-depending-on-caEelco Dolstra
Allow fixed-output derivations to depend on (floating) content-addressed ones
2020-12-01shut up clang warningsregnat
- Fix some class/struct discrepancies - Explicit the overloading of `run` in the `Cmd*` classes - Ignore a warning in the generated lexer
2020-12-01replaceStrings(): Use std::string_viewEelco Dolstra
2020-12-01Macro hygieneEelco Dolstra
2020-12-01Move primeCache() to Worker::run()Eelco Dolstra
We need the missing path info to communicate the worker's remaining goals to the progress bar.
2020-12-01Lower verbosity for 'Failed to find a machine' messageEelco Dolstra
2020-12-01Macro hygieneEelco Dolstra
2020-11-27Allow fixed-output derivations to depend on (floating) content-addressed onesregnat
Fix an overlook of https://github.com/NixOS/nix/pull/4056
2020-11-26builtins.fetchGit: Fix shortRev attribute for dirty treesEelco Dolstra
2020-11-26archive: disable preallocate-contents by defaultDominique Martinet
using fallocate() to preallocate files space does more harm than good: - breaks compression on btrfs - has been called "not the right thing to do" by xfs developers (because delayed allocation that most filesystems implement leads to smarter allocation than what the filesystem needs to do if we upfront fallocate files)
2020-11-26Move to separate fileEelco Dolstra
2020-11-26Record trusted/untrusted settings in ~/.local/share/nixEelco Dolstra
2020-11-26Ask for confirmation before allowing flake Nix configuration settingsEelco Dolstra
2020-11-25fix the hash rewriting for ca-derivationsregnat
2020-11-23fetchMercurial: set HGPLAIN when invoking hgLuke Granger-Brown
Without setting HGPLAIN, the user's environment leaks into hg invocations, which means that the output may not be in the expected format. HGPLAIN is the Mercurial-recommended solution for this in that it's intended for uses by scripts and programs which are looking to parse Mercurial's output in a consistent manner.
2020-11-23Removed reference check from bundler commandWil Taylor
2020-11-21Added switchWil Taylor
2020-11-19AttrCursor::getStringWithContext(): Force re-evaluation if the cached ↵Eelco Dolstra
context is not valid Fixes #4236.
2020-11-19Fix assertion failure in LockFile::LockFile()Eelco Dolstra
Fixes #4241.
2020-11-19Make drv hash modulo memo table thread-safeJohn Ericson
Let's get one step closer to the daemon not needing to fork.
2020-11-17Merge pull request #4189 from edolstra/flake-configEelco Dolstra
Allow nix.conf options to be set in flake.nix
2020-11-17Merge pull request #4182 from mkenigs/fix-1930Eelco Dolstra
Print built derivations as json for build
2020-11-17Merge pull request #4180 from Ma27/ssh-ng-substituteEelco Dolstra
Allow substituting paths when building remotely using `ssh-ng://`
2020-11-17CleanupEelco Dolstra
2020-11-17Fix deadlock in IFD through the daemonEelco Dolstra
Fixes #4235.
2020-11-17Make the sql debug statements more usefulregnat
Print the expanded sql query (with the variables bound to their value) rather than the original one in case of error
2020-11-16filterANSIEscapes(): Handle UTF-8 charactersEelco Dolstra
2020-11-16Merge pull request #4262 from jbaum98/masterEelco Dolstra
Fix deadlock in nix-store when max-connections=1
2020-11-16Fix deadlock in nix-store when max-connections=1Jake Waksbaum
This fixes a bug I encountered where `nix-store -qR` will deadlock when the `--include-outputs` flag is passed and `max-connections=1`. The deadlock occurs because `RemoteStore::queryDerivationOutputs` takes the only connection from the connection pool and uses it to check the daemon version. If the version is new enough, it calls `Store::queryDerivationOutputs`, which eventually calls `RemoteStore::queryPartialDerivationOutputMap`, where we take another connection from the connection pool to check the version again. Because we still haven't released the connection from the caller, this waits for a connection to be available, causing a deadlock. This diff solves the issue by using `getProtocol` to check the protocol version in the caller `RemoteStore::queryDerivationOutputs`, which immediately frees the connection back to the pool before returning the protocol version. That way we've already freed the connection by the time we call `RemoteStore::queryPartialDerivationOutputMap`.
2020-11-13nix-build: Fix #4197 output order regressionRobert Hensing
2020-11-12Fix default nix-pathChristian Höppner
The default nix-path values for nixpkgs and root channels were incorrect.
2020-11-11Print built derivations as json for buildMatthew Kenigsberg
Add --json option to nix build to allow machine readable output on stdout with all built derivations Fixes #1930
2020-11-10Fix use of dirty Git/Mercurial inputs with chroot storesEelco Dolstra
Fixes: $ nix build --store /tmp/nix /home/eelco/Dev/patchelf#hydraJobs.build.x86_64-linux warning: Git tree '/home/eelco/Dev/patchelf' is dirty error: --- RestrictedPathError ------------------------------------------------------------------------------------------- nix access to path '/tmp/nix/nix/store/xmkvfmffk7xfnazykb5kx999aika8an4-source/flake.nix' is forbidden in restricted mode (use '--show-trace' to show detailed location information)
2020-11-10Merge pull request #4242 from wizeman/fix-stack-overflowEelco Dolstra
Fix stack overflow introduced in #4206
2020-11-10Merge pull request #4233 from Kha/masterEelco Dolstra
nix develop: Preserve stdin with `-c`
2020-11-10Fix stack overflow introduced in #4206Ricardo M. Correia
2020-11-09nix develop: Preserve stdin with `-c`Sebastian Ullrich
2020-11-09Fix appending to Setting<StringSet>Eelco Dolstra
Fixes: warning: unknown setting 'extra-sandbox-paths'
2020-11-05Allow substituting paths when building remotely using `ssh-ng://`Maximilian Bosch
Until now, it was not possible to substitute missing paths from e.g. `https://cache.nixos.org` on a remote server when building on it using the new `ssh-ng` protocol. This is because every store implementation except legacy `ssh://` ignores the substitution flag passed to `Store::queryValidPaths` while the `legacy-ssh-store` substitutes the remote store using `cmdQueryValidPaths` when the remote store is opened with `nix-store --serve`. This patch slightly modifies the daemon protocol to allow passing an integer value suggesting whether to substitute missing paths during `wopQueryValidPaths`. To implement this on the daemon-side, the substitution logic from `nix-store --serve` has been moved into a protected method named `Store::substitutePaths` which gets currently called from `LocalStore::queryValidPaths` and `Store::queryValidPaths` if `maybeSubstitute` is `true`. Fixes #2770
2020-11-05Merge pull request #4206 from hercules-ci/fix-coroutine-gcEelco Dolstra
Fix memory corruption caused by GC-invisible coroutine stacks
2020-11-03Fix error message 'assertion failed at'Eelco Dolstra
2020-11-03LocalStore: Get rid of recursive_mutexEelco Dolstra
2020-11-03Add FIXMEEelco Dolstra
2020-11-02nix repl: Fix handling of multi-line expressionsEelco Dolstra
2020-11-02Don't use readDerivation() in addValidPath()Eelco Dolstra
readDerivation() requires a valid path. Fixes #4210.
2020-11-02Merge pull request #4207 from hercules-ci/fix-RemoteStore-filterSource-deadlockEelco Dolstra
Fix RemoteStore pool deadlock in filterSource etc
2020-11-02Don't send eval-related settings to the daemonEelco Dolstra
2020-10-31Restore RestrictedStore.addToStoreFromDump implementationRobert Hensing
It was accidentally removed in commit ca30abb3fb36440e5a13161c39647189036fc18f