diff options
Diffstat (limited to 'nixos')
57 files changed, 830 insertions, 164 deletions
diff --git a/nixos/doc/manual/default.nix b/nixos/doc/manual/default.nix index ecd62eb4e848..6db20cdd6418 100644 --- a/nixos/doc/manual/default.nix +++ b/nixos/doc/manual/default.nix @@ -63,6 +63,7 @@ let }; documentType = "none"; variablelistId = "test-options-list"; + optionIdPrefix = "test-opt-"; }; sources = lib.sourceFilesBySuffices ./. [".xml"]; diff --git a/nixos/doc/manual/development/running-nixos-tests-interactively.section.md b/nixos/doc/manual/development/running-nixos-tests-interactively.section.md index d9c316f4b139..1130672cb376 100644 --- a/nixos/doc/manual/development/running-nixos-tests-interactively.section.md +++ b/nixos/doc/manual/development/running-nixos-tests-interactively.section.md @@ -39,11 +39,11 @@ directory. ## Interactive-only test configuration {#sec-nixos-test-interactive-configuration} The `.driverInteractive` attribute combines the regular test configuration with -definitions from the [`interactive` submodule](#opt-interactive). This gives you +definitions from the [`interactive` submodule](#test-opt-interactive). This gives you a more usable, graphical, but slightly different configuration. You can add your own interactive-only test configuration by adding extra -configuration to the [`interactive` submodule](#opt-interactive). +configuration to the [`interactive` submodule](#test-opt-interactive). To interactively run only the regular configuration, build the `<test>.driver` attribute instead, and call it with the flag `result/bin/nixos-test-driver --interactive`. diff --git a/nixos/doc/manual/development/writing-nixos-tests.section.md b/nixos/doc/manual/development/writing-nixos-tests.section.md index 99704ec3c141..2efe52b9883c 100644 --- a/nixos/doc/manual/development/writing-nixos-tests.section.md +++ b/nixos/doc/manual/development/writing-nixos-tests.section.md @@ -22,12 +22,12 @@ A NixOS test is a module that has the following structure: ``` We refer to the whole test above as a test module, whereas the values -in [`nodes.<name>`](#opt-nodes) are NixOS modules themselves. +in [`nodes.<name>`](#test-opt-nodes) are NixOS modules themselves. -The option [`testScript`](#opt-testScript) is a piece of Python code that executes the +The option [`testScript`](#test-opt-testScript) is a piece of Python code that executes the test (described below). During the test, it will start one or more virtual machines, the configuration of which is described by -the option [`nodes`](#opt-nodes). +the option [`nodes`](#test-opt-nodes). An example of a single-node test is [`login.nix`](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/login.nix). @@ -171,7 +171,7 @@ The following methods are available on machine objects: least one will be returned. ::: {.note} - This requires [`enableOCR`](#opt-enableOCR) to be set to `true`. + This requires [`enableOCR`](#test-opt-enableOCR) to be set to `true`. ::: `get_screen_text` @@ -180,7 +180,7 @@ The following methods are available on machine objects: machine\'s screen using optical character recognition. ::: {.note} - This requires [`enableOCR`](#opt-enableOCR) to be set to `true`. + This requires [`enableOCR`](#test-opt-enableOCR) to be set to `true`. ::: `send_monitor_command` @@ -291,7 +291,7 @@ The following methods are available on machine objects: `get_screen_text` and `get_screen_text_variants`). ::: {.note} - This requires [`enableOCR`](#opt-enableOCR) to be set to `true`. + This requires [`enableOCR`](#test-opt-enableOCR) to be set to `true`. ::: `wait_for_console_text` diff --git a/nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml b/nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml index 35d9bbd1c1fe..16db709f8b91 100644 --- a/nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml +++ b/nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml @@ -44,14 +44,14 @@ $ ./result/bin/nixos-test-driver --keep-vm-state <para> The <literal>.driverInteractive</literal> attribute combines the regular test configuration with definitions from the - <link linkend="opt-interactive"><literal>interactive</literal> + <link linkend="test-opt-interactive"><literal>interactive</literal> submodule</link>. This gives you a more usable, graphical, but slightly different configuration. </para> <para> You can add your own interactive-only test configuration by adding extra configuration to the - <link linkend="opt-interactive"><literal>interactive</literal> + <link linkend="test-opt-interactive"><literal>interactive</literal> submodule</link>. </para> <para> diff --git a/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml b/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml index 32f5fdb77f50..4db196273dad 100644 --- a/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml +++ b/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml @@ -24,16 +24,16 @@ <para> We refer to the whole test above as a test module, whereas the values in - <link linkend="opt-nodes"><literal>nodes.<name></literal></link> + <link linkend="test-opt-nodes"><literal>nodes.<name></literal></link> are NixOS modules themselves. </para> <para> The option - <link linkend="opt-testScript"><literal>testScript</literal></link> + <link linkend="test-opt-testScript"><literal>testScript</literal></link> is a piece of Python code that executes the test (described below). During the test, it will start one or more virtual machines, the configuration of which is described by the option - <link linkend="opt-nodes"><literal>nodes</literal></link>. + <link linkend="test-opt-nodes"><literal>nodes</literal></link>. </para> <para> An example of a single-node test is @@ -263,7 +263,7 @@ start_all() <note> <para> This requires - <link linkend="opt-enableOCR"><literal>enableOCR</literal></link> + <link linkend="test-opt-enableOCR"><literal>enableOCR</literal></link> to be set to <literal>true</literal>. </para> </note> @@ -281,7 +281,7 @@ start_all() <note> <para> This requires - <link linkend="opt-enableOCR"><literal>enableOCR</literal></link> + <link linkend="test-opt-enableOCR"><literal>enableOCR</literal></link> to be set to <literal>true</literal>. </para> </note> @@ -522,7 +522,7 @@ start_all() <note> <para> This requires - <link linkend="opt-enableOCR"><literal>enableOCR</literal></link> + <link linkend="test-opt-enableOCR"><literal>enableOCR</literal></link> to be set to <literal>true</literal>. </para> </note> diff --git a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml index bfe04d89fa83..78bd6c6a22d8 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml @@ -196,6 +196,13 @@ </listitem> <listitem> <para> + <link xlink:href="https://tandoor.dev">Tandoor Recipes</link>, + a self-hosted multi-tenant recipe collection. Available as + <link xlink:href="options.html#opt-services.tandoor-recipes.enable">services.tandoor-recipes</link>. + </para> + </listitem> + <listitem> + <para> <link xlink:href="https://hbase.apache.org/">HBase cluster</link>, a distributed, scalable, big data store. Available as @@ -315,6 +322,15 @@ </listitem> <listitem> <para> + <link xlink:href="https://github.com/tmate-io/tmate-ssh-server">tmate-ssh-server</link>, + server side part of + <link xlink:href="https://tmate.io/">tmate</link>. Available + as + <link linkend="opt-services.tmate-ssh-server.enable">services.tmate-ssh-server</link>. + </para> + </listitem> + <listitem> + <para> <link xlink:href="https://www.grafana.com/oss/tempo/">Grafana Tempo</link>, a distributed tracing store. Available as <link linkend="opt-services.tempo.enable">services.tempo</link>. @@ -505,14 +521,6 @@ </listitem> <listitem> <para> - The (previously undocumented) Nixpkgs configuration option - <literal>checkMeta</literal> now defaults to - <literal>true</literal>. This may cause evaluation failures - for packages with incorrect <literal>meta</literal> attribute. - </para> - </listitem> - <listitem> - <para> xow package removed along with the <literal>hardware.xow</literal> module, due to the project being deprecated in favor of <literal>xone</literal>, which is @@ -530,6 +538,16 @@ </listitem> <listitem> <para> + <literal>teleport</literal> has been upgraded to major version + 10. Please see upstream + <link xlink:href="https://goteleport.com/docs/ver/10.0/management/operations/upgrading/">upgrade + instructions</link> and + <link xlink:href="https://goteleport.com/docs/ver/10.0/changelog/#1000">release + notes</link>. + </para> + </listitem> + <listitem> + <para> lemmy module option <literal>services.lemmy.settings.database.createLocally</literal> moved to @@ -769,6 +787,13 @@ </listitem> <listitem> <para> + The Wordpress module got support for installing language packs + through + <literal>services.wordpress.sites.<site>.languages</literal>. + </para> + </listitem> + <listitem> + <para> There is a new module for the <literal>thunar</literal> program (the Xfce file manager), which depends on the <literal>xfconf</literal> dbus service, and also has a dbus diff --git a/nixos/doc/manual/release-notes/rl-2211.section.md b/nixos/doc/manual/release-notes/rl-2211.section.md index dcbe545a626c..37b0db8a8ce1 100644 --- a/nixos/doc/manual/release-notes/rl-2211.section.md +++ b/nixos/doc/manual/release-notes/rl-2211.section.md @@ -72,6 +72,8 @@ In addition to numerous new and upgraded packages, this release has the followin - [Komga](https://komga.org/), a free and open source comics/mangas media server. Available as [services.komga](#opt-services.komga.enable). +- [Tandoor Recipes](https://tandoor.dev), a self-hosted multi-tenant recipe collection. Available as [services.tandoor-recipes](options.html#opt-services.tandoor-recipes.enable). + - [HBase cluster](https://hbase.apache.org/), a distributed, scalable, big data store. Available as [services.hadoop.hbase](options.html#opt-services.hadoop.hbase.enable). - [Sachet](https://github.com/messagebird/sachet/), an SMS alerting tool for the Prometheus Alertmanager. Available as [services.prometheus.sachet](#opt-services.prometheus.sachet.enable). @@ -108,6 +110,8 @@ In addition to numerous new and upgraded packages, this release has the followin - [go-autoconfig](https://github.com/L11R/go-autoconfig), IMAP/SMTP autodiscover server. Available as [services.go-autoconfig](#opt-services.go-autoconfig.enable). +- [tmate-ssh-server](https://github.com/tmate-io/tmate-ssh-server), server side part of [tmate](https://tmate.io/). Available as [services.tmate-ssh-server](#opt-services.tmate-ssh-server.enable). + - [Grafana Tempo](https://www.grafana.com/oss/tempo/), a distributed tracing store. Available as [services.tempo](#opt-services.tempo.enable). - [AusweisApp2](https://www.ausweisapp.bund.de/), the authentication software for the German ID card. Available as [programs.ausweisapp](#opt-programs.ausweisapp.enable). @@ -172,13 +176,12 @@ Available as [services.patroni](options.html#opt-services.patroni.enable). - riak package removed along with `services.riak` module, due to lack of maintainer to update the package. -- The (previously undocumented) Nixpkgs configuration option `checkMeta` now defaults to `true`. This may cause evaluation - failures for packages with incorrect `meta` attribute. - - xow package removed along with the `hardware.xow` module, due to the project being deprecated in favor of `xone`, which is available via the `hardware.xone` module. - dd-agent package removed along with the `services.dd-agent` module, due to the project being deprecated in favor of `datadog-agent`, which is available via the `services.datadog-agent` module. +- `teleport` has been upgraded to major version 10. Please see upstream [upgrade instructions](https://goteleport.com/docs/ver/10.0/management/operations/upgrading/) and [release notes](https://goteleport.com/docs/ver/10.0/changelog/#1000). + - lemmy module option `services.lemmy.settings.database.createLocally` moved to `services.lemmy.database.createLocally`. @@ -254,6 +257,8 @@ Available as [services.patroni](options.html#opt-services.patroni.enable). - There is a new module for AMD SEV CPU functionality, which grants access to the hardware. +- The Wordpress module got support for installing language packs through `services.wordpress.sites.<site>.languages`. + - There is a new module for the `thunar` program (the Xfce file manager), which depends on the `xfconf` dbus service, and also has a dbus service and a systemd unit. The option `services.xserver.desktopManager.xfce.thunarPlugins` has been renamed to `programs.thunar.plugins`, and in a future release it may be removed. - There is a new module for the `xfconf` program (the Xfce configuration storage system), which has a dbus service. diff --git a/nixos/lib/make-multi-disk-zfs-image.nix b/nixos/lib/make-multi-disk-zfs-image.nix index 0a894c8b9888..f9046a485a7d 100644 --- a/nixos/lib/make-multi-disk-zfs-image.nix +++ b/nixos/lib/make-multi-disk-zfs-image.nix @@ -143,13 +143,6 @@ let properties ); - featuresToProperties = features: - lib.listToAttrs - (builtins.map (feature: { - name = "feature@${feature}"; - value = "enabled"; - }) features); - createDatasets = let datasetlist = lib.mapAttrsToList lib.nameValuePair datasets; diff --git a/nixos/lib/make-options-doc/default.nix b/nixos/lib/make-options-doc/default.nix index 43dbff0e68dd..6a1bb868c20d 100644 --- a/nixos/lib/make-options-doc/default.nix +++ b/nixos/lib/make-options-doc/default.nix @@ -26,6 +26,8 @@ # If you include more than one option list into a document, you need to # provide different ids. , variablelistId ? "configuration-variable-list" + # Strig to prefix to the option XML/HTML id attributes. +, optionIdPrefix ? "opt-" , revision ? "" # Specify revision for the options # a set of options the docs we are generating will be merged into, as if by recursiveUpdate. # used to split the options doc build into a static part (nixos/modules) and a dynamic part @@ -183,6 +185,7 @@ in rec { --stringparam documentType '${documentType}' \ --stringparam revision '${revision}' \ --stringparam variablelistId '${variablelistId}' \ + --stringparam optionIdPrefix '${optionIdPrefix}' \ -o intermediate.xml ${./options-to-docbook.xsl} sorted.xml ${pkgs.libxslt.bin}/bin/xsltproc \ -o "$out" ${./postprocess-option-descriptions.xsl} intermediate.xml diff --git a/nixos/lib/make-options-doc/options-to-docbook.xsl b/nixos/lib/make-options-doc/options-to-docbook.xsl index 978d5e2468a8..d5b921b1dedb 100644 --- a/nixos/lib/make-options-doc/options-to-docbook.xsl +++ b/nixos/lib/make-options-doc/options-to-docbook.xsl @@ -15,6 +15,7 @@ <xsl:param name="documentType" /> <xsl:param name="program" /> <xsl:param name="variablelistId" /> + <xsl:param name="optionIdPrefix" /> <xsl:template match="/expr/list"> @@ -36,7 +37,7 @@ <xsl:attribute name="id" namespace="http://www.w3.org/XML/1998/namespace"><xsl:value-of select="$variablelistId"/></xsl:attribute> <xsl:for-each select="attrs"> <xsl:variable name="id" select=" - concat('opt-', + concat($optionIdPrefix, translate( attr[@name = 'name']/string/@value, '*< >[]:', diff --git a/nixos/lib/make-single-disk-zfs-image.nix b/nixos/lib/make-single-disk-zfs-image.nix index 98150584fb3e..ef3b1c0e2842 100644 --- a/nixos/lib/make-single-disk-zfs-image.nix +++ b/nixos/lib/make-single-disk-zfs-image.nix @@ -131,15 +131,6 @@ let properties ); - featuresToProperties = features: - lib.listToAttrs - (builtins.map - (feature: { - name = "feature@${feature}"; - value = "enabled"; - }) - features); - createDatasets = let datasetlist = lib.mapAttrsToList lib.nameValuePair datasets; diff --git a/nixos/lib/qemu-common.nix b/nixos/lib/qemu-common.nix index 3f4d674e9a93..a8ed27dd6091 100644 --- a/nixos/lib/qemu-common.nix +++ b/nixos/lib/qemu-common.nix @@ -19,7 +19,7 @@ rec { ]; qemuSerialDevice = - if pkgs.stdenv.hostPlatform.isx86 || pkgs.stdenv.hostPlatform.isRiscV then "ttyS0" + if with pkgs.stdenv.hostPlatform; isx86 || isMips64 || isRiscV then "ttyS0" else if (with pkgs.stdenv.hostPlatform; isAarch || isPower) then "ttyAMA0" else throw "Unknown QEMU serial device for system '${pkgs.stdenv.hostPlatform.system}'"; diff --git a/nixos/lib/testing/driver.nix b/nixos/lib/testing/driver.nix index 04e99f9e21d6..fb181c1d7e9a 100644 --- a/nixos/lib/testing/driver.nix +++ b/nixos/lib/testing/driver.nix |