Commit graph

209 commits

Author SHA1 Message Date
Bobby Rong
8fafcfa3ea nixos: nixos/doc/manual/development/running-nixos-tests.xml to CommonMark 2021-07-02 20:23:38 +08:00
Bobby Rong
163976c296 nixos: nixos/doc/manual/development/writing-nixos-tests.xml to CommonMark 2021-07-02 20:22:58 +08:00
Ryan Mulligan
5707a8efad
Merge pull request #125604 from ryantm/md-assertions
nixos/doc: convert assertions and warnings section to CommonMark
2021-06-11 07:59:04 -07:00
talyz
b7749c7671
nixos/test-driver: Run commands with error handling
Bash's standard behavior of not propagating non-zero exit codes
through a pipeline is unexpected and almost universally
unwanted. Default to setting `pipefail` for the command being run;
it can still be turned off by prefixing the pipeline with
`set +o pipefail` if needed.

Also, set `errexit` and `nonunset` options to make the first command
of consecutive commands separated by `;` fail, and disallow
dereferencing unset variables respectively.
2021-06-05 18:44:42 +02:00
Ryan Mulligan
5058f9a5df nixos/doc: convert assertions and warnings section to CommonMark 2021-06-03 20:12:16 -07:00
Patrick Hilhorst
2871442731
nixos/tests/test-driver: mention drawback 2021-06-02 14:58:51 +02:00
Patrick Hilhorst
9469433e34
nixos/tests/test-driver: document shell_interact 2021-06-02 14:49:59 +02:00
Jonathan Ringer
4d318bcb5a
nixos/doc/releases: remove
No one but release managers need to know this information.
Also, it has been moved to https://github.com/NixOS/release-wiki
2021-05-25 12:36:27 -07:00
Ryan Mulligan
6c14851943 nixos/doc: add md-to-db.sh, convert "Building Your Own NixOS CD" to CommonMark 2021-05-22 18:14:49 -07:00
Silvan Mosberger
b8336c2b8a
formats.ini: Introduce listToValue argument (#121613)
Allows coercing lists to values. E.g.

  formats.ini { listToValue = lib.concatMapStringsSep ", " (lib.generators.mkValueStringDefault {}); }
2021-05-04 09:49:25 +02:00
Luke Granger-Brown
4de343cccf nixos/test-driver: use a variety of different Tesseract settings for OCR
When performing OCR, some of the Tesseract settings perform better than
others on a variety of different workloads, but they mostly take
~negligible incremental time to run compared to the overhead of running
the ImageMagick filters.

After this commit, we try using all three of the current Tesseract
models (classic, LSTM, and classic+LSTM) to generate output text. This
fixes chromium-90's tests at release-20.09, and should make cases where
you're looking for *specific* text better, with the tradeoff of running
Tesseract multiple times.

To make it sensible to cherrypick this into release-20.09, this doesn't
change the existing API surface for the test driver. In particular,
get_screen_text continues to have the existing behaviour.
2021-04-23 18:42:35 +00:00
Symphorien Gibol
7a87973b4c nixos/users: require one of users.users.name.{isSystemUser,isNormalUser}
As the only consequence of isSystemUser is that if the uid is null then
it's allocated below 500, if a user has uid = something below 500 then
we don't require isSystemUser to be set.

Motivation: https://github.com/NixOS/nixpkgs/issues/112647
2021-04-14 20:40:00 +02:00
Robert Hensing
2f7be87a8a nixos/doc: Update Writing Documentation to use nix-shell 2021-03-22 21:21:08 +01:00
Bryan Gardiner
d3ea5a7290
nixos/manual/writing-nixos-tests: document how to disable Black silently 2021-03-10 18:56:52 -08:00
laikq
5c99d24d1e doc: explain where pkgs comes from in writing-modules
The manual mentions how "[config and pkgs] are explained later". Added a link
to where they are explained, and a hint pointing to the NIX_PATH variable.
2021-03-03 11:09:21 -05:00
Silvan Mosberger
9e6737710c Revert "Module-builtin assertions, disabling assertions and submodule assertions" 2020-12-18 16:44:37 +01:00
Silvan Mosberger
767d80099c
lib/modules: Introduce _module.checks.*.check
Previously the .enable option was used to encode the condition as well,
which lead to some oddness:
- In order to encode an assertion, one had to invert it
- To disable a check, one had to mkForce it

By introducing a separate .check option this is solved because:
- It can be used to encode assertions
- Disabling is done separately with .enable option, whose default can be
  overridden without a mkForce
2020-12-17 21:52:24 +01:00
Silvan Mosberger
c9cc8969b4
lib/modules: Rename _module.assertions to _module.checks 2020-11-30 23:51:41 +01:00
Silvan Mosberger
c4fb54e92a
nixos/docs: Update assertion docs for new module-builtin ones 2020-11-30 23:51:23 +01:00
Andreas Rammhold
20893b3a70
nixos/tests: expose both the interactive and non-interactive driver
For a lot of the work the non-interactive drivers are enough and it is
probably a good idea to keep it accessible for debugging without
touching the Nix expression.
2020-10-19 17:39:48 +02:00
Michael Weiss
03ce325365
nixos/doc: Fix one command to build the NixOS manual
This one occurrence wasn't updated:
$ git grep "nix-build nixos/release.nix -A manual"
nixos/doc/manual/README:    nix-build nixos/release.nix -A manual.x86_64-linux
nixos/doc/manual/development/meta-attributes.xml:<screen><prompt>$ </prompt>nix-build nixos/release.nix -A manual</screen>
nixos/doc/manual/development/writing-documentation.xml:<screen>nix-build nixos/release.nix -A manual.x86_64-linux</screen>
2020-10-14 18:10:53 +02:00
Arnout Engelen
31dff5cab8
nixos/doc/manual: add link to nixos-generators (#98925)
From the 'Building your Own NixOS CD' section
2020-09-27 19:59:54 +00:00
Jan Tojnar
e6ce041cae
nixos/doc: Improve code listings
By adding prompts and replaceables and removing unnecessary indentation.
2020-09-23 01:25:25 +02:00
Robert Hensing
f3893d8b53
Merge pull request #97119 from Infinisil/types.anything
Introduce `types.anything`
2020-09-21 08:49:24 +02:00
Philipp Bartsch
eae103c835 nixos/doc: fix dead link 2020-09-19 12:52:14 +02:00
Silvan Mosberger
310699319b
nixos/doc: Add docs for types.anything 2020-09-15 21:08:19 +02:00
Silvan Mosberger
b3810166c7
nixos/doc: Soft deprecate types.attrs 2020-09-15 21:01:04 +02:00
Jan Tojnar
951efe41e1 fixup! nixos/doc/releases: update the docs as promised 2020-09-04 10:59:06 -07:00
worldofpeace
f2e98e8b36 fixup! nixos/doc/releases: update the docs as promised 2020-09-04 10:59:06 -07:00
worldofpeace
d9c33b2ea4 nixos/doc/releases: update the docs as promised
This goes through a recent example of 19.09 (because the workflow
should be everchanging, so our example needs to be recent).
Lots of changes, just read idk.
2020-09-04 10:59:06 -07:00
rnhmjoj
20d491a317
treewide: completely remove types.loaOf 2020-09-02 00:42:50 +02:00
Silvan Mosberger
25d75155f3
nixos/doc: Add freeform modules documentation
Co-Authored-By: Robert Hensing <robert@roberthensing.nl>
2020-08-14 22:49:35 +02:00
Olli Helenius
446669cb5e
nixos/manual: Fix reference to send_key 2020-08-03 13:16:24 +03:00
Silvan Mosberger
83b16885f5
nixos/docs: Add documentation for settings options 2020-07-29 18:08:25 +02:00
Olli Helenius
2d8311dac9
nixos/manual: Fix reference to copy_from_host 2020-07-18 14:26:44 +03:00
Michele Guerini Rocco
dab676b2d7
Merge pull request #65231 from buckley310/grub-password
grub: add support for passwords
2020-07-01 09:04:30 +02:00
rnhmjoj
b520055df6
nixos/lib/test-driver: add wait_for_console_text
This method is similar to wait_for_text but is based on matching
serial console lines instead of the VGA output.
2020-06-24 10:22:53 +02:00
Félix Baylac-Jacqué
7e7aa529d9
test-driver.py: delete VM state directory after test run
Keeping the VM state test across several run sometimes lead to subtle
and hard to spot errors in practice. We delete the VM state which
contains (among other things) the qcow volume.

We also introduce a -K (--keep-vm-state) flag making VM state to
persist after the test run. This flag makes test-driver.py to match
its previous behaviour.
2020-06-21 10:27:51 +02:00
Tom Fitzhenry
f3c8acc0bb nixos/doc: update stale fn name s/copy_file_from_host/copy_from_host/
This was renamed in the Perl -> Python test driver migration.
2020-06-01 18:05:58 +10:00
Pavol Rusnak
7b0167204d treewide: use https for nixos.org and hydra.nixos.org
tarballs.nixos.org is omitted from the change because urls from there
are always hashed and checked
2020-05-03 22:14:21 -07:00
Graham Christensen
75f604eb2c
nixos release process: use rev-list --count like Hydra does. 2020-02-22 09:28:03 -05:00
Danylo Hlynskyi
31601a3844 nixos/doc: add a section mentioning GitHub team for nixos release managers (#78625)
* nixos/doc: add a section mentioning GitHub team for nixos release managers

This team should be kept up-to-date with each release.

Previously this info had to be grepped from appropriate Discourse thread.

Co-authored-by: worldofpeace <worldofpeace@protonmail.ch>
2020-01-27 15:31:22 -05:00
Robert Hensing
9884cb3ed0
Merge pull request #76861 from Infinisil/paths-as-submodules
lib/types: Allow paths as submodule values
2020-01-12 14:19:04 +01:00
Silvan Mosberger
b48717d1eb
lib/types: Introduce lazyAttrsOf
The standard attrsOf is strict in its *values*, meaning it's impossible to
access only one attribute value without evaluating all others as well.
lazyAttrsOf is a version that doesn't have that problem, at the expense
of conditional definitions not properly working anymore.
2020-01-10 16:19:55 +01:00
Silvan Mosberger
d5a2922641
nixos/doc: Note that attrsOf is strict in its values 2020-01-10 16:19:54 +01:00
Silvan Mosberger
e9c16ec186
Merge pull request #76857 from Infinisil/recursive-disableModules
Apply `disabledModules` recursively
2020-01-09 18:20:12 +01:00
Silvan Mosberger
a6462a4a8b
nixos/doc: Extend disabledModules docs to indicate recursive disabling 2020-01-09 17:26:08 +01:00
Silvan Mosberger
6525da6321
lib/types: Allow paths as submodule values 2020-01-08 23:54:45 +01:00
Silvan Mosberger
c7ade6844f
Revert "lib/types: Allow paths as submodule values"
This reverts commit eec83d41e3.

This broke hydra evaluation because with this commit submodule values
are allowed to be paths, however the certmgr module uses `either
(submodule ...) path` in its type, meaning it already used paths for
something else which would now be interpreted as a submodule.
2020-01-03 05:21:01 +01:00
Silvan Mosberger
cdf79db19d
Module system improvements for NixOS as a submodule (#75031)
Module system improvements for NixOS as a submodule
2020-01-02 20:38:45 +01:00
Silvan Mosberger
eec83d41e3
lib/types: Allow paths as submodule values 2020-01-02 09:59:35 +01:00
Silvan Mosberger
90c82bfee7
nixos/docs: Add docs for types.submoduleWith 2020-01-02 09:59:32 +01:00
Maximilian Bosch
b72661749b
nixos/python-test-driver: add an option to disable python linter
While it's a good idea to automate the linting of the python code used
for our tests, I think that it can be quite distracting when hacking on
a NixOS test.

I figured that it might be more convenient to add an option as a
shortcut for this to avoid that everyone needs to dig into the test
driver again.
2019-12-22 19:27:43 +01:00
Vladimír Čunát
e32d557967
Merge #45957: nixos manual: releases workflow improvements
Let's merge NOW; I'm not doing the same mistake again.
2019-11-20 13:31:24 +01:00
Vladimír Čunát
be6e0bf5c3
nixos manual: releases workflow nitpicks
Co-Authored-By: asymmetric <lorenzo@mailbox.org>
2019-11-20 13:29:06 +01:00
Tom F
a21cb75242 nixos/manual: fix IDs on docs for running tests (#73526) 2019-11-17 11:47:28 +01:00
worldofpeace
3d256326ab nixos/doc: remove refs to slim 2019-11-11 17:10:41 -05:00
Jacek Galowicz
7d19c5aaa7 nixos/test: Pythonify documentation 2019-11-04 23:50:50 +01:00
Vladimír Čunát
d9c5d584cd Merge branch 'master' into release-docs
It's been a very long time, so I think a merge will be better than
a rebase.  There was only one simple conflict.
2019-10-27 10:29:58 +01:00
Eelco Dolstra
5b324c1825
Remove references to the nixpkgs-channels repo
Channel branches are now provided in the nixpkgs repo.

Issue #71176.
2019-10-17 19:44:03 +02:00
Eelco Dolstra
b0ccd6dd16
Revert "nixos/doc: re-format"
This reverts commit ea6e8775bd. The new
format is not an improvement.
2019-09-19 19:17:30 +02:00
Jan Tojnar
ea6e8775bd
nixos/doc: re-format 2019-09-18 22:13:35 +02:00
Samuel Leathers
bb1b96373b
nixos docs: add release manager section 2019-08-23 10:10:12 -04:00
Aaron Andersen
6f6468bef3
Merge pull request #65728 from Infinisil/types-eithers
lib/types: Add oneOf, extension of either to a list of types
2019-08-13 11:48:42 -04:00
Silvan Mosberger
9a44f44d4c
lib/types: Add oneOf, extension of either to a list of types 2019-08-06 14:08:42 +02:00
Léo Gaspard
6a2abeb6b4
Update nixos/doc/manual/development/releases.xml
Co-Authored-By: Alyssa Ross <hi@alyssa.is>
2019-06-24 18:57:24 +02:00
Léo Gaspard
980b5e0c88 manual: remind to drop kernels that will get EOL'd 2019-06-24 17:11:54 +02:00
Jan Tojnar
a3f2131eb6 doc: Use prompt more often 2019-06-17 13:25:50 +02:00
Jan Tojnar
11cb382a4c
nixos/doc: Fix spurious indentation 2019-06-17 12:28:26 +02:00
Matthew O'Gorman
da035d3ad6
nixos/manual: update 17.03 -> 19.03 in upgrading section 2019-04-12 12:16:30 -04:00
Andreas Rammhold
c55427ca43
nixos/doc: add types prefix to addCheck example
The function `addCheck` resides within the attrset `types`. We should be
explicit about this since otherwise people might be confused where it
does come from / why it doesn't work for them.
2019-03-11 22:56:56 +01:00
Graham Christensen
777e94d903
Merge pull request #55436 from layus/warn-manual-ids
Nixos manual: error out on missing IDs
2019-03-09 08:21:07 -05:00
Domen Kožar
0fd85a1f99
nixos release: there's a wildcard protection now for release-* on github 2019-02-26 14:12:46 +07:00
Guillaume Maudoux
473a3ef606 nixos/manual: add dummy ids to silence warnings 2019-02-08 10:23:57 +01:00
Samuel Dionne-Riel
3aab228d09 Revert "Add ssh backdoor to VM tests infrastructure."
This reverts commit d6e3db44cf.

See #53935 for explanations. In short, it may be causing issues with
tests on the build infrastructure.
2019-01-19 13:24:39 -05:00
Erik Arvstedt
931b7b47a2 nixos tests doc: minor fixes
This fixes some quirks I introduced in previous commits.

1. No need for an extra newline when printing the output of shell commands.
2. 'or die' is what's already used in the NixOS test sources, while
   'die unless' has no occurrences.
2018-11-26 19:36:50 +01:00
Daniel Rutz
0885a65169 nixos/doc: Add documentation for types.port type 2018-10-19 12:33:24 +02:00
Samuel Dionne-Riel
4f43e5fe88 fixup ^ release improvements. 2018-10-05 19:34:52 -04:00
Vladimír Čunát
dd82f6cec0 nixos manual: releases workflow improvements
- `git push --tags` is too dangerous (pushes all your tags)
2018-10-05 19:34:52 -04:00
Graham Christensen
8413f22bb3
docs: format 2018-09-29 20:51:11 -04:00
Tuomas Tynkkynen
d6e3db44cf Add ssh backdoor to VM tests infrastructure.
Thanks to @dezgeg for prototype implementation, I've
cleaned it up and added documentation.
2018-09-28 10:53:08 +01:00
Jan Malakhovski
fe744d3fb1 nixos: doc: rename manual to manualHTML, cleanup references
Because when I see "config.system.build.manual.manual" after I forgot
what it means I ask "Why do I need that second `.manual` there again?".
Doesn't happen with `config.system.build.manual.manualHTML`.
2018-09-23 20:47:58 +00:00
Erik Arvstedt
a91330a41b nixos tests doc: update VM state path 2018-09-17 15:02:58 +02:00
Erik Arvstedt
6e203af399 nixos tests doc: add example statement 2018-09-17 13:08:08 +02:00
Erik Arvstedt
b0956b0ae3 nixos tests doc: fix example statement
False statements don't cause NixOS tests to fail, we need to throw an
exception or terminate.
2018-09-17 13:08:02 +02:00
Graham Christensen
ff23dd110b
nixos docs: more IDs 2018-09-02 15:47:59 -04:00
Graham Christensen
18fd616351
nixos docs: Give sections IDs 2018-09-01 16:20:49 -04:00
Matthew Harm Bekkema
a6c7132abc doc: change git:// links to https:// (#44395)
The server is not verified over the git:// transfer protocol. If you
clone a repository over git://, you should check if the latest commit's
hash is correct.

On the other hand, https:// will always verify the server automatically,
using certificate authorities.
2018-08-03 14:01:34 +01:00
Tuomas Tynkkynen
96190535e5 Revert "nixos: rename system.{stateVersion,defaultChannel} -> system.nixos.\1"
This reverts commit 095fe5b43d.

Pointless renames considered harmful. All they do is force people to
spend extra work updating their configs for no benefit, and hindering
the ability to switch between unstable and stable versions of NixOS.

Like, what was the value of having the "nixos." there? I mean, by
definition anything in a NixOS module has something to do with NixOS...
2018-07-28 00:12:55 +03:00
Samuel Dionne-Riel
15fa70cd78 nixos/doc+man: Fixes squishedtogether definitions. 2018-05-31 21:07:15 -04:00
Samuel Dionne-Riel
88ca2b1ec4 nixos/doc: ran make format
With visual inspection that nothing got worse.
2018-05-31 21:03:51 -04:00
Jan Malakhovski
095fe5b43d nixos: rename system.{stateVersion,defaultChannel} -> system.nixos.\1 2018-05-12 19:27:09 +00:00
Niklas Hambüchen
6e7f4f99d1 manual: Document types.attrs
Signed-off-by: Niklas Hambüchen <mail@nh2.me>
2018-05-07 00:36:39 +02:00
Graham Christensen
eca5c99bf8
nixos docs: format =) 2018-05-01 19:57:09 -04:00
Graham Christensen
74fcb1c770
nixos docs: include note about make for debugging the nixos docs 2018-04-28 04:15:16 -04:00
Graham Christensen
68d48cecf6
Merge pull request #31418 from ryantm/doc-nixos-extra-module-path
lib/eval-config: document NIXOS_EXTRA_MODULE_PATH
2018-04-27 21:26:06 -04:00
Richard Marko
d5de7bbc92 nixos manual: fix (n)of typo 2018-03-18 09:00:35 +01:00
Ryan Mulligan
1cc97befd5 lib/eval-config: document NIXOS_EXTRA_MODULE_PATH
This adds some documentation about importing modules external to
Nixpkgs, which provides context for documenting
NIXOS_EXTRA_MODULE_PATH.

Closes #30376
2018-02-20 07:25:33 -08:00
Eelco Dolstra
e88f28965a
nixos-install: Make compatible with Nix 2.0
The use of Nix 2.0 significantly simplifies the installer, since we
can just pass a different store URI (--store /mnt) - it's no longer
needed to set up a chroot environment for the build, and to bootstrap
Nix into the chroot.

Also, commands that need to run in the installation (namely boot
loader installation and setting a root password) are now executed
using nixos-enter.

This also removes the need for nixos-prepare-root since any required
initialisation is done by Nix or by the activation script.
2018-02-05 19:50:36 +01:00
Maximilian Bosch
e18b0b6033
test-driver: mention $user argument in the NixOS manual and the Impala release notes 2018-01-06 10:09:18 +01:00