aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/src/command-ref/nix-instantiate.md
AgeCommit message (Collapse)Author
2024-03-09Merge pull request #9755 from 9999years/printer-followupeldritch horrors
Printer followup (cherry picked from commit 51f524c629b778b75cb62a9e0c85bae655984abc) Change-Id: I29214cc86c5e846cbcfec382022293a70011b316
2024-03-09Unify and refactor value printingeldritch horrors
Previously, there were two mostly-identical value printers -- one in `libexpr/eval.cc` (which didn't force values) and one in `libcmd/repl.cc` (which did force values and also printed ANSI color codes). This PR unifies both of these printers into `print.cc` and provides a `PrintOptions` struct for controlling the output, which allows for toggling whether values are forced, whether repeated values are tracked, and whether ANSI color codes are displayed. Additionally, `PrintOptions` allows tuning the maximum number of attributes, list items, and bytes in a string that will be displayed; this makes it ideal for contexts where printing too much output (e.g. all of Nixpkgs) is distracting. (As requested by @roberth in https://github.com/NixOS/nix/pull/9554#issuecomment-1845095735) Please read the tests for example output. Future work: - It would be nice to provide this function as a builtin, perhaps `builtins.toStringDebug` -- a printing function that never fails would be useful when debugging Nix code. - It would be nice to support customizing `PrintOptions` members on the command line, e.g. `--option to-string-max-attrs 1000`. (cherry picked from commit 0fa08b451682fb3311fe58112ff05c4fe5bee3a4, ) === Restore ambiguous value printer for `nix-instantiate` The Nix team has requested that this output format remain unchanged. I've added a warning to the man page explaining that `nix-instantiate --eval` output will not parse correctly in many situations. (cherry picked from commit df84dd4d8dd3fd6381ac2ca3064432ab31a16b79) Change-Id: I7cca6b4b53cd0642f2d49af657d5676a8554c9f8
2023-05-17Convert short nix options to long onesAlexander Schmolck
e.g. nix-env -e subversion => nix-env --uninstall subversion The aim is to make the documentation less cryptic for newcomers and the long options are more self-documenting. The change was made with the following script: <https://github.com/aschmolck/convert-short-nix-opts-to-long-ones> and sanity checked visually.
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>
2022-12-21link "store derivation" to glossary definitionValentin Gagarin
2022-08-04manual: remove "Writing Nix Expressions" chapterValentin Gagarin
it is out of date, all over the place in level of detail, is really about `nixpkgs`, and in general instructions should not be part of a reference manual. also: - update redirects and internal links - use "Nix language" consistently
2021-04-23Replace the trailing markdown spaces by a backslashregnat
They are equivalent according to <https://spec.commonmark.org/0.29/#hard-line-breaks>, and the trailing spaces tend to be a pain (because the make git complain, editors tend to want to remove them − the `.editorconfig` actually specifies that − etc..).
2020-10-08Remove stray 'Title:' from the manualEelco Dolstra
Closes #4096.
2020-09-03Remove the --indirect flagEelco Dolstra
All GC roots are now indirect.
2020-07-31Enable syntax highlightingEelco Dolstra
2020-07-24Fix internal linksEelco Dolstra
2020-07-24Fix some dangling referencesEelco Dolstra
2020-07-24Clean up the manpagesEelco Dolstra
2020-07-24Get rid of footnotesEelco Dolstra
Markdown doesn't support them.
2020-07-23<replaceable> -> <emphasis>Eelco Dolstra
Pandoc doesn't know <replaceable> so let's force it to be rendered as italics.
2020-07-23Convert commandsEelco Dolstra