summaryrefslogtreecommitdiffstats
path: root/nixos
diff options
context:
space:
mode:
Diffstat (limited to 'nixos')
-rw-r--r--nixos/doc/manual/default.nix1
-rw-r--r--nixos/doc/manual/development/running-nixos-tests-interactively.section.md4
-rw-r--r--nixos/doc/manual/development/writing-nixos-tests.section.md12
-rw-r--r--nixos/doc/manual/from_md/development/running-nixos-tests-interactively.section.xml4
-rw-r--r--nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml12
-rw-r--r--nixos/doc/manual/from_md/release-notes/rl-2211.section.xml41
-rw-r--r--nixos/doc/manual/release-notes/rl-2211.section.md11
-rw-r--r--nixos/lib/make-multi-disk-zfs-image.nix7
-rw-r--r--nixos/lib/make-options-doc/default.nix3
-rw-r--r--nixos/lib/make-options-doc/options-to-docbook.xsl3
-rw-r--r--nixos/lib/make-single-disk-zfs-image.nix9
-rw-r--r--nixos/lib/qemu-common.nix2
-rw-r--r--nixos/lib/testing/driver.nix6
-rw-r--r--nixos/lib/testing/meta.nix4
-rw-r--r--nixos/lib/testing/name.nix2
-rw-r--r--nixos/lib/testing/nodes.nix8
-rw-r--r--nixos/modules/hardware/ckb-next.nix2
-rw-r--r--nixos/modules/hardware/xpadneo.nix2
-rw-r--r--nixos/modules/installer/cd-dvd/channel.nix1
-rw-r--r--nixos/modules/installer/tools/nixos-build-vms/build-vms.nix2
-rw-r--r--nixos/modules/module-list.nix4
-rw-r--r--nixos/modules/programs/rust-motd.nix2
-rw-r--r--nixos/modules/security/acme/default.nix8
-rw-r--r--nixos/modules/services/home-automation/home-assistant.nix29
-rw-r--r--nixos/modules/services/mail/nullmailer.nix4
-rw-r--r--nixos/modules/services/matrix/dendrite.nix19
-rw-r--r--nixos/modules/services/misc/tandoor-recipes.nix144
-rw-r--r--nixos/modules/services/network-filesystems/kubo.nix (renamed from nixos/modules/services/network-filesystems/ipfs.nix)65
-rw-r--r--nixos/modules/services/networking/firefox-syncserver.nix9
-rw-r--r--nixos/modules/services/networking/jitsi-videobridge.nix2
-rw-r--r--nixos/modules/services/networking/nix-serve.nix11
-rw-r--r--nixos/modules/services/networking/tmate-ssh-server.nix122
-rw-r--r--nixos/modules/services/networking/wireguard.nix16
-rw-r--r--nixos/modules/services/security/fail2ban.nix13
-rw-r--r--nixos/modules/services/web-apps/code-server.nix4
-rw-r--r--nixos/modules/services/web-apps/wordpress.nix29
-rw-r--r--nixos/modules/services/x11/desktop-managers/gnome.nix42
-rw-r--r--nixos/modules/services/x11/hardware/libinput.nix10
-rw-r--r--nixos/modules/system/boot/systemd.nix4
-rw-r--r--nixos/modules/system/boot/systemd/initrd.nix2
-rw-r--r--nixos/modules/tasks/filesystems/jfs.nix2
-rw-r--r--nixos/modules/tasks/network-interfaces.nix4
-rw-r--r--nixos/tests/acme.nix60
-rw-r--r--nixos/tests/all-tests.nix7
-rw-r--r--nixos/tests/k3s/multi-node.nix25
-rw-r--r--nixos/tests/k3s/single-node.nix15
-rw-r--r--nixos/tests/kubo.nix (renamed from nixos/tests/ipfs.nix)6
-rw-r--r--nixos/tests/ladybird.nix30
-rw-r--r--nixos/tests/make-test-python.nix4
-rw-r--r--nixos/tests/pgadmin4.nix4
-rw-r--r--nixos/tests/retroarch.nix4
-rw-r--r--nixos/tests/systemd-initrd-modprobe.nix17
-rw-r--r--nixos/tests/systemd-machinectl.nix3
-rw-r--r--nixos/tests/tandoor-recipes.nix43
-rw-r--r--nixos/tests/tmate-ssh-server.nix73
-rw-r--r--nixos/tests/vengi-tools.nix4
-rw-r--r--nixos/tests/xpadneo.nix18
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.&lt;name&gt;</literal></link>
+ <link linkend="test-opt-nodes"><literal>nodes.&lt;name&gt;</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.&lt;site&gt;.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,
'*&lt; >[]:',
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