treewide: fix mkEnableOption usage

+14 -9
nixos/modules/misc/mandoc.nix
···
{option}`documentation.man.mandoc.manPath` to an empty list (`[]`).
'';
};
-
output.fragment = lib.mkEnableOption ''
-
Omit the <!DOCTYPE> declaration and the <html>, <head>, and <body>
-
elements and only emit the subtree below the <body> element in HTML
-
output of {manpage}`mandoc(1)`. The style argument will be ignored.
-
This is useful when embedding manual content within existing documents.
-
'';
output.includes = lib.mkOption {
type = with lib.types; nullOr str;
default = null;
···
'';
};
output.toc = lib.mkEnableOption ''
-
In HTML output of {manpage}`mandoc(1)`, If an input file contains
-
at least two non-standard sections, print a table of contents near
-
the beginning of the output.
'';
output.width = lib.mkOption {
type = with lib.types; nullOr int;
···
{option}`documentation.man.mandoc.manPath` to an empty list (`[]`).
'';
};
+
output.fragment = lib.mkOption {
+
type = lib.types.bool;
+
default = false;
+
example = true;
+
description = ''
+
Whether to omit the <!DOCTYPE> declaration and the <html>, <head>, and <body>
+
elements and only emit the subtree below the <body> element in HTML
+
output of {manpage}`mandoc(1)`. The style argument will be ignored.
+
This is useful when embedding manual content within existing documents.
+
'';
+
};
output.includes = lib.mkOption {
type = with lib.types; nullOr str;
default = null;
···
'';
};
output.toc = lib.mkEnableOption ''
+
printing a table of contents near the beginning of the HTML output
+
of {manpage}`mandoc(1)` if an input file contains at least two
+
non-standard sections
'';
output.width = lib.mkOption {
type = with lib.types; nullOr int;
+1 -3
nixos/modules/programs/dublin-traceroute.nix
···
options = {
programs.dublin-traceroute = {
-
enable = lib.mkEnableOption ''
-
dublin-traceroute, add it to the global environment and configure a setcap wrapper for it.
-
'';
package = lib.mkPackageOption pkgs "dublin-traceroute" { };
};
···
options = {
programs.dublin-traceroute = {
+
enable = lib.mkEnableOption "dublin-traceroute (including setcap wrapper)";
package = lib.mkPackageOption pkgs "dublin-traceroute" { };
};
+1 -1
nixos/modules/programs/joycond-cemuhook.nix
···
{ lib, pkgs, config, ... }:
{
options.programs.joycond-cemuhook = {
-
enable = lib.mkEnableOption "joycond-cemuhook, a program to enable support for cemuhook's UDP protocol for joycond devices.";
};
config = lib.mkIf config.programs.joycond-cemuhook.enable {
···
{ lib, pkgs, config, ... }:
{
options.programs.joycond-cemuhook = {
+
enable = lib.mkEnableOption "joycond-cemuhook, a program to enable support for cemuhook's UDP protocol for joycond devices";
};
config = lib.mkIf config.programs.joycond-cemuhook.enable {
+1 -1
nixos/modules/programs/mouse-actions.nix
···
{
options.programs.mouse-actions = {
enable = lib.mkEnableOption ''
-
mouse-actions udev rules. This is a prerequisite for using mouse-actions without being root.
'';
};
config = lib.mkIf cfg.enable {
···
{
options.programs.mouse-actions = {
enable = lib.mkEnableOption ''
+
mouse-actions udev rules. This is a prerequisite for using mouse-actions without being root
'';
};
config = lib.mkIf cfg.enable {
+3 -3
nixos/modules/security/ca.nix
···
security.pki.useCompatibleBundle = mkEnableOption ''usage of a compatibility bundle.
-
Such a bundle consist exclusively of `BEGIN CERTIFICATE` and no `BEGIN TRUSTED CERTIFICATE`,
-
which is a OpenSSL specific PEM format.
It is known to be incompatible with certain software stacks.
Nevertheless, enabling this will strip all additional trust rules provided by the
-
certificates themselves, this can have security consequences depending on your usecases.
'';
security.pki.certificateFiles = mkOption {
···
security.pki.useCompatibleBundle = mkEnableOption ''usage of a compatibility bundle.
+
Such a bundle consists exclusively of `BEGIN CERTIFICATE` and no `BEGIN TRUSTED CERTIFICATE`,
+
which is an OpenSSL specific PEM format.
It is known to be incompatible with certain software stacks.
Nevertheless, enabling this will strip all additional trust rules provided by the
+
certificates themselves. This can have security consequences depending on your usecases
'';
security.pki.certificateFiles = mkOption {
+1 -1
nixos/modules/security/pam.nix
···
the dp9ik pam module provided by tlsclient.
If set, users can be authenticated against the 9front
-
authentication server given in {option}`security.pam.dp9ik.authserver`.
'';
control = mkOption {
default = "sufficient";
···
the dp9ik pam module provided by tlsclient.
If set, users can be authenticated against the 9front
+
authentication server given in {option}`security.pam.dp9ik.authserver`
'';
control = mkOption {
default = "sufficient";
+1 -1
nixos/modules/security/sudo-rs.nix
···
enable = mkEnableOption ''
a memory-safe implementation of the {command}`sudo` command,
-
which allows non-root users to execute commands as root.
'';
package = mkPackageOption pkgs "sudo-rs" { };
···
enable = mkEnableOption ''
a memory-safe implementation of the {command}`sudo` command,
+
which allows non-root users to execute commands as root
'';
package = mkPackageOption pkgs "sudo-rs" { };
+1 -1
nixos/modules/services/databases/memcached.nix
···
description = "The port to bind to.";
};
-
enableUnixSocket = mkEnableOption "Unix Domain Socket at /run/memcached/memcached.sock instead of listening on an IP address and port. The `listen` and `port` options are ignored.";
maxMemory = mkOption {
type = types.ints.unsigned;
···
description = "The port to bind to.";
};
+
enableUnixSocket = mkEnableOption "Unix Domain Socket at /run/memcached/memcached.sock instead of listening on an IP address and port. The `listen` and `port` options are ignored";
maxMemory = mkOption {
type = types.ints.unsigned;
+1 -1
nixos/modules/services/matrix/mautrix-signal.nix
···
in
{
options.services.mautrix-signal = {
-
enable = lib.mkEnableOption "mautrix-signal, a Matrix-Signal puppeting bridge.";
settings = lib.mkOption {
apply = lib.recursiveUpdate defaultConfig;
···
in
{
options.services.mautrix-signal = {
+
enable = lib.mkEnableOption "mautrix-signal, a Matrix-Signal puppeting bridge";
settings = lib.mkOption {
apply = lib.recursiveUpdate defaultConfig;
+1 -1
nixos/modules/services/matrix/mautrix-whatsapp.nix
···
in {
options.services.mautrix-whatsapp = {
-
enable = lib.mkEnableOption "mautrix-whatsapp, a puppeting/relaybot bridge between Matrix and WhatsApp.";
settings = lib.mkOption {
type = settingsFormat.type;
···
in {
options.services.mautrix-whatsapp = {
+
enable = lib.mkEnableOption "mautrix-whatsapp, a puppeting/relaybot bridge between Matrix and WhatsApp";
settings = lib.mkOption {
type = settingsFormat.type;
+1 -1
nixos/modules/services/misc/mqtt2influxdb.nix
···
in {
options = {
services.mqtt2influxdb = {
-
enable = mkEnableOption "BigClown MQTT to InfluxDB bridge.";
package = mkPackageOption pkgs ["python3Packages" "mqtt2influxdb"] {};
environmentFiles = mkOption {
type = types.listOf types.path;
···
in {
options = {
services.mqtt2influxdb = {
+
enable = mkEnableOption "BigClown MQTT to InfluxDB bridge";
package = mkPackageOption pkgs ["python3Packages" "mqtt2influxdb"] {};
environmentFiles = mkOption {
type = types.listOf types.path;
+1 -1
nixos/modules/services/misc/paperless.nix
···
effectively never complete due to running into timeouts.
This sets `OMP_NUM_THREADS` to `1` in order to mitigate the issue. See
-
https://github.com/NixOS/nixpkgs/issues/240591 for more information.
'' // mkOption { default = true; };
};
···
effectively never complete due to running into timeouts.
This sets `OMP_NUM_THREADS` to `1` in order to mitigate the issue. See
+
https://github.com/NixOS/nixpkgs/issues/240591 for more information
'' // mkOption { default = true; };
};
+1 -1
nixos/modules/services/misc/portunus.nix
···
To activate dex, first a search user must be created in the Portunus web ui
and then the password must to be set as the `DEX_SEARCH_USER_PASSWORD` environment variable
-
in the [](#opt-services.dex.environmentFile) setting.
'';
oidcClients = mkOption {
···
To activate dex, first a search user must be created in the Portunus web ui
and then the password must to be set as the `DEX_SEARCH_USER_PASSWORD` environment variable
+
in the [](#opt-services.dex.environmentFile) setting
'';
oidcClients = mkOption {
+1 -1
nixos/modules/services/misc/spice-autorandr.nix
···
{
options = {
services.spice-autorandr = {
-
enable = lib.mkEnableOption "spice-autorandr service that will automatically resize display to match SPICE client window size.";
package = lib.mkPackageOption pkgs "spice-autorandr" { };
};
};
···
{
options = {
services.spice-autorandr = {
+
enable = lib.mkEnableOption "spice-autorandr service that will automatically resize display to match SPICE client window size";
package = lib.mkPackageOption pkgs "spice-autorandr" { };
};
};
+1 -1
nixos/modules/services/monitoring/rustdesk-server.nix
···
UDPPorts = [21116];
in {
options.services.rustdesk-server = with lib; with types; {
-
enable = mkEnableOption "RustDesk, a remote access and remote control software, allowing maintenance of computers and other devices.";
package = mkPackageOption pkgs "rustdesk-server" {};
···
UDPPorts = [21116];
in {
options.services.rustdesk-server = with lib; with types; {
+
enable = mkEnableOption "RustDesk, a remote access and remote control software, allowing maintenance of computers and other devices";
package = mkPackageOption pkgs "rustdesk-server" {};
+1 -1
nixos/modules/services/monitoring/thanos.nix
···
};
store = paramsToOptions params.store // {
-
enable = mkEnableOption "the Thanos store node giving access to blocks in a bucket provider.";
arguments = mkArgumentsOption "store";
};
···
};
store = paramsToOptions params.store // {
+
enable = mkEnableOption "the Thanos store node giving access to blocks in a bucket provider";
arguments = mkArgumentsOption "store";
};
+2 -2
nixos/modules/services/monitoring/ups.nix
···
power.ups = {
enable = mkEnableOption ''
-
Enables support for Power Devices, such as Uninterruptible Power
-
Supplies, Power Distribution Units and Solar Controllers.
'';
mode = mkOption {
···
power.ups = {
enable = mkEnableOption ''
+
support for Power Devices, such as Uninterruptible Power
+
Supplies, Power Distribution Units and Solar Controllers
'';
mode = mkOption {
+1 -1
nixos/modules/services/network-filesystems/openafs/server.nix
···
enableFabs = mkEnableOption ''
FABS, the flexible AFS backup system. It stores volumes as dump files, relying on other
-
pre-existing backup solutions for handling them.
'';
buserverArgs = mkOption {
···
enableFabs = mkEnableOption ''
FABS, the flexible AFS backup system. It stores volumes as dump files, relying on other
+
pre-existing backup solutions for handling them
'';
buserverArgs = mkOption {
+1 -1
nixos/modules/services/network-filesystems/samba-wsdd.nix
···
services.samba-wsdd = {
enable = mkEnableOption ''
Web Services Dynamic Discovery host daemon. This enables (Samba) hosts, like your local NAS device,
-
to be found by Web Service Discovery Clients like Windows.
'';
interface = mkOption {
type = types.nullOr types.str;
···
services.samba-wsdd = {
enable = mkEnableOption ''
Web Services Dynamic Discovery host daemon. This enables (Samba) hosts, like your local NAS device,
+
to be found by Web Service Discovery Clients like Windows
'';
interface = mkOption {
type = types.nullOr types.str;
+3 -3
nixos/modules/services/networking/gns3-server.nix
···
};
dynamips = {
-
enable = lib.mkEnableOption ''Whether to enable Dynamips support.'';
package = lib.mkPackageOptionMD pkgs "dynamips" { };
};
ubridge = {
-
enable = lib.mkEnableOption ''Whether to enable uBridge support.'';
package = lib.mkPackageOptionMD pkgs "ubridge" { };
};
vpcs = {
-
enable = lib.mkEnableOption ''Whether to enable VPCS support.'';
package = lib.mkPackageOptionMD pkgs "vpcs" { };
};
};
···
};
dynamips = {
+
enable = lib.mkEnableOption ''Dynamips support'';
package = lib.mkPackageOptionMD pkgs "dynamips" { };
};
ubridge = {
+
enable = lib.mkEnableOption ''uBridge support'';
package = lib.mkPackageOptionMD pkgs "ubridge" { };
};
vpcs = {
+
enable = lib.mkEnableOption ''VPCS support'';
package = lib.mkPackageOptionMD pkgs "vpcs" { };
};
};
+1 -1
nixos/modules/services/networking/haproxy.nix
···
options = {
services.haproxy = {
-
enable = mkEnableOption "HAProxy, the reliable, high performance TCP/HTTP load balancer.";
package = mkPackageOption pkgs "haproxy" { };
···
options = {
services.haproxy = {
+
enable = mkEnableOption "HAProxy, the reliable, high performance TCP/HTTP load balancer";
package = mkPackageOption pkgs "haproxy" { };
+2 -2
nixos/modules/services/networking/hylafax/options.nix
···
};
faxqclean.enable.spoolInit = mkEnableOption ''
-
Purge old files from the spooling area with
{file}`faxqclean`
-
each time the spooling area is initialized.
'';
faxqclean.enable.frequency = mkOption {
type = nullOr nonEmptyStr;
···
};
faxqclean.enable.spoolInit = mkEnableOption ''
+
purging old files from the spooling area with
{file}`faxqclean`
+
each time the spooling area is initialized
'';
faxqclean.enable.frequency = mkOption {
type = nullOr nonEmptyStr;
+1 -1
nixos/modules/services/networking/netbird/dashboard.nix
···
package = mkPackageOption pkgs "netbird-dashboard" { };
-
enableNginx = mkEnableOption "Nginx reverse-proxy to serve the dashboard.";
domain = mkOption {
type = str;
···
package = mkPackageOption pkgs "netbird-dashboard" { };
+
enableNginx = mkEnableOption "Nginx reverse-proxy to serve the dashboard";
domain = mkOption {
type = str;
+2 -2
nixos/modules/services/networking/netbird/management.nix
···
{
options.services.netbird.server.management = {
-
enable = mkEnableOption "Netbird Management Service.";
package = mkPackageOption pkgs "netbird" { };
···
description = "Log level of the netbird services.";
};
-
enableNginx = mkEnableOption "Nginx reverse-proxy for the netbird management service.";
};
config = mkIf cfg.enable {
···
{
options.services.netbird.server.management = {
+
enable = mkEnableOption "Netbird Management Service";
package = mkPackageOption pkgs "netbird" { };
···
description = "Log level of the netbird services.";
};
+
enableNginx = mkEnableOption "Nginx reverse-proxy for the netbird management service";
};
config = mkIf cfg.enable {
+1 -1
nixos/modules/services/networking/netbird/server.nix
···
options.services.netbird.server = {
enable = mkEnableOption "Netbird Server stack, comprising the dashboard, management API and signal service";
-
enableNginx = mkEnableOption "Nginx reverse-proxy for the netbird server services.";
domain = mkOption {
type = str;
···
options.services.netbird.server = {
enable = mkEnableOption "Netbird Server stack, comprising the dashboard, management API and signal service";
+
enableNginx = mkEnableOption "Nginx reverse-proxy for the netbird server services";
domain = mkOption {
type = str;
+1 -1
nixos/modules/services/networking/netbird/signal.nix
···
package = mkPackageOption pkgs "netbird" { };
-
enableNginx = mkEnableOption "Nginx reverse-proxy for the netbird signal service.";
domain = mkOption {
type = str;
···
package = mkPackageOption pkgs "netbird" { };
+
enableNginx = mkEnableOption "Nginx reverse-proxy for the netbird signal service";
domain = mkOption {
type = str;
+1 -1
nixos/modules/services/networking/networkd-dispatcher.nix
···
enable = mkEnableOption ''
Networkd-dispatcher service for systemd-networkd connection status
change. See [https://gitlab.com/craftyguy/networkd-dispatcher](upstream instructions)
-
for usage.
'';
rules = mkOption {
···
enable = mkEnableOption ''
Networkd-dispatcher service for systemd-networkd connection status
change. See [https://gitlab.com/craftyguy/networkd-dispatcher](upstream instructions)
+
for usage
'';
rules = mkOption {
+1 -3
nixos/modules/services/networking/nncp.nix
···
[](#opt-programs.nncp.settings)
'';
socketActivation = {
-
enable = mkEnableOption ''
-
Whether to run nncp-daemon persistently or socket-activated.
-
'';
listenStreams = mkOption {
type = with types; listOf str;
description = ''
···
[](#opt-programs.nncp.settings)
'';
socketActivation = {
+
enable = mkEnableOption "socket activation for nncp-daemon";
listenStreams = mkOption {
type = with types; listOf str;
description = ''
+1 -1
nixos/modules/services/security/fail2ban.nix
···
'';
type = with types; attrsOf (either lines (submodule ({ name, ... }: {
options = {
-
enabled = mkEnableOption "this jail." // {
default = true;
readOnly = name == "DEFAULT";
};
···
'';
type = with types; attrsOf (either lines (submodule ({ name, ... }: {
options = {
+
enabled = mkEnableOption "this jail" // {
default = true;
readOnly = name == "DEFAULT";
};
+1 -1
nixos/modules/services/security/haveged.nix
···
enable = mkEnableOption ''
haveged entropy daemon, which refills /dev/random when low.
-
NOTE: does nothing on kernels newer than 5.6.
'';
# source for the note https://github.com/jirka-h/haveged/issues/57
···
enable = mkEnableOption ''
haveged entropy daemon, which refills /dev/random when low.
+
NOTE: does nothing on kernels newer than 5.6
'';
# source for the note https://github.com/jirka-h/haveged/issues/57
+1 -1
nixos/modules/services/web-apps/audiobookshelf.nix
···
{
options = {
services.audiobookshelf = {
-
enable = mkEnableOption "Audiobookshelf, self-hosted audiobook and podcast server.";
package = mkPackageOption pkgs "audiobookshelf" { };
···
{
options = {
services.audiobookshelf = {
+
enable = mkEnableOption "Audiobookshelf, self-hosted audiobook and podcast server";
package = mkPackageOption pkgs "audiobookshelf" { };
+1 -1
nixos/modules/services/web-apps/jitsi-meet.nix
···
'';
};
-
caddy.enable = mkEnableOption "Whether to enable caddy reverse proxy to expose jitsi-meet";
prosody.enable = mkOption {
type = bool;
···
'';
};
+
caddy.enable = mkEnableOption "caddy reverse proxy to expose jitsi-meet";
prosody.enable = mkOption {
type = bool;
+2 -2
nixos/modules/services/web-apps/nextcloud.nix
···
implementation into the virtual filesystem.
Further details about this feature can be found in the
-
[upstream documentation](https://docs.nextcloud.com/server/22/admin_manual/configuration_files/primary_storage.html).
'';
bucket = mkOption {
type = types.str;
···
This is used by the theming app and for generating previews of certain images (e.g. SVG and HEIF).
You may want to disable it for increased security. In that case, previews will still be available
for some images (e.g. JPEG and PNG).
-
See <https://github.com/nextcloud/server/issues/13099>.
'' // {
default = true;
};
···
implementation into the virtual filesystem.
Further details about this feature can be found in the
+
[upstream documentation](https://docs.nextcloud.com/server/22/admin_manual/configuration_files/primary_storage.html)
'';
bucket = mkOption {
type = types.str;
···
This is used by the theming app and for generating previews of certain images (e.g. SVG and HEIF).
You may want to disable it for increased security. In that case, previews will still be available
for some images (e.g. JPEG and PNG).
+
See <https://github.com/nextcloud/server/issues/13099>
'' // {
default = true;
};
+1 -1
nixos/modules/services/web-apps/pretix.nix
···
};
options.services.pretix = {
-
enable = mkEnableOption "Pretix, a ticket shop application for conferences, festivals, concerts, etc.";
package = mkPackageOption pkgs "pretix" { };
···
};
options.services.pretix = {
+
enable = mkEnableOption "Pretix, a ticket shop application for conferences, festivals, concerts, etc";
package = mkPackageOption pkgs "pretix" { };
+1 -1
nixos/modules/services/web-apps/silverbullet.nix
···
{
options = {
services.silverbullet = {
-
enable = lib.mkEnableOption "Silverbullet, an open-source, self-hosted, offline-capable Personal Knowledge Management (PKM) web application.";
package = lib.mkPackageOptionMD pkgs "silverbullet" { };
···
{
options = {
services.silverbullet = {
+
enable = lib.mkEnableOption "Silverbullet, an open-source, self-hosted, offline-capable Personal Knowledge Management (PKM) web application";
package = lib.mkPackageOptionMD pkgs "silverbullet" { };
+2 -2
nixos/modules/services/web-apps/suwayomi-server.nix
···
{
options = {
services.suwayomi-server = {
-
enable = mkEnableOption "Suwayomi, a free and open source manga reader server that runs extensions built for Tachiyomi.";
package = lib.mkPackageOptionMD pkgs "suwayomi-server" { };
···
};
basicAuthEnabled = mkEnableOption ''
-
Add basic access authentication to Suwayomi-Server.
Enabling this option is useful when hosting on a public network/the Internet
'';
···
{
options = {
services.suwayomi-server = {
+
enable = mkEnableOption "Suwayomi, a free and open source manga reader server that runs extensions built for Tachiyomi";
package = lib.mkPackageOptionMD pkgs "suwayomi-server" { };
···
};
basicAuthEnabled = mkEnableOption ''
+
basic access authentication for Suwayomi-Server.
Enabling this option is useful when hosting on a public network/the Internet
'';
+3 -3
nixos/modules/services/web-servers/nginx/default.nix
···
'';
description = "Declarative vhost config";
};
-
validateConfigFile = lib.mkEnableOption ''
-
Validate configuration with pkgs.writeNginxConfig.
-
'' // { default = true; };
};
};
···
'';
description = "Declarative vhost config";
};
+
validateConfigFile = lib.mkEnableOption "validating configuration with pkgs.writeNginxConfig" // {
+
default = true;
+
};
};
};
+2 -2
nixos/modules/testing/test-instrumentation.nix
···
options.testing = {
initrdBackdoor = lib.mkEnableOption ''
-
enable backdoor.service in initrd. Requires
boot.initrd.systemd.enable to be enabled. Boot will pause in
stage 1 at initrd.target, and will listen for commands from the
Machine python interface, just like stage 2 normally does. This
enables commands to be sent to test and debug stage 1. Use
-
machine.switch_root() to leave stage 1 and proceed to stage 2.
'';
};
···
options.testing = {
initrdBackdoor = lib.mkEnableOption ''
+
backdoor.service in initrd. Requires
boot.initrd.systemd.enable to be enabled. Boot will pause in
stage 1 at initrd.target, and will listen for commands from the
Machine python interface, just like stage 2 normally does. This
enables commands to be sent to test and debug stage 1. Use
+
machine.switch_root() to leave stage 1 and proceed to stage 2
'';
};
+1 -1
nixos/modules/virtualisation/incus.nix
···
Users in the "incus-admin" group can interact with
the daemon (e.g. to start or stop containers) using the
-
{command}`incus` command line tool, among others.
'';
package = lib.mkPackageOption pkgs "incus-lts" { };
···
Users in the "incus-admin" group can interact with
the daemon (e.g. to start or stop containers) using the
+
{command}`incus` command line tool, among others
'';
package = lib.mkPackageOption pkgs "incus-lts" { };
+1 -3
nixos/modules/virtualisation/multipass.nix
···
{
options = {
virtualisation.multipass = {
-
enable = lib.mkEnableOption ''
-
Multipass, a simple manager for virtualised Ubuntu instances.
-
'';
logLevel = lib.mkOption {
type = lib.types.enum [ "error" "warning" "info" "debug" "trace" ];
···
{
options = {
virtualisation.multipass = {
+
enable = lib.mkEnableOption "Multipass, a simple manager for virtualised Ubuntu instances";
logLevel = lib.mkOption {
type = lib.types.enum [ "error" "warning" "info" "debug" "trace" ];
+1 -1
nixos/modules/virtualisation/qemu-vm.nix
···
};
virtualisation.tpm = {
-
enable = mkEnableOption "a TPM device in the virtual machine with a driver, using swtpm.";
package = mkPackageOption cfg.host.pkgs "swtpm" { };
···
};
virtualisation.tpm = {
+
enable = mkEnableOption "a TPM device in the virtual machine with a driver, using swtpm";
package = mkPackageOption cfg.host.pkgs "swtpm" { };