aboutsummaryrefslogtreecommitdiff
path: root/doc/manual
AgeCommit message (Collapse)Author
2023-03-13Merge pull request #7486 from fricklerhandwerk/doc-referenceEelco Dolstra
reword definition of "reference"
2023-03-10Generate API docs with DoxygenJohn Ericson
The motivation is as stated in issue #7814: even though the the C++ API is internal and unstable, people still want it to be well documented for sake of learning, code review, and other purposes that aren't predicated on it being stable. Fixes #7814 Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-03-10Merge pull request #7928 from serokell/doc-includesValentin Gagarin
Documentation: process `#include` directives
2023-03-05clarify definition of "installable"Valentin Gagarin
the term was hard to discover, as its definition and explanation were in a very long document lacking an overview section. search did not help because it occurs so often. - clarify wording in the definition - add an overview of installable types - add "installable" to glossary - link to definition from occurrences of the term - be more precise about where store derivation outputs are processed - installable Nix expressions must evaluate to a derivation Co-authored-by: Adam Joseph <54836058+amjoseph-nixpkgs@users.noreply.github.com>
2023-03-03cosmetic indentationValentin Gagarin
Co-authored-by: Théophane Hufschmitt <7226587+thufschmitt@users.noreply.github.com>
2023-03-02Merge branch 'master' into paths-from-stdinThéophane Hufschmitt
2023-03-02Merge pull request #7901 from hercules-ci/disable-testsEelco Dolstra
Add ./configure --disable-tests option
2023-03-01Documentation: process #include directivesAlexander Bantyev
2023-03-01doc/manual/local.mk: Use tabs instead of spaces everywhereAlexander Bantyev
2023-03-01Make nix-env less prominent in manual TOCAlexander Bantyev
2023-02-28Get rid of `.drv` special-casing for store path installablesJohn Ericson
The release notes document the change in behavior, I don't include it here so there is no risk to it getting out of sync. > Motivation >> Plumbing CLI should be simple Store derivation installations are intended as "plumbing": very simple utilities for advanced users and scripts, and not what regular users interact with. (Similarly, regular Git users will use branch and tag names not explicit hashes for most things.) The plumbing CLI should prize simplicity over convenience; that is its raison d'etre. If the user provides a path, we should treat it the same way not caring what sort of path it is. >> Scripting This is especially important for the scripting use-case. when arbitrary paths are sent to e.g. `nix copy` and the script author wants consistent behavior regardless of what those store paths are. Otherwise the script author needs to be careful to filter out `.drv` ones, and then run `nix copy` again with those paths and `--derivation`. That is not good! >> Surprisingly low impact Only two lines in the tests need changing, showing that the impact of this is pretty light. Many command, like `nix log` will continue to work with just the derivation passed as before. This because we used to: - Special case the drv path and replace it with it's outputs (what this gets rid of). - Turn those output path *back* into the original drv path. Now we just skip that entire round trip! > Context Issue #7261 lays out a broader vision for getting rid of `--derivation`, and has this as one of its dependencies. But we can do this with or without that. `Installable::toDerivations` is changed to handle the case of a `DerivedPath::Opaque` ending in `.drv`, which is new: it simply doesn't need to do any extra work in that case. On this basis, commands like `nix {show-derivation,log} /nix/store/...-foo.drv` still work as before, as described above. When testing older daemons, the post-build-hook will be run against the old CLI, so we need the old version of the post-build-hook to support that use-case. Co-authored-by: Travis A. Everett <travis.a.everett@gmail.com> Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-02-28doc/manual: add release note for `--stdin` flagTimothy DeHerrera
2023-02-28nix-store: read paths from standard inputTimothy DeHerrera
Resolves #7437 for new `nix-store` by adding a `--stdin` flag.
2023-02-28doc/cli-guideline: Improve examples Robert Hensing
Turns out that the settings themselves have a bad data model anyway, so we cut that. They do still occur in the first example, but not in focus.
2023-02-28doc/cli-guideline: Apply suggestions from code reviewRobert Hensing
Thanks Valentin!
2023-02-28doc/cli-guideline: Add JSON guidelineRobert Hensing
2023-02-28Release notesEelco Dolstra
2023-02-27use the term reference correctlyValentin Gagarin
2023-02-27add link to definitionValentin Gagarin
2023-02-27remove "references" as distinct termValentin Gagarin
2023-02-26rl-next: Describe fixed flake outPath semanticsRobert Hensing
The reference documentation already implies the correct semantics.
2023-02-24doc: Add test dependencies to prerequisitesRobert Hensing
2023-02-20Merge pull request #7867 from NixOS/hacking-crossRobert Hensing
doc/hacking.md: Corrections and additions for cross
2023-02-20doc/hacking.md: Corrections and additions for crossRobert Hensing
2023-02-20Nix's own flake: Dedup and memoize moreJohn Ericson
- `nixpkgsFor` does all of native, static, cross, and the different stdenvs. - The main Nix derivation is no longer duplicated for static. - DRY nixpkgs.lib and lib.genAttrs calls.
2023-02-20Merge pull request #7433 from yorickvP/improv-onboardingThéophane Hufschmitt
Improve hacking.md and add clangd+bear to devshell
2023-02-13Merge pull request #7616 from hercules-ci/fix-3898Eelco Dolstra
Fix foreign key error inserting into NARs #3898
2023-02-13Improve hacking.mdYorick van Pelt
- Refer to current version in readme - Split into flakes and non-flakes section - Change order to move nix-build to the end, since people often start with it in the beginning. - Use proper "Note" syntax - Add notes about editor integration - Move information about target platforms and stdenvs into separate sections Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io> Co-authored-by: Alexander Bantyev <alexander.bantyev@tweag.io> Co-authored-by: Théophane Hufschmitt <theophane.hufschmitt@tweag.io>
2023-02-10Merge pull request #5588 from tweag/balsoft/xdgThéophane Hufschmitt
Follow XDG Base Directory standard
2023-02-10A setting to follow XDG Base Directory standardAlexander Bantyev
XDG Base Directory is a standard for locations for storing various files. Nix has a few files which seem to fit in the standard, but currently use a custom location directly in the user's ~, polluting it: - ~/.nix-profile - ~/.nix-defexpr - ~/.nix-channels This commit adds a config option (use-xdg-base-directories) to follow the XDG spec and instead use the following locations: - $XDG_STATE_HOME/nix/profile - $XDG_STATE_HOME/nix/defexpr - $XDG_STATE_HOME/nix/channels If $XDG_STATE_HOME is not set, it is assumed to be ~/.local/state. Co-authored-by: Théophane Hufschmitt <7226587+thufschmitt@users.noreply.github.com> Co-authored-by: Tim Fenney <kodekata@gmail.com> Co-authored-by: pasqui23 <pasqui23@users.noreply.github.com> Co-authored-by: Artturin <Artturin@artturin.com> Co-authored-by: John Ericson <Ericson2314@Yahoo.com>
2023-02-10Merge pull request #7800 from PicoGeyer/patch-1Eelco Dolstra
Fix minor syntax issue in one of the examples.
2023-02-10Merge pull request #7403 from fricklerhandwerk/noselectThéophane Hufschmitt
disallow selecting shell prompt in code samples
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-07local.mk: Don't log docroot commentsRobert Hensing
These were accidentally logged and do not need to appear in make's log output.
2023-02-07Make install command in documentation compatible with fish shell (#7474)David Dunn
Use a pipe for all install commands Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
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-07Merge pull request #7758 from peterbecich/clang11-devshell-documentationEelco Dolstra
fix documentation for `clang11Stdenv` dev shell
2023-02-07Update doc/manual/src/glossary.mdValentin Gagarin
Co-authored-by: John Ericson <git@JohnEricson.me>
2023-02-07Merge pull request #7768 from ncfavier/fixup-7714Valentin Gagarin
2023-02-07add "instantiate" to glossaryValentin Gagarin
2023-02-07store paths are not uniquely determinedValentin Gagarin
2023-02-07doc: fixup 7714Naïm Favier
2023-02-05fix `clang11Stdenv` dev shell documentationPeter Becich
`clang11StdenvPackages` does not exist ``` │ └───x86_64-linux │ ├───ccacheStdenv: development environment 'nix' │ ├───clang11Stdenv: development environment 'nix' │ ├───clangStdenv: development environment 'nix' │ ├───default: development environment 'nix' │ ├───gccStdenv: development environment 'nix' │ ├───libcxxStdenv: development environment 'nix' │ └───stdenv: development environment 'nix' ```
2023-02-02Merge pull request #7607 from Hoverbear/installation-expandEelco Dolstra
Expand installation.md
2023-02-01Merge pull request #7719 from andersk/manual-timestampEelco Dolstra
manual: Document that the store timestamp is now 1, not 0
2023-01-30manual: Document that the store timestamp is now 1, not 0Anders Kaseorg
Commit 14bc3ce3d6d5745717fa19b8b43b5fdd117ff757 (0.13~43) changed the timestamps in the Nix store from 0 to 1. Update the nix-store man page to match. Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2023-01-30doc: add `__structuredAttrs`, `outputChecks`, `unsafeDiscardReferences`Naïm Favier
2023-01-30Fix the release-notesThéophane Hufschmitt
Slightly butchered during the merge