Commit graph

1663 commits

Author SHA1 Message Date
Valentin Gagarin
caebe4112e reorder columns
this is for a simpler transformation into a series of subsections
2023-01-05 14:15:01 +01:00
Naïm Favier
3c968191f1
move unsafeDiscardReferences out of outputChecks
It's not a check.
2023-01-03 18:53:01 +01:00
Naïm Favier
15f7fa59be
unsafeDiscardReferences
Adds a new boolean structured attribute
`outputChecks.<output>.unsafeDiscardReferences` which disables scanning
an output for runtime references.

    __structuredAttrs = true;
    outputChecks.out.unsafeDiscardReferences = true;

This is useful when creating filesystem images containing their own embedded Nix
store: they are self-contained blobs of data with no runtime dependencies.

Setting this attribute requires the experimental feature
`discard-references` to be enabled.
2023-01-03 17:19:16 +01:00
Valentin Gagarin
9cb1610257 define the terms "realise" and "valid" for store paths
add links to the glossary definition where the terms are used
2023-01-03 13:53:53 +01:00
Eelco Dolstra
6b69652385 Merge remote-tracking branch 'origin/master' into coerce-string 2023-01-02 20:53:39 +01:00
Théophane Hufschmitt
34a31b33f1
Merge pull request #7278 from fricklerhandwerk/antiquotation
antiquotation -> string interpolation
2023-01-02 15:03:45 +01:00
Théophane Hufschmitt
a654ae8269
Merge pull request #7066 from fricklerhandwerk/architecture-overview
manual: architecture overview
2023-01-02 14:42:01 +01:00
Valentin Gagarin
e0c4a95611 antiquotation -> string interpolation
as proposed by @mkaito[1] and @tazjin[2] and discussed with @edolstra
and Nix maintainers

[1]: https://github.com/NixOS/nix.dev/pull/267#issuecomment-1270076332
[2]: https://github.com/NixOS/nix.dev/pull/267#issuecomment-1270201979

Co-authored-by: John Ericson <git@JohnEricson.me>
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2023-01-02 14:38:57 +01:00
Eelco Dolstra
80a0f77e49
Merge pull request #7470 from obsidiansystems/simplify-tests-slightly
Make `./mk/run-test.sh` work by itself; add `mk/debug-test.sh`
2023-01-02 14:14:30 +01:00
Théophane Hufschmitt
cfd6c7fc9b
Merge pull request #7485 from fricklerhandwerk/doc-store-derivation
define "store derivation"
2023-01-02 13:26:41 +01:00
John Ericson
efbd1d15c6
Apply suggestions from code review
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-23 08:59:36 -08:00
Eelco Dolstra
c164d304f3 nix develop: Set personality
This makes 'nix develop' set the Linux personality in the same way
that the actual build does, allowing a command like 'nix develop
nix#devShells.i686-linux.default' on x86_64-linux to work correctly.
2022-12-23 16:33:55 +01:00
Akhil
a3a0e414c2
Deletes build users and group 2022-12-23 14:06:51 +05:30
Valentin Gagarin
7797661a70 link "store derivation" to glossary definition 2022-12-21 11:42:50 +01:00
Valentin Gagarin
3a66d82e1d update description of "store derivation" in installables section
a store derivation is not a store path itself, it has a store path.
2022-12-21 11:42:22 +01:00
Valentin Gagarin
62f4f883a7 define "store derivation" 2022-12-21 11:42:22 +01:00
John Ericson
0251d44cc2 Make ./mk/run-test.sh work by itself; add mk/debug-test.sh
First, logic is consolidated in the shell script instead of being spread
between them and makefiles. That makes understanding what is going on a
little easier.

