aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-06-30doc: Improve `fetchClosure` documentationRobert Hensing
2023-06-30doc: TypoRobert Hensing
2023-06-30fetchClosure: Refactor: replace enableRewritingRobert Hensing
A single variable is nice and self-contained.
2023-06-30fetchClosure: Split into three casesRobert Hensing
2023-06-30makeContentAddressed: Add single path helperRobert Hensing
2023-06-30fetchClosure: Disallow toPath for inputAddressed = trueRobert Hensing
2023-06-30fetchClosure: Always check that inputAddressed matches the resultRobert Hensing
2023-06-30fetchClosure: Allow input addressed paths in pure modeRobert Hensing
When explicitly requested by the caller, as suggested in the meeting (https://github.com/NixOS/nix/pull/8090#issuecomment-1531139324) > @edolstra: { toPath } vs { fromPath } is too implicit I've opted for the `inputAddressed = true` requirement, because it we did not agree on renaming the path attributes. > @roberth: more explicit > @edolstra: except for the direction; not immediately clear in which direction the rewriting happens This is in fact the most explicit syntax and a bit redundant, which is good, because that redundancy lets us deliver an error message that reminds expression authors that CA provides a better experience to their users.
2023-06-30fetchClosure: Refactor: rename toCA -> enableRewritingRobert Hensing
2023-06-30fetchClosure: Factor out attribute hintRobert Hensing
2023-06-30Merge pull request #8614 from ShamrockLee/quickfix-exdevEelco Dolstra
linkOrCopy: Fallback upon cross-device link error (EXDEV)
2023-06-30linkOrCopy: Fallback upon cross-device link error (EXDEV)Yueh-Shun Li
Fix building derivations in local chroot store on OpenAFS, where hard linking accross directories causes cross-device link error (EXDEV).
2023-06-30Merge pull request #8589 from jfroche/sign-paths-as-allowed-userEelco Dolstra
Allow to sign path as unprivileged user
2023-06-29Merge pull request #8600 from inclyc/libexpr/fix-leaking-in-stripIndentationRobert Hensing
libexpr: fix leaking `es2` in stripIndentation (parser.y)
2023-06-28libexpr: fix leaking `es2` in stripIndentation (parser.y)Yingchi Long
2023-06-28Merge pull request #8571 from NixOS/split-out-testing-pageValentin Gagarin
2023-06-27Split testing into its own page in the contribution guideJohn Ericson
`hacking.md` has gotten really big!
2023-06-27Trailing commas in redirectsJohn Ericson
This avoids diff noise when more are added. Unlike with JSON, this is allowed in JS.
2023-06-27Allow to sign path as unprivileged userJean-François Roche
User can now sign path as unprivileged/allowed user refs #1708
2023-06-27Merge pull request #8330 from NixOS/doc-auto-builtin-constantsJohn Ericson
Automatically document builtin constants
2023-06-27Automatically document builtin constantsJohn Ericson
This is done in roughly the same way builtin functions are documented. Also auto-link experimental features for primops, subsuming PR #8371. Co-authored-by: Eelco Dolstra <edolstra@gmail.com> Co-authored-by: Robert Hensing <roberth@users.noreply.github.com> Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-06-27Don't say this when we still pollute the global scopeJohn Ericson
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-06-27Switch example to a primop this is less ill-advisedJohn Ericson
Any primop will do for this, so might as well use one that isn't impure. Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-06-27Generialize `showType`John Ericson
2023-06-27nix flake check: improve error message if overlay is not a lambda (#8582)Maximilian Bosch
* nix flake check: improve error message if overlay is not a lambda Suppose you have an overlay like this { inputs = { /* ... */ }; outputs = { flake-utils, ... }: flake-utils.lib.eachDefaultSystem (system: { overlays.default = final: prev: { }; }); } then `nix flake check` (correctly) fails because `overlays` are supposed to have the structure `overlays.<name> = final: prev: exp`. However, the error-message is a little bit counter-intuitive: error: overlay does not take an argument named 'final' While one might guess where the error actually comes from because the trace above says `… while checking the overlay 'overlays.x86_64-linux'` this is still pretty confusing because it complains about an argument not being named `final` even though that's evidently the case. With this change, the error-message actually makes it clear what's wrong: [ma27@carsten:~/Projects/nix/tmp]$ nix flake check --extra-experimental-features 'nix-command flakes' path:$(pwd) error: … while checking flake output 'overlays' at /nix/store/clgblnxx003hyrq8qkz5ab6kgqkck6qc-source/flake.nix:4:5: 3| outputs = { ... }: { 4| overlays.x86_64-linux.snens = final: prev: { | ^ 5| kek = throw "snens"; … while checking the overlay 'overlays.x86_64-linux' at /nix/store/clgblnxx003hyrq8qkz5ab6kgqkck6qc-source/flake.nix:4:5: 3| outputs = { ... }: { 4| overlays.x86_64-linux.snens = final: prev: { | ^ 5| kek = throw "snens"; error: overlay is not a lambda, but a set instead
2023-06-26Merge pull request #8576 from obsidiansystems/findPath-cleanupEelco Dolstra
Use a struct not `std::pair` for `SearchPathElem`
2023-06-24Merge pull request #5385 from Enzime/add/dirty-revThéophane Hufschmitt
Add `dirtyRev` and `dirtyShortRev` to `fetchGit`
2023-06-24Add `dirtyRev` and `dirtyShortRev` to `fetchGit`Michael Hoang
Fixes #4682
2023-06-23Use a struct not `std::pair` for `SearchPathElem`John Ericson
I got very confused trying to keep all the `first` and `second` straight reading the code, *especially* as there is also another `(boolean, string)` pair type also being used. Named fields is much better. There are other cleanups that we can do (for example, the existing TODO), but we can do them later. Doing them now would just make this harder to review.
2023-06-23Merge pull request #8519 from fricklerhandwerk/reword-trusted-usersRobert Hensing
reword documentation on trusted users and substituters
2023-06-23Merge pull request #8574 from inclyc/nixd/remove-unused-tokenEelco Dolstra
libexpr: remove unused token `ATTRPATH` in token declaration
2023-06-23libexpr: remove unused token `ATTRPATH` in token declarationYingchi Long
2023-06-22Merge pull request #8572 from obsidiansystems/document-exit-codesJohn Ericson
Better document build failure exit codes
2023-06-22Better document build failure exit codesJohn Ericson
- Improved API docs from comment - Exit codes are for `nix-build`, not just `nix-store --release` - Make note in tests so the magic numbers are not surprising Picking up where #8387 left off.
2023-06-22Merge pull request #8387 from layus/fix-testsJohn Ericson
Check exact error codes in linux-sandbox.sh
2023-06-22Merge pull request #8565 from obsidiansystems/profile-delete-docsJohn Ericson
Clarify docs on deleting generations, including fixing a mistake
2023-06-22Merge pull request #8556 from fricklerhandwerk/hacking-headingsValentin Gagarin
hacking guide: use more self-descriptive section headings
2023-06-21Clarify docs on deleting generations, including fixing a mistakeJohn Ericson
Deleting store info corrected (there is a foot-gun in Nix with `--delete-generations old`!) Also a few things are cleaned up based on feedback. Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io> Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2023-06-21Merge pull request #8374 from obsidiansystems/improve-path-settingJohn Ericson
Split `OptionalPathSetting` from `PathSetting`
2023-06-21do not use "target", as it's a loaded term in the domain of compilersValentin Gagarin
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-06-21add redirects to changed anchorsValentin Gagarin
2023-06-21fix anchor linkValentin Gagarin
2023-06-20Update tests/linux-sandbox.shGuillaume Maudoux
Co-authored-by: John Ericson <git@JohnEricson.me>
2023-06-20use more self-descriptive section headingsValentin Gagarin
2023-06-20Merge pull request #8532 from fricklerhandwerk/nix.conf-sectionsValentin Gagarin
split nix.conf man page into sections
2023-06-20be more serious about security risks with trusted usersValentin Gagarin
2023-06-20clarify setting options on the command lineValentin Gagarin
2023-06-20clarify read order for configuration settingsValentin Gagarin
2023-06-20Merge pull request #8552 from edolstra/fix-eagainEelco Dolstra
GC server: Clear O_NONBLOCK on the right file descriptor
2023-06-20split configuration file page into sectionsfricklerhandwerk
this makes it easier to scan for specific information, such as the format of command line flags