Commit graph

209 commits

Author SHA1 Message Date
Robert Hensing
0395086d0c
Merge pull request #162271 from Infinisil/warn-no-type
Throw an error for options without a type
2022-03-16 22:58:45 +01:00
pennae
aa7b129708
Merge pull request #154113 from pennae/systemd-escaping
nixos: add functions and documentation for escaping systemd Exec* directives
2022-03-13 19:57:32 +00:00
pennae
40a35299fa nixos: add functions and documentation for escaping systemd Exec* directives
it's really easy to accidentally write the wrong systemd Exec* directive, ones
that works most of the time but fails when users include systemd metacharacters
in arguments that are interpolated into an Exec* directive. add a few functions
analogous to escapeShellArg{,s} and some documentation on how and when to use them.
2022-03-12 00:48:52 +01:00
Janne Heß
bc58430068
nixos/switch-to-configuration: Fix reloading of stopped services 2022-03-11 14:05:19 +01:00
Janne Heß
c96180c53f
nixos/switch-to-configuration: Ignore some unit keys
Some unit keys don't need to restart the service to make them effective.
Reduce the amount of service restarts by ignoring these keys
2022-03-11 13:30:03 +01:00
Naïm Favier
9c2266c031
lib.types.package: only call toDerivation when necessary
The current logic assumes that everything that isn't a derivation is a
store path, but it can also be something that's *coercible* to a store
path, like a flake input.

Unnecessary uses of `lib.toDerivation` result in errors in pure evaluation
mode when `builtins.storePath` is disabled.

Also document what a `package` is.
2022-03-11 11:26:34 +01:00
Alexandru Scvortov
f386c42a48 nixos/doc: improve wording in "Options Types" and "Option Declarations" 2022-03-05 13:51:37 +00:00
Janne Heß
1def557525
nixos/switch-to-configuration: Document and test socket-activated services 2022-03-03 20:49:20 +01:00
Silvan Mosberger
5cbeddfde4 lib.types: Introduce types.optionType
This type correctly merges multiple option types together while also
annotating them with file information. In a future commit this will be
used for `_module.freeformType`
2022-03-01 19:31:00 +01:00
Janne Heß
0c766a100e lib/options: Throw error for options without a type
Makes all options rendered in the manual throw an error if they don't
have a type specified.

This is a follow-up to #76184

Co-Authored-By: Silvan Mosberger <contact@infinisil.com>
2022-02-28 22:51:41 +01:00
Minijackson
6a96ddb675 pkgs-lib: Implement settings format for Elixir 2022-02-28 07:09:10 -05:00
Silvan Mosberger
665344f148 lib/types: Introduce types.raw for unprocessed values 2022-02-22 15:54:44 +01:00
Maximilian Bosch
4fe5771eee
Merge pull request #154694 from winterqt/nixos-test-log-doc
nixos/doc: fix mention of reading test logs
2022-02-20 15:21:30 +01:00
Janne Heß
8d925cc8db
nixos/doc: Document the activation script
This may be helpful to new module developers, curious users, and people
who just need a reference without having to look at the implementation
2022-02-09 20:44:28 +01:00
Marijan Petričević
d590556d5c update docs 2022-01-26 10:46:46 +01:00
Robert Hensing
8919495cac
Merge pull request #156503 from hercules-ci/nixos-add-system.build-options
nixos: Add `system.build.`{`toplevel`,`installBootLoader`}, improve error message
2022-01-25 14:13:24 +01:00
Robert Hensing
48dbe26229 nixos/doc: Document types.unique 2022-01-24 16:31:59 +01:00
Anselm Schüler
c008b3d100 nixos/docs/option-declarations: Document mkEnableOption and mkPackageOption
This is a squashed commit. These are the original commit messages:

lib/option: Improve comment

better comment

Update documentation

Updated nixos/doc/manual/development/options-declarations.md with info on mkEnableOption and mkPackageOption.
Updated the comment on mkEnableOption in lib/options.nix

remove trailing whitespace

nixos/doc/option-declarations: Update IDs & formatting

nixos/docs/option-declarations: Escape angle brackets

Build DB from MD

(Amended) Fix typo
Co-authored-by: pennae <82953136+pennae@users.noreply.github.com>

(Amended) Build DB from MD (again)
2022-01-23 19:44:21 +01:00
Winter
c772c572cf nixos/doc: fix mention of reading test logs 2022-01-11 20:43:08 -05:00
Jacek Galowicz
048fd95f10
Merge pull request #146905 from Synthetica9/failure_mode
nixos/test-driver: add polling_condition
2022-01-08 18:28:25 +01:00
Patrick Hilhorst
0c3f1cf420
Merge pull request #153273 from Synthetica9/passthru-driverInteractive 2022-01-07 16:04:43 +01:00
Patrick Hilhorst
d4dc638d77
nixos/test-driver: also passthru driverInteractive 2022-01-04 14:52:37 +01:00
pennae
fc614c37c6 nixos/documentation: split options doc build
most modules can be evaluated for their documentation in a very
restricted environment that doesn't include all of nixpkgs. this
evaluation can then be cached and reused for subsequent builds, merging
only documentation that has changed into the cached set. since nixos
ships with a large number of modules of which only a few are used in any
given config this can save evaluation a huge percentage of nixos
options available in any given config.

