aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-02-21triggerInterrupt: Refactor to use breakRobert Hensing
2022-02-06Don't hold interruptCallbacks lock during interrupt handlingRobert Hensing
This changes the representation of the interrupt callback list to be safe to use during interrupt handling. Holding a lock while executing arbitrary functions is something to avoid in general, because of the risk of deadlock. Such a deadlock occurs in https://github.com/NixOS/nix/issues/3294 where ~CurlDownloader tries to deregister its interrupt callback. This happens during what seems to be a triggerInterrupt() by the daemon connection's MonitorFdHup thread. This bit I can not confirm based on the stack trace though; it's based on reading the code, so no absolute certainty, but a smoking gun nonetheless.
2022-02-06Merge pull request #6040 from matthewbauer/allow-missing-override-inputEelco Dolstra
Allow missing flake.nix for --override-input target
2022-02-06Merge pull request #6047 from SuperSandro2000/nix-shell-BASHEelco Dolstra
nix-shell: set BASH variable to correct shell
2022-02-06Merge pull request #6042 from pennae/fix-repl-aEelco Dolstra
fix nix repl not overriding existing bindings in :a
2022-02-06Merge pull request #6043 from Ma27/fix-compEelco Dolstra
completions: pipe stderr to /dev/null
2022-02-05nix-shell: set BASH variable to correct shellSandro Jäckel
2022-02-04completions: pipe stderr to /dev/nullMaximilian Bosch
This fixes weird issues where e.g. nix build -L .#<tab> deletes the current line from the prompt.
2022-02-04fix nix repl not overriding existing bindings in :apennae
previously :a would override old bindings of a name with new values if the added set contained names that were already bound. in nix 2.6 this doesn't happen any more, which is potentially confusing. fixes #6041
2022-02-03Allow missing flake.nix for --override-input targetMatthew Bauer
At this point, we don’t know if the input is a flake or not. So, we should allow the user to override the input with a directory without a flake.nix. Ideally, we could figure whether the input was originally a flake or not, but that would require instantiating the whole flake. So just allow it to be missing here, and rely on checks later on to verify the input for us.
2022-02-04Make most calls to determinePos() lazyEelco Dolstra
2022-02-04Merge branch 'issue-3505' of https://github.com/kamadorueda/nixEelco Dolstra
2022-02-03Merge pull request #5456 from tomberek/bundler_drvEelco Dolstra
bundle: pass drv attrset instead of path
2022-02-03Merge branch 'master' into bundler_drvtomberek
2022-02-02Merge pull request #6036 from tweag/balsoft/and-yet-another-follows-bugfixEelco Dolstra
Flake follows: resolve all follows to absolute
2022-02-02Flake follows: resolve all follows to absoluteAlexander Bantyev
It's not possible in general to know in computeLocks, relative to which path the follows was intended to be. So, we always resolve follows to their absolute states when we encounter them (which can either be in parseFlakeInput or computeLocks' fake input population). Fixes https://github.com/NixOS/nix/issues/6013 Fixes https://github.com/NixOS/nix/issues/5609 Fixes https://github.com/NixOS/nix/issues/5697 (again)
2022-02-02Merge branch 'parser-improvements' of https://github.com/pennae/nixEelco Dolstra
2022-02-02Merge branch 'more-stringviews' of https://github.com/pennae/nixEelco Dolstra
2022-02-01Require lowdown 0.9.0Eelco Dolstra
Fixes #6021.
2022-01-31Merge pull request #6022 from thkoch2001/fix-lowdown_libsEelco Dolstra
use LOWDOWN_LIBS variable
2022-01-31Merge pull request #5990 from lincolnauster/flakes-nixconfig-docsEelco Dolstra
flakes: document nixConfig option
2022-01-30use LOWDOWN_LIBS variableThomas Koch
fixes: #5931
2022-01-30Merge pull request #6018 from dtzWill/fix/issue-6017Eelco Dolstra
canonPath: fix missing slash when resolving links
2022-01-30Merge pull request #6019 from thkoch2001/fix_spelling_mistakesEelco Dolstra
fix spelling mistakes reported by Debian's lintian tool
2022-01-30fix spelling mistakes reported by Debian's lintian toolThomas Koch
2022-01-29canonPath: fix missing slash when resolving linksWill Dietz
Fixes #6017
2022-01-28bundler: suggested doc fixesTom Bereknyei
2022-01-28Merge branch 'master' into bundler_drvtomberek
2022-01-28bundler: tests various combinations of referring to installablesTom Bereknyei
2022-01-28bundler: revert default behavior to use defaultAppTom Bereknyei
Bundlers are now responsible for correctly handling their inputs which are no longer constrained to be (Drv->Drv)->Drv->Drv, but can be of type (attrset->Drv)->attrset->Drv.
2022-01-28Remove a repeated std::move in a for loopEelco Dolstra
2022-01-27optionally return string_view from coerceToStringpennae
we'll retain the old coerceToString interface that returns a string, but callers that don't need the returned value to outlive the Value it came from can save copies by using the new interface instead. for values that weren't stringy we'll pass a new buffer argument that'll be used for storage and shouldn't be inspected.
2022-01-27Merge pull request #5951 from abathur/install_add_getconf_fallbackDomen Kožar
install-darwin: dodge bash 3.2 command bug
2022-01-27return string_views from forceString*pennae
once a string has been forced we already have dynamic storage allocated for it, so we can easily reuse that storage instead of copying.
2022-01-27convert a for more utilities to string_viewpennae
2022-01-27Merge pull request #6001 from NixOS/fix-nix-pathEelco Dolstra
Don’t require `NIX_PATH` entries to be valid paths
2022-01-27Merge pull request #6000 from NixOS/use-flakes-in-ciEelco Dolstra
Use the `nix` command (and flakes) in the CI
2022-01-27Don’t require `NIX_PATH` entries to be valid pathsregnat
It’s totally valid to have entries in `NIX_PATH` that aren’t valid paths (they can even be arbitrary urls or `channel:<channel-name>`). Fix #5998 and #5980
2022-01-26Use the `nix` command (and flakes) in the CIregnat
Apart from a slight simplification and a bit of dogfooding, this also make the cache behavior more predictable. For example `nix build .` and `nix build nix/$(git rev-parse HEAD)` will yield the exact same path, while their “intuitive” non-flake equivalents (`nix-build` and `nix-build https://github.com/nixos/nix/archives/$(git rev-parse HEAD).tar.gz`) don’t. This was a pain for example in https://github.com/NixOS/nix/pull/5059 Also, the `bar-with-logs` log format is imho nicer (even in an non-interactive context) because prefixing each log line with the name of the derivation that produced it makes it much easier to follow what’s going on.
2022-01-26Merge pull request #5997 from NixOS/test-nix-store-pingEelco Dolstra
Fix the `store ping` test
2022-01-26Merge pull request #5996 from edolstra/remove-nlohmannEelco Dolstra
Stop vendoring nlohmann_json
2022-01-26Fix the `store ping` testregnat
2022-01-26Stop vendoring nlohmann_jsonEelco Dolstra
2022-01-26Merge pull request #5995 from NixOS/test-nix-store-pingEelco Dolstra
Add some tests for `nix store ping`
2022-01-26Add some tests for `nix store ping`regnat
Always good to have :)
2022-01-26Merge pull request #5991 from edolstra/remote-nix-versionEelco Dolstra
nix store ping: Report Nix daemon version
2022-01-25fix typolincoln auster
Co-authored-by: Cole Helbling <cole.e.helbling@outlook.com>
2022-01-25nix store ping: Report Nix daemon versionEelco Dolstra
Fixes #5952.
2022-01-25flakes: document nixConfig optionlincoln auster [they/them]
Fixes #5988.
2022-01-25Merge pull request #5987 from edolstra/rust-cleanupEelco Dolstra
Remove unused Rust stuff