This would not be super interesting by itself, but it gives us a way to
debug tests more easily. *That* in turn I hope is much more compelling.
See the updated manual for details.

Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2022-12-21 02:28:33 -05:00
Robert Hensing
1437582ccd
doc/book.toml: Improve config (#7300)
* doc/book.toml: Improve config

 - `title` value will be added to the HTML <title> - here</title>

 - `git-repository-url` adds a link to the GitHub repo in the top right corner

 - `edit-url-template` adds an edit link, inviting contributions

Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-20 16:29:32 +01:00
Valentin Gagarin
7e31a991db make relative links explicit 2022-12-20 14:28:43 +01:00
Valentin Gagarin
c162c90b43 add more explanation to diagrams
this is to help reading the diagrams, otherwise arrows and labels were
reported as being ambiguous.
2022-12-20 09:59:59 +01:00
Eelco Dolstra
9fa8b02c41
Merge pull request #7456 from ncfavier/fix-links
doc: fix links
2022-12-13 17:27:13 +01:00
Naïm Favier
129ece7ce9
doc: fix links 2022-12-13 15:49:40 +01:00
John Ericson
5273cf4c97 Merge remote-tracking branch 'upstream/master' into indexed-store-path-outputs 2022-12-12 17:40:49 -05:00
John Ericson
dabb03b8d0 Merge remote-tracking branch 'upstream/master' into indexed-store-path-outputs 2022-12-12 17:36:02 -05:00
John Ericson
c7cce3e4e1 Improve release notes 2022-12-12 16:29:49 -05:00
Valentin Gagarin
4ed8bb1cb1 suggestions from review 2022-12-12 14:29:24 +01:00
Eelco Dolstra
fa409131cd Add links to the manual
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-12 14:05:54 +01:00
Eelco Dolstra
fd0ed75118 Support flake references in the old CLI
Fixes #7026.
2022-12-12 14:05:52 +01:00
Eelco Dolstra
7396844676
Merge pull request #7421 from edolstra/lazy-trees-trivial-changes
Trivial changes from the lazy-trees branch
2022-12-12 13:52:56 +01:00
John Ericson
1879c7c95e
Merge branch 'master' into indexed-store-path-outputs 2022-12-12 07:33:36 -05:00
Eelco Dolstra
c66c904a05 Tweak NIX_PATH description 2022-12-12 12:54:15 +01:00
Eelco Dolstra
add417ec14 Fix indentation 2022-12-12 12:46:54 +01:00
Eelco Dolstra
037d5c4299
Manual improvements
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-12 12:43:44 +01:00
Théophane Hufschmitt
830b3bddf9
Merge pull request #7324 from CircuitCoder/master
Update uninstall guide involving systemd
2022-12-09 13:57:26 +01:00
Théophane Hufschmitt
1dd7779c7c
Merge pull request #7379 from fricklerhandwerk/refactor-generate-options
refactor rendering documentation of options
2022-12-08 06:39:13 +01:00
Valentin Gagarin
ebeaf03558 do not render links in man pages
this is a follow-up on e7dcacb.

most links are relative and this should not be too much of a detriment.
2022-12-07 16:20:25 +01:00
Valentin Gagarin
b8a1ff98c1 use HTML anchors for config parameters
this avoids incorrect rendering on the man pages, since `lowdown`
neither parses the anchor syntax nor HTML.

this should rather be fixed in lowdown, as adding more anchors
would otherwise produce ever more noise and error-prone repetition.
2022-12-07 16:18:50 +01:00
Eelco Dolstra
b5b7902a08
Merge branch 'master' into remove-repeat 2022-12-07 16:04:47 +01:00
Eelco Dolstra
703d863a48 Trivial changes from the lazy-trees branch 2022-12-07 14:06:34 +01:00
endgame
c710aa1abd
Post build hook signing (#7408)
* docs: Use secret-key-files when demonstrating post-build-hooks

The docs used to recommend calling `nix store sign` in a post-build
hook, but on more recent versions of nix, this results in unsigned
store paths being copied into binary caches. See
https://github.com/NixOS/nix/issues/6960 for details.

Instead, use the `secret-key-files` config option, which signs all
locally-built derivations with the private key.

Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-07 13:55:02 +01:00
Linus Heckemann
8e0946e8df Remove repeat and enforce-determinism options
These only functioned if a very narrow combination of conditions held:

- The result path does not yet exist (--check did not result in
  repeated builds), AND
- The result path is not available from any configured substituters, AND
- No remote builders that can build the path are available.

If any of these do not hold, a derivation would be built 0 or 1 times
regardless of the repeat option. Thus, remove it to avoid confusion.
2022-12-07 11:36:48 +01:00
Eelco Dolstra
5b4b2eefa1 Release notes 2022-12-06 13:55:09 +01:00
Valentin Gagarin
dfa27e6b2f refactor rendering documentation of options
this makes more obvious what the code produces, and the structure of the
output easier to change
2022-12-01 06:08:08 +01:00
Valentin Gagarin
0ea62670ed move documentation on auto-allocate-uids to options docs
this is where it belongs and can be found together with the other
options.
2022-12-01 04:40:02 +01:00
Valentin Gagarin
3f881e3378
add missing newline, for consistent formatting 2022-11-30 23:40:53 +01:00
Théophane Hufschmitt
0596bdf3a9
Merge pull request #7342 from fricklerhandwerk/refactor-generate-builtins
refactor rendering documentation of builtins
2022-11-29 15:55:43 +01:00
Eelco Dolstra
7dd3e1fec4 Add example 2022-11-28 22:04:51 +01:00
Eelco Dolstra
67bcb99700 Add a setting for enabling cgroups 2022-11-28 21:54:02 +01:00
Liu Xiaoyi
c4ce89f772
Clarify uninstallation steps on Linux
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-11-26 22:01:51 +08:00
John Ericson
26534f141c
Merge branch 'master' into indexed-store-path-outputs 2022-11-25 08:14:32 -05:00
Valentin Gagarin
d6318e1638 refactor rendering documentation of builtins
as in [1], make the document structure visible, like in a template

[1]: 4655563470
2022-11-24 14:15:43 +01:00
Eelco Dolstra
2aa3f2e810 Include UID in hex 2022-11-23 17:07:59 +01:00
Eelco Dolstra
989fc8a8b9 Add release notes 2022-11-23 15:24:50 +01:00
Valentin Gagarin
52f0c80917 fix error in language overview
it is not possible to antiquote numbers.
2022-11-22 10:36:21 +01:00
Liu Xiaoyi
4d55acf515
Apply suggestions from code review
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-11-21 13:46:22 +08:00
Liu Xiaoyi
cc620d961f Updated uninstall guide involving systemd
Co-authored-by: sequencer <liu@jiuyang.me>
2022-11-20 20:04:29 +08:00
Théophane Hufschmitt
6bf8736517 Add release-notes for the context-restriction in readFile 2022-11-14 15:03:53 +01:00
Théophane Hufschmitt
302ddee749
Merge pull request #7279 from fricklerhandwerk/uninstall
add removing users to uninstall instructions
2022-11-11 14:39:07 +01:00
Valentin Gagarin
2af036e5a3
remove stray comma 2022-11-11 14:01:13 +01:00
Théophane Hufschmitt
f225f43076
Merge pull request #7006 from fricklerhandwerk/redirects
manual: generalize anchor redirects
2022-11-09 11:23:26 +01:00
Valentin Gagarin
9d20a056c8 remove external link
the language has its own overview page where its properties are
described in sufficient detail.
2022-11-09 01:36:17 +01:00
Valentin Gagarin
3d716df7ce make diagrams compatible with svgbob
this will at some point enable rendering them nicely for the web
2022-11-09 01:29:01 +01:00
Valentin Gagarin
98447c1a7f clarify subject of sentence
Co-authored-by: Bryan Honof <bryan.honof@tweag.io>
2022-11-09 01:29:01 +01:00
Valentin Gagarin
b5728ace5d add articles 2022-11-09 01:29:01 +01:00
Valentin Gagarin
be8744f937 manual: architecture overview
these changes were not merged properly and had to be reverted.

see merge commit d8e54d19f7 for full
history leading up to here.
2022-11-09 01:29:01 +01:00
Valentin Gagarin
d8781c4fc5 add removing users to uninstall instructions 2022-11-09 01:11:47 +01:00
Valentin Gagarin
ffca3e34cb
Merge pull request #6906 from fricklerhandwerk/language-overview
add syntax overview from NixOS manual
2022-11-09 00:52:53 +01:00
Valentin Gagarin
daedaa197d fix typos in comments 2022-11-09 00:49:34 +01:00
Valentin Gagarin
f7ab93b068 manual: build action -> build task
after discussing this with multiple people, I'm convinced that "build
task" is more precise: a derivation is not an action, but inert until it
is built. also it's easier to pronounce.

proposal: use "build task" for the generic concept "description of how
to derive new files from the contents of existing files". then it will
be easier to distinguish what we mean by "derivation" (a specific data
structure and Nix language value type) and "store derivation" (a
serialisation of a derivation into a file in the Nix store).
2022-11-06 13:28:18 +01:00
John Ericson
13f2a6f38d
Merge branch 'master' into indexed-store-path-outputs 2022-10-28 23:22:18 +01:00
Théophane Hufschmitt
74cc24f4cf
Merge pull request #7191 from jherland/antiquoted-paths
Explain how Nix handles antiquotation of paths
2022-10-26 12:42:59 +02:00
Guillaume Maudoux
2a7348f986 Fixup merge typo 2022-10-22 23:38:50 +02:00
Patrick Jackson
b44df13701 manual: update options generation code to use default values 2022-10-20 12:05:04 -07:00
Johan Herland
1ec8810687 Explain how Nix handles antiquotation of paths
Specifically, explain why Nix does not _re_evaluate paths during a
`nix repl` session. This is a thing that bit me while playing around
with paths and antiquotation in `nix repl` while reading the Nix
language tutorial at https://nix.dev/tutorials/nix-language.

Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-10-19 11:50:58 +02:00
Guillaume Maudoux
3f9f6ae127 Merge remote-tracking branch 'origin/master' into coerce-string 2022-10-16 20:39:19 +02:00
Ana Hobden
069409d167 Print common flags in --help 2022-10-07 09:07:22 -07:00
Valentin Gagarin
ac0fb38e8a
Merge pull request #6652 from abathur/doc_install_tests 2022-10-05 17:45:42 +02:00
Travis A. Everett
e1418430ac
Apply suggestions from code review
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-10-05 09:52:53 -05:00
Valentin Gagarin
927234cfb2
Merge pull request #6870 from amjoseph-nixpkgs/pr/doc/explain-local-remote-binary-substituter 2022-10-05 09:01:42 +02:00
Théophane Hufschmitt
3ae9467d57
Merge pull request #6969 from fricklerhandwerk/refactor-generate-manpage
refactor rendering command documentation to markdown
2022-10-03 15:50:17 +02:00
Valentin Gagarin
d8bef7358f bring back lost newline 2022-09-30 01:43:57 +02:00
Valentin Gagarin
70eea97742 use more self-explanatory names 2022-09-30 01:43:57 +02:00
Valentin Gagarin
61188cb820 move final template to the top
this allows readers to enter the code starting with what is visible from
the outside, instead of working themselves up from purely technical details.
2022-09-30 01:43:57 +02:00
Valentin Gagarin
0e0f1832de remove superfluous let-in pair 2022-09-30 01:43:57 +02:00
Valentin Gagarin
a85df04fcb refactor showOptions
it was quite a pain to manipulate strings just with `builtins`
2022-09-30 01:43:53 +02:00
Valentin Gagarin
4655563470 refactor rendering command documentation to markdown
idea:
- make document structure visible, like in a template
- order functions by descending abstraction
- avoid nested let bindings
2022-09-30 01:42:46 +02:00
Valentin Gagarin
6b56bb4a79 use indented strings where appropriate 2022-09-30 01:42:46 +02:00
Solene Rapenne
847cd49909 nix-copy-closure: improve wording 2022-09-28 01:05:46 +02:00
Théophane Hufschmitt
6a64820cb4
Merge pull request #7082 from rapenne-s/ccache
add ccacheStdenv
2022-09-24 12:45:27 +02:00
Solène Rapenne
e04b38f789 add ccacheStdenv
when using ccache, rebuild time has been measured
89% faster while not slowing the speed of cold builds
2022-09-23 11:21:19 +02:00
Travis A. Everett
84bdb0e3ad address review feedback
Mainly:
- Try to triangulate between narrative that framed this as
  a new/easy process and the need for a reference that will
  not quickly grow stale.
- Fix a ~continuity issue where the text was talking about
  "your Cachix cache" before saying that you'd need to make
  a Cachix cache to enable the installer tests.
- Adopt suggestion on titling, and nest subtitles in the
  installer test section.
2022-09-18 13:02:42 -05:00
Travis A. Everett
4bd52bf6c4
Apply suggestions from code review
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-09-17 13:20:11 -05:00
Adam Joseph
ad5b09423a release-notes/rl-next.md: note new argument to fetchurl.nix 2022-09-16 01:59:24 -07:00
Valentin Gagarin
dc8c0b173c
Update doc/manual/src/contributing/hacking.md 2022-09-16 09:36:55 +02:00
Valentin Gagarin
1ae974120a
Update doc/manual/src/contributing/hacking.md 2022-09-16 09:36:37 +02:00
Valentin Gagarin
0a4bd9fe88
Update doc/manual/src/contributing/hacking.md 2022-09-16 09:36:30 +02:00
Valentin Gagarin
47fa1087c8
Update doc/manual/src/contributing/hacking.md 2022-09-16 09:36:20 +02:00
Valentin Gagarin
1d295e5fe7
Merge pull request #6934 from fricklerhandwerk/revert-architecture
Revert #6420 "Document what Nix *is*" so we can start over with smaller change sets
2022-09-09 13:31:05 +02:00
Valentin Gagarin
8dd5ba2f47 more precise variable types 2022-09-09 09:54:24 +02:00
Valentin Gagarin
548c904d40 optimize performance
remove loops and function calls, modify arrays in place

this makes the whole thing harder to read, and probably only
marginally faster.
2022-09-08 11:58:43 +02:00