aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/src/language
AgeCommit message (Collapse)Author
2023-08-31add anchor to `builder`Valentin Gagarin
2023-08-07Stabilize `discard-references`Théophane Hufschmitt
It has been there for a few releases now (landed in 2.14.0), doesn't seem to cause any major issue and is wanted in a few places (https://github.com/NixOS/nix/pull/7087#issuecomment-1544471346).
2023-07-19clarify wording on args@ default handling (#8596)Valentin Gagarin
* clarify wording on args@ default handling Most importantly use shorter sentences and emphasize the key point that defaults aren't taken into account Co-authored-by: Robert Hensing <roberth@users.noreply.github.com> Co-authored-by: John Ericson <git@JohnEricson.me>
2023-07-16Nix Reference Manual: keep nix expressions uptodate with nixpkgs (#8703)Sinan Mohd
2023-06-30doc: TypoRobert Hensing
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-15make domain-specificity more specificValentin Gagarin
also slightly reword the purpose statement to introduce (and explain) derivations right away.
2023-06-08refine wording on the purpose of the Nix languageValentin Gagarin
packages and configurations are not really a concept in Nix or the Nix language. the idea of transforming files into other files clearly captures what it's all about, and the new phrasing should make the term "derivation" more obvious both in terms of meaning and origin.
2023-06-02Merge pull request #8317 from fricklerhandwerk/doc-identifierThéophane Hufschmitt
document identifier syntax for attribute sets
2023-05-17add cross-references to pure evaluation modeValentin Gagarin
use consistent wording everywhere. add some details on the configuration option documentation.
2023-05-17document `builtins.currentTime`Valentin Gagarin
2023-05-17document identifier syntax for attribute setsValentin Gagarin
it's more likely for readers to find it right there. this also slightly rewords examples to make them stand out better. in the long run there probably needs to be a dedicated section on formal syntax, and better highlighting of examples.
2023-05-12Describe the or operation on attribute sets slightly moreAna Hobden
2023-05-11reword introduction to built-in functionsValentin Gagarin
add anchor to `builtins.derivation` and list some built-in functions that are exposed in the global scope. I decided not to list everything, because we probably don't want to encourage people using them that way.
2023-05-11reword documentation on `builtins`Valentin Gagarin
- add anchor to `builtins` - add type information - reword description of `builtins` to offer more information concisely
2023-05-11do not indent markdown listValentin Gagarin
2023-04-14Start cross-referencing experimental featuresJohn Ericson
- Create a glossary entry for experimental features. - Have the man page experimental feature notice link `nix-commmand`. (Eventually this should be programmed, based on whether the command is experimental, and if so what experimental feature does it depend on.) - Document which installables depend on which experimental features. I tried to use the same style (bold warning and block quote) that the top of the man page uses. Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-03-30Split nix-env and nix-store documentation per-subcommandAlexander Bantyev
Documentation on "classic" commands with many sub-commands are notoriously hard to discover due to lack of overview and anchor links. Additionally the information on common options and environment variables is not accessible offline in man pages, and therefore often overlooked by readers. With this change, each sub-command of nix-store and nix-env gets its own page in the manual (listed in the table of contents), and each own man page. Also, man pages for each subcommand now (again) list common options and environment variables. While this makes each page quite long and some common parameters don't apply, this should still make it easier to navigate as that additional information was not accessible on the command line at all. It is now possible to run 'nix-store --<subcommand> --help` to display help pages for the given subcommand. Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-03-22doc: force line breaks where neededValentin Gagarin
2023-03-13Fix a typo of values.mdwzy
2023-02-10Fix minor syntax issue in the one of the examples.Pico Geyer
Attribute set expressions need to end with a ;
2023-02-07Merge pull request #7700 from iFreilicht/patch-1Valentin Gagarin
docs: Fix small formatting errors
2023-02-07docs: Fix formatting of || operatorFelix Uhl
This is a workaround for [mdBook#2000](https://github.com/rust-lang/mdBook/issues/2000)
2023-02-07docs: Fix broken anchor linkFelix Uhl
2023-02-07doc: fixup 7714Naïm Favier
2023-01-30doc: add `__structuredAttrs`, `outputChecks`, `unsafeDiscardReferences`Naïm Favier
2023-01-30Merge branch 'master' into referenceablePathsThéophane Hufschmitt
2023-01-20doc: fix update operator descriptionFlorian Paul Schmidt
2023-01-19Merge pull request #7629 from phip1611/patch-3Valentin Gagarin
2023-01-19doc: update language/index.mdPhilipp Schuster
- make `<nixpkgs>` visible (was blank in the rendered version)
2023-01-19Merge pull request #7640 from marceltransier/patch-2Eelco Dolstra
Fix update operator usage in operators.md
2023-01-19Fix update operator usage in operators.mdMarcel Transier
2023-01-18Fix markdown error in operators.mdMarcel Transier
Escape logical or pipe in markdown table according to https://github.github.com/gfm/#example-200
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-03`unsafeDiscardReferences`Naïm Favier
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-02antiquotation -> string interpolationValentin Gagarin
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>
2022-11-22fix error in language overviewValentin Gagarin
it is not possible to antiquote numbers.
2022-11-09Merge pull request #6906 from fricklerhandwerk/language-overviewValentin Gagarin
add syntax overview from NixOS manual
2022-11-06manual: build action -> build taskValentin Gagarin
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-10-19Explain how Nix handles antiquotation of pathsJohan Herland
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-08-31do not use unwarranted pkgs in exampleValentin Gagarin
2022-08-15reword description of language propertiesValentin Gagarin
the list style is supposed to give more structure. each property is explained as concisely as possible while trying not to sound too fancy.