aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-01-10Parse string context elements properlyJohn Ericson
Prior to this change, we had a bunch of ad-hoc string manipulation code scattered around. This made it hard to figure out what data model for string contexts is. Now, we still store string contexts most of the time as encoded strings --- I was wary of the performance implications of changing that --- but whenever we parse them we do so only through the `NixStringContextElem::parse` method, which handles all cases. This creates a data type that is very similar to `DerivedPath` but: - Represents the funky `=<drvpath>` case as properly distinct from the others. - Only encodes a single output, no wildcards and no set, for the "built" case. (I would like to deprecate `=<path>`, after which we are in spitting distance of `DerivedPath` and could maybe get away with fewer types, but that is another topic for another day.)
2023-01-10Make clear that `StorePathWithOutputs` is a deprecated typeJohn Ericson
- Add a comment - Put `OutputsSpec` in a different header (First part of #6815) - Make a few stray uses of it in new code use `DerivedPath` instead.
2023-01-10Merge pull request #7484 from edolstra/fix-7417Eelco Dolstra
InstallableFlake::toDerivedPaths(): Support paths and store paths
2023-01-10Merge pull request #7547 from alxthm/fish-support-older-versionsEelco Dolstra
Fix Nix installation on older versions of fish
2023-01-10Add a FIXMEEelco Dolstra
2023-01-10Clean up toDerivedPaths() logicEelco Dolstra
2023-01-10Apply suggestions from code reviewEelco Dolstra
Co-authored-by: Théophane Hufschmitt <7226587+thufschmitt@users.noreply.github.com>
2023-01-10Show string in error messageEelco Dolstra
2023-01-10ExtraInfo -> ExtraPathInfoEelco Dolstra
2023-01-10Merge remote-tracking branch 'origin/master' into fix-7417Eelco Dolstra
2023-01-10Merge pull request #7570 from lheckemann/fix-testsEelco Dolstra
tests: fix for nixpkgs 22.11
2023-01-09Add a pointer from "realising" to `nix log`. (#4876)Jeremy Fleischman
2023-01-08tests: fix for nixpkgs 22.11Linus Heckemann
runCommand now uses stdenvNoCC by default, so that needs to be included instead of the regular stdenv.
2023-01-07Merge pull request #7568 from willbush/patch-1Théophane Hufschmitt
Fix typo in example for builtin function map
2023-01-06Fix typo in example for builtin function mapWill Bush
2023-01-06Merge pull request #7498 from fricklerhandwerk/path+stringEelco Dolstra
refactor documentation of operators, document `+` for strings and paths
2023-01-06Merge pull request #7307 from hercules-ci/derivation-goal-improve-commentThéophane Hufschmitt
libstore/derivation-goal: Elaborate a TODO for performance concern
2023-01-06Merge pull request #7557 from NixOS/fix-7529Eelco Dolstra
On macOS with auto-uid-allocation and sandboxing, use the correct gid
2023-01-05Merge pull request #7559 from ncfavier/no-check-modulesThéophane Hufschmitt
Don't check NixOS modules
2023-01-05Don't check NixOS modulesNaïm Favier
NixOS modules can be paths. Rather than dig further down into the layer violation, don't check anything specific to NixOS modules.
2023-01-05Merge pull request #7500 from akhildevelops/patch-1Eelco Dolstra
Updated docs to delete build users and group
2023-01-05Merge pull request #7542 from edolstra/gc-deadlockEelco Dolstra
Fix deadlock between auto-GC and addTempRoot()
2023-01-05Merge pull request #7539 from tweag/fix-nix-why-depends--derivationEelco Dolstra
Fix `nix why-depends --derivation`
2023-01-05bring back table, extract annotationsValentin Gagarin
this makes the table less unwieldy, and leaves enough space for extensive explanations.
2023-01-05add links to documentation for data typesValentin Gagarin
2023-01-05use more self-explanatory placeholder namesValentin Gagarin
2023-01-05add semantics of overloaded `+` operatorValentin Gagarin
2023-01-05reword descriptions of operatorsValentin Gagarin
add notes on semantics where appropriate
2023-01-05convert table to subsectionsValentin Gagarin
this form is much easier to maintain (also with minimal diffs), and allows for more details on each operator. this change a purely mechanical transformation, without changing any contents.
2023-01-05reorder columnsValentin Gagarin
this is for a simpler transformation into a series of subsections
2023-01-05On macOS with auto-uid-allocation and sandboxing, use the correct gidEelco Dolstra
macOS doesn't have user namespacing, so the gid of the builder needs to be nixbld. The logic got "has sandboxing enabled" confused with "has user namespaces". Fixes #7529.
2023-01-05Merge pull request #7551 from NixOS/macos-sandbox-filesEelco Dolstra
Include macOS sandbox files in the Nix binary
2023-01-04Move macOS sandbox files to sr/libstore/buildEelco Dolstra
2023-01-04Include macOS sandbox files in the Nix binaryEelco Dolstra
This basically reverts 6e5165b77370c76bfa39d4b55e9f83673f3bd466. It fixes errors like sandbox-exec: <internal init prelude>:292:47: unable to open sandbox-minimal.sb: not found when trying to run a development Nix installed in a user's home directory. Also, we're trying to minimize the number of installed files to make it possible to deploy Nix as a single statically-linked binary.
2023-01-03Fix Nix installation on older versions of fishAlexandre Thomas
The `fish_add_path` function is only available for fish 3.2.0 or newer, and not on older versions. This commit adds an alternative way to update the PATH when `fish_add_path` does not exist.
2023-01-03nix --version: Print the data directoryEelco Dolstra
2023-01-03Fix deadlock between auto-GC and addTempRoot()Eelco Dolstra
Previously addTempRoot() acquired the LocalStore state lock and waited for the garbage collector to reply. If the garbage collector is in the same process (as it the case with auto-GC), this would deadlock as soon as the garbage collector thread needs the LocalStore state lock. So now addTempRoot() uses separate Syncs for the state that it needs. As long at the auto-GC thread doesn't call addTempRoot() (which it shouldn't), it shouldn't deadlock. Fixes #3224.
2023-01-03Move creation of the temp roots file into its own functionEelco Dolstra
This also moves the file handle into its own Sync object so we're not holding the _state while acquiring the file lock. There was no real deadlock risk here since locking a newly created file cannot block, but it's still a bit nicer.
2023-01-03Merge pull request #7516 from ↵Eelco Dolstra
NixOS/dependabot/github_actions/zeebe-io/backport-action-1.0.1 Bump zeebe-io/backport-action from 0.0.9 to 1.0.1
2023-01-03Merge pull request #7497 from rski/masterEelco Dolstra
src/libstore: Print the reason opening the DB failed
2023-01-02Merge pull request #6204 from layus/coerce-stringEelco Dolstra
Add context to better locate runtime coercions
2023-01-02Put the --show-trace hint in the logical placeEelco Dolstra
2023-01-02Don't use state.positions[noPos]Eelco Dolstra
This caused traces 'at «none»:0: (source not available)'.
2023-01-02Merge remote-tracking branch 'origin/master' into coerce-stringEelco Dolstra
2023-01-02Fix why-depends for CA derivations (again)Théophane Hufschmitt
This has the same goal as b13fd4c58e81b2b2b0d72caa5ce80de861622610,but achieves it in a different way in order to not break `nix why-depends --derivation`.
2023-01-02Increase the test coverage of `why-depends`Théophane Hufschmitt
- Test with `--derivation` - Actually test with ca-derivations (was suuposedly done, but not activated because of a missing line in `local.mk`)
2023-01-02Revert "Fix why-depends for CA derivations"Théophane Hufschmitt
This reverts commit b13fd4c58e81b2b2b0d72caa5ce80de861622610.
2023-01-02Merge pull request #5941 from hercules-ci/optimize-intersectAttrsThéophane Hufschmitt
Optimize intersectAttrs performance
2023-01-02Merge pull request #7426 from tianyuanhao/masterThéophane Hufschmitt
Avoid poly_user_note_set twice
2023-01-02Merge pull request #7278 from fricklerhandwerk/antiquotationThéophane Hufschmitt
antiquotation -> string interpolation