in tests of this caching, despite having to copy most of nixos/, saves
about 80% of the time needed to build the system manual, or about two
second on the machine used for testing. build time for a full system
config shrank from 9.4s to 7.4s, while turning documentation off
entirely shortened the build to 7.1s.
2022-01-02 19:46:13 +01:00
Patrick Hilhorst
4e1556ed4d
nixos/test-driver: add polling_condition 2022-01-01 23:17:32 +01:00
Robert Hensing
2a4d433b1f nixosTest: Add xclip as example of stdout blocker 2021-11-06 13:46:51 +01:00
Robert Hensing
698fb089d8 nixosTest: Document stdout waiting behavior 2021-11-05 02:41:25 +01:00
Janne Heß
1640359f33
nixos/test-runner: Fix execute() flakiness
Instead of using the magic string, we now just base64-encode everything
and check for a newline.
2021-10-28 11:51:20 +02:00
Naïm Favier
2ddc335e6f
nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
Bobby Rong
b8efe91ce2
nixos: nixos/doc/manual/development/writing-modules.xml to CommonMark 2021-09-08 17:57:11 +08:00
Bobby Rong
12a9632ab0
nixos: nixos/doc/manual/devlopment/nixos-tests.xml to CommonMark 2021-09-08 15:47:16 +08:00
Jörg Thalheim
00f361a846
Merge pull request #129074 from bobby285271/pr11
nixos/doc: convert Chapter 57, 59, 60, 63 to CommonMark
2021-09-07 07:15:42 +01:00
Jörg Thalheim
c7d32059b1
Merge pull request #129136 from bobby285271/pr14
nixos/doc: convert "Chapter 58. Writing NixOS Modules" to CommonMark
2021-09-07 06:28:57 +01:00
Lassulus
6a74d5562e
Merge pull request #132583 from blaggacao/fix/soft-force-the-file-system-layout-for-boot-media
nixos/boot-media: soft-force entire fs layout
2021-08-17 22:36:41 +02:00
lewo
7aa78642c5
Merge pull request #125979 from blaggacao/nixos-test-ref/03-normalse-the-python-entrypoint
nixos/test-driver: normalize the python entrypoint
2021-08-08 10:24:47 +02:00
David Arnold
926fb93968
nixos/tests/test-driver: normalise test driver entrypoint(s)
Previously the driver was configured exclusively through convoluted
environment variables.

Now the driver's defaults are configured through env variables.

Some additional concerns are in the github comments of this PR.
2021-08-05 19:07:11 -05:00
David Arnold
2937038bf3
lib/modules: add mkImageMediaOverride docs 2021-08-05 18:53:59 -05:00
Niklas Hambüchen
fe5f3f65e2 manuals: Describe how to link NixOS tests from packages 2021-07-27 17:39:33 +02:00
Bobby Rong
165d6bd20c nixos: nixos/doc/manual/development/settings-options.xml to CommonMark 2021-07-03 22:20:55 +08:00
Bobby Rong
31be0b922d nixos: nixos/doc/manual/development/freeform-modules.xml to CommonMark 2021-07-03 22:20:55 +08:00
Bobby Rong
a743c6d35a nixos: nixos/doc/manual/development/replace-modules.xml to CommonMark 2021-07-03 22:20:55 +08:00
Bobby Rong
9afb04f765 nixos: nixos/doc/manual/development/importing-modules.xml to CommonMark 2021-07-03 22:20:55 +08:00
Bobby Rong
c085310183 nixos: nixos/doc/manual/development/meta-attributes.xml to CommonMark 2021-07-03 22:20:55 +08:00
Bobby Rong
d48cfce2bf nixos: nixos/doc/manual/development/option-def.xml to CommonMark 2021-07-03 22:20:55 +08:00
Bobby Rong
bfd21cd2c1 nixos: nixos/doc/manual/development/option-types.xml to CommonMark 2021-07-03 22:20:55 +08:00
Bobby Rong
6877012179 nixos: nixos/doc/manual/development/option-declarations.xml to CommonMark 2021-07-03 22:20:55 +08:00
Bobby Rong
1f3d513839 nixos: nixos/doc/manual/development/writing-documentation.xml to CommonMark 2021-07-03 12:09:57 +08:00
Bobby Rong
d80bde37a8 nixos: nixos/doc/manual/development/testing-installer.xml to CommonMark 2021-07-03 12:06:27 +08:00
Bobby Rong
51bf2e175e nixos: nixos/doc/manual/development/building-parts.xml to CommonMark 2021-07-03 12:01:42 +08:00
Bobby Rong
409934a6e5 nixos: nixos/doc/manual/development/sources.xml to CommonMark 2021-07-03 12:00:40 +08:00
Bobby Rong
47fe2c7e93 nixos: nixos/doc/manual/development/running-nixos-tests-interactively.xml to CommonMark 2021-07-02 20:24:02 +08:00