about summary refs log tree commit diff
path: root/nixos/modules/virtualisation
diff options
context:
space:
mode:
Diffstat (limited to 'nixos/modules/virtualisation')
-rw-r--r--nixos/modules/virtualisation/amazon-init.nix2
-rw-r--r--nixos/modules/virtualisation/amazon-options.nix10
-rw-r--r--nixos/modules/virtualisation/anbox.nix14
-rw-r--r--nixos/modules/virtualisation/appvm.nix4
-rw-r--r--nixos/modules/virtualisation/azure-agent.nix6
-rw-r--r--nixos/modules/virtualisation/azure-image.nix4
-rw-r--r--nixos/modules/virtualisation/build-vm.nix4
-rw-r--r--nixos/modules/virtualisation/containerd.nix8
-rw-r--r--nixos/modules/virtualisation/containers.nix22
-rw-r--r--nixos/modules/virtualisation/cri-o.nix20
-rw-r--r--nixos/modules/virtualisation/digital-ocean-config.nix6
-rw-r--r--nixos/modules/virtualisation/digital-ocean-image.nix6
-rw-r--r--nixos/modules/virtualisation/digital-ocean-init.nix4
-rw-r--r--nixos/modules/virtualisation/docker-rootless.nix6
-rw-r--r--nixos/modules/virtualisation/docker.nix33
-rw-r--r--nixos/modules/virtualisation/ecs-agent.nix4
-rw-r--r--nixos/modules/virtualisation/google-compute-image.nix6
-rw-r--r--nixos/modules/virtualisation/hyperv-guest.nix4
-rw-r--r--nixos/modules/virtualisation/hyperv-image.nix6
-rw-r--r--nixos/modules/virtualisation/kvmgt.nix10
-rw-r--r--nixos/modules/virtualisation/libvirtd.nix50
-rw-r--r--nixos/modules/virtualisation/lxc.nix12
-rw-r--r--nixos/modules/virtualisation/lxcfs.nix2
-rw-r--r--nixos/modules/virtualisation/lxd-agent.nix2
-rw-r--r--nixos/modules/virtualisation/lxd.nix12
-rw-r--r--nixos/modules/virtualisation/multipass.nix6
-rw-r--r--nixos/modules/virtualisation/nixos-containers.nix71
-rw-r--r--nixos/modules/virtualisation/oci-containers.nix42
-rw-r--r--nixos/modules/virtualisation/openstack-options.nix10
-rw-r--r--nixos/modules/virtualisation/openvswitch.nix4
-rw-r--r--nixos/modules/virtualisation/parallels-guest.nix6
-rw-r--r--nixos/modules/virtualisation/podman/default.nix20
-rw-r--r--nixos/modules/virtualisation/podman/network-socket.nix16
-rw-r--r--nixos/modules/virtualisation/proxmox-image.nix30
-rw-r--r--nixos/modules/virtualisation/proxmox-lxc.nix6
-rw-r--r--nixos/modules/virtualisation/qemu-guest-agent.nix2
-rw-r--r--nixos/modules/virtualisation/qemu-vm.nix145
-rw-r--r--nixos/modules/virtualisation/rosetta.nix6
-rw-r--r--nixos/modules/virtualisation/spice-usb-redirection.nix2
-rw-r--r--nixos/modules/virtualisation/virtualbox-guest.nix8
-rw-r--r--nixos/modules/virtualisation/virtualbox-host.nix18
-rw-r--r--nixos/modules/virtualisation/virtualbox-image.nix28
-rw-r--r--nixos/modules/virtualisation/vmware-guest.nix4
-rw-r--r--nixos/modules/virtualisation/vmware-host.nix8
-rw-r--r--nixos/modules/virtualisation/vmware-image.nix10
-rw-r--r--nixos/modules/virtualisation/waydroid.nix2
-rw-r--r--nixos/modules/virtualisation/xe-guest-utilities.nix2
-rw-r--r--nixos/modules/virtualisation/xen-dom0.nix25
48 files changed, 342 insertions, 386 deletions
diff --git a/nixos/modules/virtualisation/amazon-init.nix b/nixos/modules/virtualisation/amazon-init.nix
index 8475097df07ca..612f6c5bc765a 100644
--- a/nixos/modules/virtualisation/amazon-init.nix
+++ b/nixos/modules/virtualisation/amazon-init.nix
@@ -60,7 +60,7 @@ in {
     enable = mkOption {
       default = true;
       type = types.bool;
-      description = lib.mdDoc ''
+      description = ''
         Enable or disable the amazon-init service.
       '';
     };
diff --git a/nixos/modules/virtualisation/amazon-options.nix b/nixos/modules/virtualisation/amazon-options.nix
index 3ea4a6cf78183..0eabcccfeced6 100644
--- a/nixos/modules/virtualisation/amazon-options.nix
+++ b/nixos/modules/virtualisation/amazon-options.nix
@@ -8,13 +8,13 @@ in {
         enable = lib.mkOption {
           default = false;
           internal = true;
-          description = lib.mdDoc ''
+          description = ''
             Whether the EC2 instance uses a ZFS root.
           '';
         };
 
         datasets = lib.mkOption {
-          description = lib.mdDoc ''
+          description = ''
             Datasets to create under the `tank` and `boot` zpools.
 
             **NOTE:** This option is used only at image creation time, and
@@ -27,13 +27,13 @@ in {
           type = types.attrsOf (types.submodule {
             options = {
               mount = lib.mkOption {
-                description = lib.mdDoc "Where to mount this dataset.";
+                description = "Where to mount this dataset.";
                 type = types.nullOr types.str;
                 default = null;
               };
 
               properties = lib.mkOption {
-                description = lib.mdDoc "Properties to set on this dataset.";
+                description = "Properties to set on this dataset.";
                 type = types.attrsOf types.str;
                 default = {};
               };
@@ -45,7 +45,7 @@ in {
         default = pkgs.stdenv.hostPlatform.isAarch64;
         defaultText = literalExpression "pkgs.stdenv.hostPlatform.isAarch64";
         internal = true;
-        description = lib.mdDoc ''
+        description = ''
           Whether the EC2 instance is using EFI.
         '';
       };
diff --git a/nixos/modules/virtualisation/anbox.nix b/nixos/modules/virtualisation/anbox.nix
index 523d9a9576ef3..d9ff01fb5ded2 100644
--- a/nixos/modules/virtualisation/anbox.nix
+++ b/nixos/modules/virtualisation/anbox.nix
@@ -10,7 +10,7 @@ let
     address = mkOption {
       default = addr;
       type = types.str;
-      description = lib.mdDoc ''
+      description = ''
         IPv${toString v} ${name} address.
       '';
     };
@@ -18,7 +18,7 @@ let
     prefixLength = mkOption {
       default = pref;
       type = types.addCheck types.int (n: n >= 0 && n <= (if v == 4 then 32 else 128));
-      description = lib.mdDoc ''
+      description = ''
         Subnet mask of the ${name} address, specified as the number of
         bits in the prefix (`${if v == 4 then "24" else "64"}`).
       '';
@@ -53,13 +53,13 @@ in
 
   options.virtualisation.anbox = {
 
-    enable = mkEnableOption (lib.mdDoc "Anbox");
+    enable = mkEnableOption "Anbox";
 
     image = mkOption {
       default = pkgs.anbox.image;
       defaultText = literalExpression "pkgs.anbox.image";
       type = types.package;
-      description = lib.mdDoc ''
+      description = ''
         Base android image for Anbox.
       '';
     };
@@ -67,7 +67,7 @@ in
     imageModifications = mkOption {
       default = "";
       type = types.lines;
-      description = lib.mdDoc ''
+      description = ''
         Commands to edit the image filesystem.
 
         This can be used to e.g. bundle a privileged F-Droid.
@@ -79,7 +79,7 @@ in
     extraInit = mkOption {
       type = types.lines;
       default = "";
-      description = lib.mdDoc ''
+      description = ''
         Extra shell commands to be run inside the container image during init.
       '';
     };
@@ -91,7 +91,7 @@ in
       dns = mkOption {
         default = "1.1.1.1";
         type = types.str;
-        description = lib.mdDoc ''
+        description = ''
           Container DNS server.
         '';
       };
diff --git a/nixos/modules/virtualisation/appvm.nix b/nixos/modules/virtualisation/appvm.nix
index 9fe2995d37a06..852244c5d98b3 100644
--- a/nixos/modules/virtualisation/appvm.nix
+++ b/nixos/modules/virtualisation/appvm.nix
@@ -13,13 +13,13 @@ in {
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           This enables AppVMs and related virtualisation settings.
         '';
       };
       user = mkOption {
         type = types.str;
-        description = lib.mdDoc ''
+        description = ''
           AppVM user login. Currently only AppVMs are supported for a single user only.
         '';
       };
diff --git a/nixos/modules/virtualisation/azure-agent.nix b/nixos/modules/virtualisation/azure-agent.nix
index ac4cd752615da..5b3b7080ea686 100644
--- a/nixos/modules/virtualisation/azure-agent.nix
+++ b/nixos/modules/virtualisation/azure-agent.nix
@@ -19,15 +19,15 @@ in
   options.virtualisation.azure.agent = {
     enable = mkOption {
       default = false;
-      description = lib.mdDoc "Whether to enable the Windows Azure Linux Agent.";
+      description = "Whether to enable the Windows Azure Linux Agent.";
     };
     verboseLogging = mkOption {
       default = false;
-      description = lib.mdDoc "Whether to enable verbose logging.";
+      description = "Whether to enable verbose logging.";
     };
     mountResourceDisk = mkOption {
       default = true;
-      description = lib.mdDoc "Whether the agent should format (ext4) and mount the resource disk to /mnt/resource.";
+      description = "Whether the agent should format (ext4) and mount the resource disk to /mnt/resource.";
     };
   };
 
diff --git a/nixos/modules/virtualisation/azure-image.nix b/nixos/modules/virtualisation/azure-image.nix
index d909680cca1ff..98678346a8fde 100644
--- a/nixos/modules/virtualisation/azure-image.nix
+++ b/nixos/modules/virtualisation/azure-image.nix
@@ -12,14 +12,14 @@ in
       type = with types; either (enum [ "auto" ]) int;
       default = "auto";
       example = 2048;
-      description = lib.mdDoc ''
+      description = ''
         Size of disk image. Unit is MB.
       '';
     };
     virtualisation.azureImage.contents = mkOption {
       type = with types; listOf attrs;
       default = [ ];
-      description = lib.mdDoc ''
+      description = ''
         Extra contents to add to the image.
       '';
     };
diff --git a/nixos/modules/virtualisation/build-vm.nix b/nixos/modules/virtualisation/build-vm.nix
index e94254416316b..7e279a27364da 100644
--- a/nixos/modules/virtualisation/build-vm.nix
+++ b/nixos/modules/virtualisation/build-vm.nix
@@ -25,7 +25,7 @@ in
   options = {
 
     virtualisation.vmVariant = mkOption {
-      description = lib.mdDoc ''
+      description = ''
         Machine configuration to be added for the vm script produced by `nixos-rebuild build-vm`.
       '';
       inherit (vmVariant) type;
@@ -34,7 +34,7 @@ in
     };
 
     virtualisation.vmVariantWithBootLoader = mkOption {
-      description = lib.mdDoc ''
+      description = ''
         Machine configuration to be added for the vm script produced by `nixos-rebuild build-vm-with-bootloader`.
       '';
       inherit (vmVariantWithBootLoader) type;
diff --git a/nixos/modules/virtualisation/containerd.nix b/nixos/modules/virtualisation/containerd.nix
index f6e3c83872986..ea89a994b172a 100644
--- a/nixos/modules/virtualisation/containerd.nix
+++ b/nixos/modules/virtualisation/containerd.nix
@@ -19,11 +19,11 @@ in
 {
 
   options.virtualisation.containerd = with lib.types; {
-    enable = lib.mkEnableOption (lib.mdDoc "containerd container runtime");
+    enable = lib.mkEnableOption "containerd container runtime";
 
     configFile = lib.mkOption {
       default = null;
-      description = lib.mdDoc ''
+      description = ''
        Path to containerd config file.
        Setting this option will override any configuration applied by the settings option.
       '';
@@ -33,14 +33,14 @@ in
     settings = lib.mkOption {
       type = settingsFormat.type;
       default = {};
-      description = lib.mdDoc ''
+      description = ''
         Verbatim lines to add to containerd.toml
       '';
     };
 
     args = lib.mkOption {
       default = {};
-      description = lib.mdDoc "extra args to append to the containerd cmdline";
+      description = "extra args to append to the containerd cmdline";
       type = attrsOf str;
     };
   };
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index b3d81078eb349..d726955307861 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -17,7 +17,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           This option enables the common /etc/containers configuration module.
         '';
       };
@@ -25,14 +25,14 @@ in
     ociSeccompBpfHook.enable = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc "Enable the OCI seccomp BPF hook";
+      description = "Enable the OCI seccomp BPF hook";
     };
 
     cdi = {
       dynamic.nvidia.enable = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           Enable dynamic CDI configuration for NVidia devices by running nvidia-container-toolkit on boot.
         '';
       };
@@ -40,7 +40,7 @@ in
       static = mkOption {
         type = types.attrs;
         default = { };
-        description = lib.mdDoc ''
+        description = ''
           Declarative CDI specification. Each key of the attribute set
           will be mapped to a file in /etc/cdi. It is required for every
           key to be provided in JSON format.
@@ -68,7 +68,7 @@ in
     containersConf.settings = mkOption {
       type = toml.type;
       default = { };
-      description = lib.mdDoc "containers.conf configuration";
+      description = "containers.conf configuration";
     };
 
     containersConf.cniPlugins = mkOption {
@@ -83,7 +83,7 @@ in
           pkgs.cniPlugins.dnsname
         ]
       '';
-      description = lib.mdDoc ''
+      description = ''
         CNI plugins to install on the system.
       '';
     };
@@ -97,14 +97,14 @@ in
           runroot = "/run/containers/storage";
         };
       };
-      description = lib.mdDoc "storage.conf configuration";
+      description = "storage.conf configuration";
     };
 
     registries = {
       search = mkOption {
         type = types.listOf types.str;
         default = [ "docker.io" "quay.io" ];
-        description = lib.mdDoc ''
+        description = ''
           List of repositories to search.
         '';
       };
@@ -112,7 +112,7 @@ in
       insecure = mkOption {
         default = [ ];
         type = types.listOf types.str;
-        description = lib.mdDoc ''
+        description = ''
           List of insecure repositories.
         '';
       };
@@ -120,7 +120,7 @@ in
       block = mkOption {
         default = [ ];
         type = types.listOf types.str;
-        description = lib.mdDoc ''
+        description = ''
           List of blocked repositories.
         '';
       };
@@ -139,7 +139,7 @@ in
           };
         }
       '';
-      description = lib.mdDoc ''
+      description = ''
         Signature verification policy file.
         If this option is empty the default policy file from
         `skopeo` will be used.
diff --git a/nixos/modules/virtualisation/cri-o.nix b/nixos/modules/virtualisation/cri-o.nix
index 417cf516c7f4b..78f414ffce6b6 100644
--- a/nixos/modules/virtualisation/cri-o.nix
+++ b/nixos/modules/virtualisation/cri-o.nix
@@ -19,38 +19,38 @@ in
   };
 
   options.virtualisation.cri-o = {
-    enable = mkEnableOption (lib.mdDoc "Container Runtime Interface for OCI (CRI-O)");
+    enable = mkEnableOption "Container Runtime Interface for OCI (CRI-O)";
 
     storageDriver = mkOption {
       type = types.enum [ "aufs" "btrfs" "devmapper" "overlay" "vfs" "zfs" ];
       default = "overlay";
-      description = lib.mdDoc "Storage driver to be used";
+      description = "Storage driver to be used";
     };
 
     logLevel = mkOption {
       type = types.enum [ "trace" "debug" "info" "warn" "error" "fatal" ];
       default = "info";
-      description = lib.mdDoc "Log level to be used";
+      description = "Log level to be used";
     };
 
     pauseImage = mkOption {
       type = types.nullOr types.str;
       default = null;
-      description = lib.mdDoc "Override the default pause image for pod sandboxes";
+      description = "Override the default pause image for pod sandboxes";
       example = "k8s.gcr.io/pause:3.2";
     };
 
     pauseCommand = mkOption {
       type = types.nullOr types.str;
       default = null;
-      description = lib.mdDoc "Override the default pause command";
+      description = "Override the default pause command";
       example = "/pause";
     };
 
     runtime = mkOption {
       type = types.nullOr types.str;
       default = null;
-      description = lib.mdDoc "Override the default runtime";
+      description = "Override the default runtime";
       example = "crun";
     };
 
@@ -62,7 +62,7 @@ in
           pkgs.gvisor
         ]
       '';
-      description = lib.mdDoc ''
+      description = ''
         Extra packages to be installed in the CRI-O wrapper.
       '';
     };
@@ -71,7 +71,7 @@ in
       type = types.package;
       default = crioPackage;
       internal = true;
-      description = lib.mdDoc ''
+      description = ''
         The final CRI-O package (including extra packages).
       '';
     };
@@ -79,14 +79,14 @@ in
     networkDir = mkOption {
       type = types.nullOr types.path;
       default = null;
-      description = lib.mdDoc "Override the network_dir option.";
+      description = "Override the network_dir option.";
       internal = true;
     };
 
     settings = mkOption {
       type = format.type;
       default = { };
-      description = lib.mdDoc ''
+      description = ''
         Configuration for cri-o, see
         <https://github.com/cri-o/cri-o/blob/master/docs/crio.conf.5.md>.
       '';
diff --git a/nixos/modules/virtualisation/digital-ocean-config.nix b/nixos/modules/virtualisation/digital-ocean-config.nix
index ea297e0c23a7d..2d5bc0661d48d 100644
--- a/nixos/modules/virtualisation/digital-ocean-config.nix
+++ b/nixos/modules/virtualisation/digital-ocean-config.nix
@@ -10,19 +10,19 @@ with lib;
       type = bool;
       default = false;
       example = true;
-      description = lib.mdDoc "Whether to set the root password from the Digital Ocean metadata";
+      description = "Whether to set the root password from the Digital Ocean metadata";
     };
     setSshKeys = mkOption {
       type = bool;
       default = true;
       example = true;
-      description = lib.mdDoc "Whether to fetch ssh keys from Digital Ocean";
+      description = "Whether to fetch ssh keys from Digital Ocean";
     };
     seedEntropy = mkOption {
       type = bool;
       default = true;
       example = true;
-      description = lib.mdDoc "Whether to run the kernel RNG entropy seeding script from the Digital Ocean vendor data";
+      description = "Whether to run the kernel RNG entropy seeding script from the Digital Ocean vendor data";
     };
   };
   config =
diff --git a/nixos/modules/virtualisation/digital-ocean-image.nix b/nixos/modules/virtualisation/digital-ocean-image.nix
index a57c89245f2e1..53791e911406f 100644
--- a/nixos/modules/virtualisation/digital-ocean-image.nix
+++ b/nixos/modules/virtualisation/digital-ocean-image.nix
@@ -13,7 +13,7 @@ in
       type = with types; either (enum [ "auto" ]) int;
       default = "auto";
       example = 4096;
-      description = lib.mdDoc ''
+      description = ''
         Size of disk image. Unit is MB.
       '';
     };
@@ -21,7 +21,7 @@ in
     virtualisation.digitalOceanImage.configFile = mkOption {
       type = with types; nullOr path;
       default = null;
-      description = lib.mdDoc ''
+      description = ''
         A path to a configuration file which will be placed at
         `/etc/nixos/configuration.nix` and be used when switching
         to a new configuration. If set to `null`, a default
@@ -34,7 +34,7 @@ in
       type = types.enum [ "gzip" "bzip2" ];
       default = "gzip";
       example = "bzip2";
-      description = lib.mdDoc ''
+      description = ''
         Disk image compression method. Choose bzip2 to generate smaller images that
         take longer to generate but will consume less metered storage space on your
         Digital Ocean account.
diff --git a/nixos/modules/virtualisation/digital-ocean-init.nix b/nixos/modules/virtualisation/digital-ocean-init.nix
index 1a5d4e898e96e..b8ccd218d20a2 100644
--- a/nixos/modules/virtualisation/digital-ocean-init.nix
+++ b/nixos/modules/virtualisation/digital-ocean-init.nix
@@ -15,7 +15,7 @@ in {
     type = types.bool;
     default = true;
     example = true;
-    description = lib.mdDoc "Whether to reconfigure the system from Digital Ocean user data";
+    description = "Whether to reconfigure the system from Digital Ocean user data";
   };
   options.virtualisation.digitalOcean.defaultConfigFile = mkOption {
     type = types.path;
@@ -24,7 +24,7 @@ in {
       The default configuration imports user-data if applicable and
       `(modulesPath + "/virtualisation/digital-ocean-config.nix")`.
     '';
-    description = lib.mdDoc ''
+    description = ''
       A path to a configuration file which will be placed at
       `/etc/nixos/configuration.nix` and be used when switching to
       a new configuration.
diff --git a/nixos/modules/virtualisation/docker-rootless.nix b/nixos/modules/virtualisation/docker-rootless.nix
index 1cdb98b704ce4..bad9136afd298 100644
--- a/nixos/modules/virtualisation/docker-rootless.nix
+++ b/nixos/modules/virtualisation/docker-rootless.nix
@@ -18,7 +18,7 @@ in
     enable = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         This option enables docker in a rootless mode, a daemon that manages
         linux containers. To interact with the daemon, one needs to set
         {command}`DOCKER_HOST=unix://$XDG_RUNTIME_DIR/docker.sock`.
@@ -28,7 +28,7 @@ in
     setSocketVariable = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Point {command}`DOCKER_HOST` to rootless Docker instance for
         normal users by default.
       '';
@@ -41,7 +41,7 @@ in
         ipv6 = true;
         "fixed-cidr-v6" = "fd00::/80";
       };
-      description = lib.mdDoc ''
+      description = ''
         Configuration for docker daemon. The attributes are serialized to JSON used as daemon.conf.
         See https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file
       '';
diff --git a/nixos/modules/virtualisation/docker.nix b/nixos/modules/virtualisation/docker.nix
index cceb186e0b36e..bcc649dcbec0a 100644
--- a/nixos/modules/virtualisation/docker.nix
+++ b/nixos/modules/virtualisation/docker.nix
@@ -20,8 +20,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description =
-          lib.mdDoc ''
+        description = ''
             This option enables docker, a daemon that manages
             linux containers. Users in the "docker" group can interact with
             the daemon (e.g. to start or stop containers) using the
@@ -33,8 +32,7 @@ in
       mkOption {
         type = types.listOf types.str;
         default = ["/run/docker.sock"];
-        description =
-          lib.mdDoc ''
+        description = ''
             A list of unix and tcp docker should listen to. The format follows
             ListenStream as described in systemd.socket(5).
           '';
@@ -44,8 +42,7 @@ in
       mkOption {
         type = types.bool;
         default = true;
-        description =
-          lib.mdDoc ''
+        description = ''
             When enabled dockerd is started on boot. This is required for
             containers which are created with the
             `--restart=always` flag to work. If this option is
@@ -61,7 +58,7 @@ in
           ipv6 = true;
           "fixed-cidr-v6" = "fd00::/80";
         };
-        description = lib.mdDoc ''
+        description = ''
           Configuration for docker daemon. The attributes are serialized to JSON used as daemon.conf.
           See https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file
         '';
@@ -71,7 +68,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           **Deprecated**, please use virtualisation.containers.cdi.dynamic.nvidia.enable instead.
 
           Enable nvidia-docker wrapper, supporting NVIDIA GPUs inside docker containers.
@@ -82,8 +79,7 @@ in
       mkOption {
         type = types.bool;
         default = true;
-        description =
-          lib.mdDoc ''
+        description = ''
             Allow dockerd to be restarted without affecting running container.
             This option is incompatible with docker swarm.
           '';
@@ -93,8 +89,7 @@ in
       mkOption {
         type = types.nullOr (types.enum ["aufs" "btrfs" "devicemapper" "overlay" "overlay2" "zfs"]);
         default = null;
-        description =
-          lib.mdDoc ''
+        description = ''
             This option determines which Docker
             [storage driver](https://docs.docker.com/storage/storagedriver/select-storage-driver/)
             to use.
@@ -114,8 +109,7 @@ in
       mkOption {
         type = types.enum ["none" "json-file" "syslog" "journald" "gelf" "fluentd" "awslogs" "splunk" "etwlogs" "gcplogs" "local"];
         default = "journald";
-        description =
-          lib.mdDoc ''
+        description = ''
             This option determines which Docker log driver to use.
           '';
       };
@@ -124,8 +118,7 @@ in
       mkOption {
         type = types.separatedString " ";
         default = "";
-        description =
-          lib.mdDoc ''
+        description = ''
             The extra command-line options to pass to
             {command}`docker` daemon.
           '';
@@ -135,7 +128,7 @@ in
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           Whether to periodically prune Docker resources. If enabled, a
           systemd timer will run `docker system prune -f`
           as specified by the `dates` option.
@@ -146,7 +139,7 @@ in
         type = types.listOf types.str;
         default = [];
         example = [ "--all" ];
-        description = lib.mdDoc ''
+        description = ''
           Any additional flags passed to {command}`docker system prune`.
         '';
       };
@@ -154,7 +147,7 @@ in
       dates = mkOption {
         default = "weekly";
         type = types.str;
-        description = lib.mdDoc ''
+        description = ''
           Specification (in the format described by
           {manpage}`systemd.time(7)`) of the time at
           which the prune will occur.
@@ -168,7 +161,7 @@ in
       type = types.listOf types.package;
       default = [ ];
       example = literalExpression "with pkgs; [ criu ]";
-      description = lib.mdDoc ''
+      description = ''
         Extra packages to add to PATH for the docker daemon process.
       '';
     };
diff --git a/nixos/modules/virtualisation/ecs-agent.nix b/nixos/modules/virtualisation/ecs-agent.nix
index 76bdccca9872b..ad23cbedcca72 100644
--- a/nixos/modules/virtualisation/ecs-agent.nix
+++ b/nixos/modules/virtualisation/ecs-agent.nix
@@ -6,13 +6,13 @@ let
   cfg = config.services.ecs-agent;
 in {
   options.services.ecs-agent = {
-    enable = mkEnableOption (lib.mdDoc "Amazon ECS agent");
+    enable = mkEnableOption "Amazon ECS agent";
 
     package = mkPackageOption pkgs "ecs-agent" { };
 
     extra-environment = mkOption {
       type = types.attrsOf types.str;
-      description = lib.mdDoc "The environment the ECS agent should run with. See the ECS agent documentation for keys that work here.";
+      description = "The environment the ECS agent should run with. See the ECS agent documentation for keys that work here.";
       default = {};
     };
   };
diff --git a/nixos/modules/virtualisation/google-compute-image.nix b/nixos/modules/virtualisation/google-compute-image.nix
index e4a18fd81d715..8e7b31b439bfb 100644
--- a/nixos/modules/virtualisation/google-compute-image.nix
+++ b/nixos/modules/virtualisation/google-compute-image.nix
@@ -21,7 +21,7 @@ in
       type = with types; either (enum [ "auto" ]) int;
       default = "auto";
       example = 1536;
-      description = lib.mdDoc ''
+      description = ''
         Size of disk image. Unit is MB.
       '';
     };
@@ -29,7 +29,7 @@ in
     virtualisation.googleComputeImage.configFile = mkOption {
       type = with types; nullOr str;
       default = null;
-      description = lib.mdDoc ''
+      description = ''
         A path to a configuration file which will be placed at `/etc/nixos/configuration.nix`
         and be used when switching to a new configuration.
         If set to `null`, a default configuration is used, where the only import is
@@ -40,7 +40,7 @@ in
     virtualisation.googleComputeImage.compressionLevel = mkOption {
       type = types.int;
       default = 6;
-      description = lib.mdDoc ''
+      description = ''
         GZIP compression level of the resulting disk image (1-9).
       '';
     };
diff --git a/nixos/modules/virtualisation/hyperv-guest.nix b/nixos/modules/virtualisation/hyperv-guest.nix
index cba4f92abe822..af7ef02bdcff5 100644
--- a/nixos/modules/virtualisation/hyperv-guest.nix
+++ b/nixos/modules/virtualisation/hyperv-guest.nix
@@ -8,13 +8,13 @@ let
 in {
   options = {
     virtualisation.hypervGuest = {
-      enable = mkEnableOption (lib.mdDoc "Hyper-V Guest Support");
+      enable = mkEnableOption "Hyper-V Guest Support";
 
       videoMode = mkOption {
         type = types.str;
         default = "1152x864";
         example = "1024x768";
-        description = lib.mdDoc ''
+        description = ''
           Resolution at which to initialize the video adapter.
 
           Supports screen resolution up to Full HD 1920x1080 with 32 bit color
diff --git a/nixos/modules/virtualisation/hyperv-image.nix b/nixos/modules/virtualisation/hyperv-image.nix
index fddff7bf1c69a..eb1bbe9f3a580 100644
--- a/nixos/modules/virtualisation/hyperv-image.nix
+++ b/nixos/modules/virtualisation/hyperv-image.nix
@@ -12,21 +12,21 @@ in {
         type = with types; either (enum [ "auto" ]) int;
         default = "auto";
         example = 2048;
-        description = lib.mdDoc ''
+        description = ''
           The size of the hyper-v base image in MiB.
         '';
       };
       vmDerivationName = mkOption {
         type = types.str;
         default = "nixos-hyperv-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}";
-        description = lib.mdDoc ''
+        description = ''
           The name of the derivation for the hyper-v appliance.
         '';
       };
       vmFileName = mkOption {
         type = types.str;
         default = "nixos-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.vhdx";
-        description = lib.mdDoc ''
+        description = ''
           The file name of the hyper-v appliance.
         '';
       };
diff --git a/nixos/modules/virtualisation/kvmgt.nix b/nixos/modules/virtualisation/kvmgt.nix
index 1e02636f81f41..7d795f8ff5d72 100644
--- a/nixos/modules/virtualisation/kvmgt.nix
+++ b/nixos/modules/virtualisation/kvmgt.nix
@@ -10,28 +10,28 @@ let
   vgpuOptions = {
     uuid = mkOption {
       type = with types; listOf str;
-      description = lib.mdDoc "UUID(s) of VGPU device. You can generate one with `libossp_uuid`.";
+      description = "UUID(s) of VGPU device. You can generate one with `libossp_uuid`.";
     };
   };
 
 in {
   options = {
     virtualisation.kvmgt = {
-      enable = mkEnableOption (lib.mdDoc ''
+      enable = mkEnableOption ''
         KVMGT (iGVT-g) VGPU support. Allows Qemu/KVM guests to share host's Intel integrated graphics card.
         Currently only one graphical device can be shared. To allow users to access the device without root add them
         to the kvm group: `users.extraUsers.<yourusername>.extraGroups = [ "kvm" ];`
-      '');
+      '';
       # multi GPU support is under the question
       device = mkOption {
         type = types.str;
         default = "0000:00:02.0";
-        description = lib.mdDoc "PCI ID of graphics card. You can figure it with {command}`ls /sys/class/mdev_bus`.";
+        description = "PCI ID of graphics card. You can figure it with {command}`ls /sys/class/mdev_bus`.";
       };
       vgpus = mkOption {
         default = {};
         type = with types; attrsOf (submodule [ { options = vgpuOptions; } ]);
-        description = lib.mdDoc ''
+        description = ''
           Virtual GPUs to be used in Qemu. You can find devices via {command}`ls /sys/bus/pci/devices/*/mdev_supported_types`
           and find info about device via {command}`cat /sys/bus/pci/devices/*/mdev_supported_types/i915-GVTg_V5_4/description`
         '';
diff --git a/nixos/modules/virtualisation/libvirtd.nix b/nixos/modules/virtualisation/libvirtd.nix
index b8f952d3ba0e8..226ece8176708 100644
--- a/nixos/modules/virtualisation/libvirtd.nix
+++ b/nixos/modules/virtualisation/libvirtd.nix
@@ -29,7 +29,7 @@ let
       enable = mkOption {
         type = types.bool;
         default = true;
-        description = lib.mdDoc ''
+        description = ''
           Allows libvirtd to take advantage of OVMF when creating new
           QEMU VMs with UEFI boot.
         '';
@@ -47,7 +47,7 @@ let
         default = [ pkgs.OVMF.fd ];
         defaultText = literalExpression "[ pkgs.OVMF.fd ]";
         example = literalExpression "[ pkgs.OVMFFull.fd pkgs.pkgsCross.aarch64-multiplatform.OVMF.fd ]";
-        description = lib.mdDoc ''
+        description = ''
           List of OVMF packages to use. Each listed package must contain files names FV/OVMF_CODE.fd and FV/OVMF_VARS.fd or FV/AAVMF_CODE.fd and FV/AAVMF_VARS.fd
         '';
       };
@@ -59,7 +59,7 @@ let
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           Allows libvirtd to use swtpm to create an emulated TPM.
         '';
       };
@@ -80,7 +80,7 @@ let
       runAsRoot = mkOption {
         type = types.bool;
         default = true;
-        description = lib.mdDoc ''
+        description = ''
           If true,  libvirtd runs qemu as root.
           If false, libvirtd runs qemu as unprivileged user qemu-libvirtd.
           Changing this option to false may cause file permission issues
@@ -94,7 +94,7 @@ let
         default = ''
           namespaces = []
         '';
-        description = lib.mdDoc ''
+        description = ''
           Contents written to the qemu configuration file, qemu.conf.
           Make sure to include a proper namespace configuration when
           supplying custom configuration.
@@ -104,7 +104,7 @@ let
       ovmf = mkOption {
         type = ovmfModule;
         default = { };
-        description = lib.mdDoc ''
+        description = ''
           QEMU's OVMF options.
         '';
       };
@@ -112,7 +112,7 @@ let
       swtpm = mkOption {
         type = swtpmModule;
         default = { };
-        description = lib.mdDoc ''
+        description = ''
           QEMU's swtpm options.
         '';
       };
@@ -121,7 +121,7 @@ let
         type = types.listOf types.package;
         default = [ ];
         example = lib.literalExpression "[ pkgs.virtiofsd ]";
-        description = lib.mdDoc ''
+        description = ''
           Packages containing out-of-tree vhost-user drivers.
         '';
       };
@@ -133,7 +133,7 @@ let
       daemon = mkOption {
         type = types.attrsOf types.path;
         default = { };
-        description = lib.mdDoc ''
+        description = ''
           Hooks that will be placed under /var/lib/libvirt/hooks/daemon.d/
           and called for daemon start/shutdown/SIGHUP events.
           Please see https://libvirt.org/hooks.html for documentation.
@@ -143,7 +143,7 @@ let
       qemu = mkOption {
         type = types.attrsOf types.path;
         default = { };
-        description = lib.mdDoc ''
+        description = ''
           Hooks that will be placed under /var/lib/libvirt/hooks/qemu.d/
           and called for qemu domains begin/end/migrate events.
           Please see https://libvirt.org/hooks.html for documentation.
@@ -153,7 +153,7 @@ let
       lxc = mkOption {
         type = types.attrsOf types.path;
         default = { };
-        description = lib.mdDoc ''
+        description = ''
           Hooks that will be placed under /var/lib/libvirt/hooks/lxc.d/
           and called for lxc domains begin/end events.
           Please see https://libvirt.org/hooks.html for documentation.
@@ -163,7 +163,7 @@ let
       libxl = mkOption {
         type = types.attrsOf types.path;
         default = { };
-        description = lib.mdDoc ''
+        description = ''
           Hooks that will be placed under /var/lib/libvirt/hooks/libxl.d/
           and called for libxl-handled xen domains begin/end events.
           Please see https://libvirt.org/hooks.html for documentation.
@@ -173,7 +173,7 @@ let
       network = mkOption {
         type = types.attrsOf types.path;
         default = { };
-        description = lib.mdDoc ''
+        description = ''
           Hooks that will be placed under /var/lib/libvirt/hooks/lxc.d/
           and called for networks begin/end events.
           Please see https://libvirt.org/hooks.html for documentation.
@@ -187,7 +187,7 @@ let
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           This option enables the older libvirt NSS module. This method uses
           DHCP server records, therefore is dependent on the hostname provided
           by the guest.
@@ -198,7 +198,7 @@ let
       enableGuest = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           This option enables the newer libvirt_guest NSS module. This module
           uses the libvirt guest name instead of the hostname of the guest.
           Please see https://libvirt.org/nss.html for more information.
@@ -239,7 +239,7 @@ in
     enable = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         This option enables libvirtd, a daemon that manages
         virtual machines. Users in the "libvirtd" group can interact with
         the daemon (e.g. to start or stop VMs) using the
@@ -252,7 +252,7 @@ in
     extraConfig = mkOption {
       type = types.lines;
       default = "";
-      description = lib.mdDoc ''
+      description = ''
         Extra contents appended to the libvirtd configuration file,
         libvirtd.conf.
       '';
@@ -262,7 +262,7 @@ in
       type = types.listOf types.str;
       default = [ ];
       example = [ "--verbose" ];
-      description = lib.mdDoc ''
+      description = ''
         Extra command line arguments passed to libvirtd on startup.
       '';
     };
@@ -270,7 +270,7 @@ in
     onBoot = mkOption {
       type = types.enum [ "start" "ignore" ];
       default = "start";
-      description = lib.mdDoc ''
+      description = ''
         Specifies the action to be done to / on the guests when the host boots.
         The "start" option starts all guests that were running prior to shutdown
         regardless of their autostart settings. The "ignore" option will not
@@ -282,7 +282,7 @@ in
     onShutdown = mkOption {
       type = types.enum [ "shutdown" "suspend" ];
       default = "suspend";
-      description = lib.mdDoc ''
+      description = ''
         When shutting down / restarting the host what method should
         be used to gracefully halt the guests. Setting to "shutdown"
         will cause an ACPI shutdown of each guest. "suspend" will
@@ -293,7 +293,7 @@ in
     parallelShutdown = mkOption {
       type = types.ints.unsigned;
       default = 0;
-      description = lib.mdDoc ''
+      description = ''
         Number of guests that will be shutdown concurrently, taking effect when onShutdown
         is set to "shutdown". If set to 0, guests will be shutdown one after another.
         Number of guests on shutdown at any time will not exceed number set in this
@@ -304,7 +304,7 @@ in
     allowedBridges = mkOption {
       type = types.listOf types.str;
       default = [ "virbr0" ];
-      description = lib.mdDoc ''
+      description = ''
         List of bridge devices that can be used by qemu:///session
       '';
     };
@@ -312,7 +312,7 @@ in
     qemu = mkOption {
       type = qemuModule;
       default = { };
-      description = lib.mdDoc ''
+      description = ''
         QEMU related options.
       '';
     };
@@ -320,7 +320,7 @@ in
     hooks = mkOption {
       type = hooksModule;
       default = { };
-      description = lib.mdDoc ''
+      description = ''
         Hooks related options.
       '';
     };
@@ -328,7 +328,7 @@ in
     nss = mkOption {
       type = nssModule;
       default = { };
-      description = lib.mdDoc ''
+      description = ''
         libvirt NSS module options.
       '';
     };
diff --git a/nixos/modules/virtualisation/lxc.nix b/nixos/modules/virtualisation/lxc.nix
index 3febb4b4f2483..7d7d48db924f8 100644
--- a/nixos/modules/virtualisation/lxc.nix
+++ b/nixos/modules/virtualisation/lxc.nix
@@ -16,8 +16,7 @@ in
       lib.mkOption {
         type = lib.types.bool;
         default = false;
-        description =
-          lib.mdDoc ''
+        description = ''
             This enables Linux Containers (LXC), which provides tools
             for creating and managing system or application containers
             on Linux.
@@ -28,8 +27,7 @@ in
       lib.mkOption {
         type = lib.types.lines;
         default = "";
-        description =
-          lib.mdDoc ''
+        description = ''
             This is the system-wide LXC config. See
             {manpage}`lxc.system.conf(5)`.
           '';
@@ -39,8 +37,7 @@ in
       lib.mkOption {
         type = lib.types.lines;
         default = "";
-        description =
-          lib.mdDoc ''
+        description = ''
             Default config (default.conf) for new containers, i.e. for
             network config. See {manpage}`lxc.container.conf(5)`.
           '';
@@ -50,8 +47,7 @@ in
       lib.mkOption {
         type = lib.types.lines;
         default = "";
-        description =
-          lib.mdDoc ''
+        description = ''
             This is the config file for managing unprivileged user network
             administration access in LXC. See {manpage}`lxc-usernet(5)`.
           '';
diff --git a/nixos/modules/virtualisation/lxcfs.nix b/nixos/modules/virtualisation/lxcfs.nix
index b2eaec774a65c..6cefeb7a8d60f 100644
--- a/nixos/modules/virtualisation/lxcfs.nix
+++ b/nixos/modules/virtualisation/lxcfs.nix
@@ -15,7 +15,7 @@ in {
       lib.mkOption {
         type = lib.types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           This enables LXCFS, a FUSE filesystem for LXC.
           To use lxcfs in include the following configuration in your
           container configuration:
diff --git a/nixos/modules/virtualisation/lxd-agent.nix b/nixos/modules/virtualisation/lxd-agent.nix
index 8a2a1530eeb79..8d536e18a34e4 100644
--- a/nixos/modules/virtualisation/lxd-agent.nix
+++ b/nixos/modules/virtualisation/lxd-agent.nix
@@ -50,7 +50,7 @@ in {
   };
 
   options = {
-    virtualisation.lxd.agent.enable = lib.mkEnableOption (lib.mdDoc "Enable LXD agent");
+    virtualisation.lxd.agent.enable = lib.mkEnableOption "Enable LXD agent";
   };
 
   config = lib.mkIf cfg.enable {
diff --git a/nixos/modules/virtualisation/lxd.nix b/nixos/modules/virtualisation/lxd.nix
index aa692cfff9044..51d9a9482091d 100644
--- a/nixos/modules/virtualisation/lxd.nix
+++ b/nixos/modules/virtualisation/lxd.nix
@@ -19,7 +19,7 @@ in {
       enable = lib.mkOption {
         type = lib.types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           This option enables lxd, a daemon that manages
           containers. Users in the "lxd" group can interact with
           the daemon (e.g. to start or stop containers) using the
@@ -45,7 +45,7 @@ in {
         type = lib.types.bool;
         default = config.boot.zfs.enabled;
         defaultText = lib.literalExpression "config.boot.zfs.enabled";
-        description = lib.mdDoc ''
+        description = ''
           Enables lxd to use zfs as a storage for containers.
 
           This option is enabled by default if a zfs pool is configured
@@ -56,7 +56,7 @@ in {
       recommendedSysctlSettings = lib.mkOption {
         type = lib.types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           Enables various settings to avoid common pitfalls when
           running containers requiring many file operations.
           Fixes errors like "Too many open files" or
@@ -73,7 +73,7 @@ in {
 
         default = null;
 
-        description = lib.mdDoc ''
+        description = ''
           Configuration for LXD preseed, see
           <https://documentation.ubuntu.com/lxd/en/latest/howto/initialize/#initialize-preseed>
           for supported values.
@@ -129,7 +129,7 @@ in {
         type = lib.types.int;
         default = 600;
         apply = toString;
-        description = lib.mdDoc ''
+        description = ''
           Time to wait (in seconds) for LXD to become ready to process requests.
           If LXD does not reply within the configured time, lxd.service will be
           considered failed and systemd will attempt to restart it.
@@ -137,7 +137,7 @@ in {
       };
 
       ui = {
-        enable = lib.mkEnableOption (lib.mdDoc "(experimental) LXD UI");
+        enable = lib.mkEnableOption "(experimental) LXD UI";
 
         package = lib.mkPackageOption pkgs [ "lxd-ui" ] { };
       };
diff --git a/nixos/modules/virtualisation/multipass.nix b/nixos/modules/virtualisation/multipass.nix
index 5aae48e213864..7918a716a870b 100644
--- a/nixos/modules/virtualisation/multipass.nix
+++ b/nixos/modules/virtualisation/multipass.nix
@@ -10,14 +10,14 @@ in
 {
   options = {
     virtualisation.multipass = {
-      enable = lib.mkEnableOption (lib.mdDoc ''
+      enable = lib.mkEnableOption ''
         Multipass, a simple manager for virtualised Ubuntu instances.
-      '');
+      '';
 
       logLevel = lib.mkOption {
         type = lib.types.enum [ "error" "warning" "info" "debug" "trace" ];
         default = "debug";
-        description = lib.mdDoc ''
+        description = ''
           The logging verbosity of the multipassd binary.
         '';
       };
diff --git a/nixos/modules/virtualisation/nixos-containers.nix b/nixos/modules/virtualisation/nixos-containers.nix
index bde1ff9eeb98d..8892f2f154640 100644
--- a/nixos/modules/virtualisation/nixos-containers.nix
+++ b/nixos/modules/virtualisation/nixos-containers.nix
@@ -298,18 +298,18 @@ let
       mountPoint = mkOption {
         example = "/mnt/usb";
         type = types.str;
-        description = lib.mdDoc "Mount point on the container file system.";
+        description = "Mount point on the container file system.";
       };
       hostPath = mkOption {
         default = null;
         example = "/home/alice";
         type = types.nullOr types.str;
-        description = lib.mdDoc "Location of the host path to be mounted.";
+        description = "Location of the host path to be mounted.";
       };
       isReadOnly = mkOption {
         default = true;
         type = types.bool;
-        description = lib.mdDoc "Determine whether the mounted path will be accessed in read-only mode.";
+        description = "Determine whether the mounted path will be accessed in read-only mode.";
       };
     };
 
@@ -324,12 +324,12 @@ let
       node = mkOption {
         example = "/dev/net/tun";
         type = types.str;
-        description = lib.mdDoc "Path to device node";
+        description = "Path to device node";
       };
       modifier = mkOption {
         example = "rw";
         type = types.str;
-        description = lib.mdDoc ''
+        description = ''
           Device node access modifier. Takes a combination
           `r` (read), `w` (write), and
           `m` (mknod). See the
@@ -351,7 +351,7 @@ let
       type = types.nullOr types.str;
       default = null;
       example = "br0";
-      description = lib.mdDoc ''
+      description = ''
         Put the host-side of the veth-pair into the named bridge.
         Only one of hostAddress* or hostBridge can be given.
       '';
@@ -363,22 +363,22 @@ let
           protocol = mkOption {
             type = types.str;
             default = "tcp";
-            description = lib.mdDoc "The protocol specifier for port forwarding between host and container";
+            description = "The protocol specifier for port forwarding between host and container";
           };
           hostPort = mkOption {
             type = types.int;
-            description = lib.mdDoc "Source port of the external interface on host";
+            description = "Source port of the external interface on host";
           };
           containerPort = mkOption {
             type = types.nullOr types.int;
             default = null;
-            description = lib.mdDoc "Target port of container";
+            description = "Target port of container";
           };
         };
       });
       default = [];
       example = [ { protocol = "tcp"; hostPort = 8080; containerPort = 80; } ];
-      description = lib.mdDoc ''
+      description = ''
         List of forwarded ports from host to container. Each forwarded port
         is specified by protocol, hostPort and containerPort. By default,
         protocol is tcp and hostPort and containerPort are assumed to be
@@ -391,7 +391,7 @@ let
       type = types.nullOr types.str;
       default = null;
       example = "10.231.136.1";
-      description = lib.mdDoc ''
+      description = ''
         The IPv4 address assigned to the host interface.
         (Not used when hostBridge is set.)
       '';
@@ -401,7 +401,7 @@ let
       type = types.nullOr types.str;
       default = null;
       example = "fc00::1";
-      description = lib.mdDoc ''
+      description = ''
         The IPv6 address assigned to the host interface.
         (Not used when hostBridge is set.)
       '';
@@ -411,7 +411,7 @@ let
       type = types.nullOr types.str;
       default = null;
       example = "10.231.136.2";
-      description = lib.mdDoc ''
+      description = ''
         The IPv4 address assigned to the interface in the container.
         If a hostBridge is used, this should be given with netmask to access
         the whole network. Otherwise the default netmask is /32 and routing is
@@ -423,7 +423,7 @@ let
       type = types.nullOr types.str;
       default = null;
       example = "fc00::2";
-      description = lib.mdDoc ''
+      description = ''
         The IPv6 address assigned to the interface in the container.
         If a hostBridge is used, this should be given with netmask to access
         the whole network. Otherwise the default netmask is /128 and routing is
@@ -455,7 +455,7 @@ in
     boot.isContainer = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Whether this NixOS machine is a lightweight container running
         in another NixOS system.
       '';
@@ -464,7 +464,7 @@ in
     boot.enableContainers = mkOption {
       type = types.bool;
       default = true;
-      description = lib.mdDoc ''
+      description = ''
         Whether to enable support for NixOS containers. Defaults to true
         (at no cost if containers are not actually used).
       '';
@@ -476,7 +476,7 @@ in
         {
           options = {
             config = mkOption {
-              description = lib.mdDoc ''
+              description = ''
                 A specification of the desired configuration of this
                 container, as a NixOS module.
               '';
@@ -532,7 +532,7 @@ in
             path = mkOption {
               type = types.path;
               example = "/nix/var/nix/profiles/per-container/webserver";
-              description = lib.mdDoc ''
+              description = ''
                 As an alternative to specifying
                 {option}`config`, you can specify the path to
                 the evaluated NixOS system configuration, typically a
@@ -544,7 +544,7 @@ in
               type = types.listOf types.str;
               default = [];
               example = [ "CAP_NET_ADMIN" "CAP_MKNOD" ];
-              description = lib.mdDoc ''
+              description = ''
                 Grant additional capabilities to the container.  See the
                 capabilities(7) and systemd-nspawn(1) man pages for more
                 information.
@@ -555,7 +555,7 @@ in
               type = types.path;
               default = pkgs.path;
               defaultText = literalExpression "pkgs.path";
-              description = lib.mdDoc ''
+              description = ''
                 A path to the nixpkgs that provide the modules, pkgs and lib for evaluating the container.
 
                 To only change the `pkgs` argument used inside the container modules,
@@ -569,7 +569,7 @@ in
             specialArgs = mkOption {
               type = types.attrsOf types.unspecified;
               default = {};
-              description = lib.mdDoc ''
+              description = ''
                 A set of special arguments to be passed to NixOS modules.
                 This will be merged into the `specialArgs` used to evaluate
                 the NixOS configurations.
@@ -579,7 +579,7 @@ in
             ephemeral = mkOption {
               type = types.bool;
               default = false;
-              description = lib.mdDoc ''
+              description = ''
                 Runs container in ephemeral mode with the empty root filesystem at boot.
                 This way container will be bootstrapped from scratch on each boot
                 and will be cleaned up on shutdown leaving no traces behind.
@@ -598,7 +598,7 @@ in
             enableTun = mkOption {
               type = types.bool;
               default = false;
-              description = lib.mdDoc ''
+              description = ''
                 Allows the container to create and setup tunnel interfaces
                 by granting the `NET_ADMIN` capability and
                 enabling access to `/dev/net/tun`.
@@ -608,7 +608,7 @@ in
             privateNetwork = mkOption {
               type = types.bool;
               default = false;
-              description = lib.mdDoc ''
+              description = ''
                 Whether to give the container its own private virtual
                 Ethernet interface.  The interface is called
                 `eth0`, and is hooked up to the interface
@@ -623,7 +623,7 @@ in
               type = types.listOf types.str;
               default = [];
               example = [ "eth1" "eth2" ];
-              description = lib.mdDoc ''
+              description = ''
                 The list of interfaces to be moved into the container.
               '';
             };
@@ -632,7 +632,7 @@ in
               type = types.listOf types.str;
               default = [];
               example = [ "eth1" "eth2" ];
-              description = lib.mdDoc ''
+              description = ''
                 The list of host interfaces from which macvlans will be
                 created. For each interface specified, a macvlan interface
                 will be created and moved to the container.
@@ -642,7 +642,7 @@ in
             extraVeths = mkOption {
               type = with types; attrsOf (submodule { options = networkOptions; });
               default = {};
-              description = lib.mdDoc ''
+              description = ''
                 Extra veth-pairs to be created for the container.
               '';
             };
@@ -650,7 +650,7 @@ in
             autoStart = mkOption {
               type = types.bool;
               default = false;
-              description = lib.mdDoc ''
+              description = ''
                 Whether the container is automatically started at boot-time.
               '';
             };
@@ -658,7 +658,7 @@ in
             restartIfChanged = mkOption {
               type = types.bool;
               default = true;
-              description = lib.mdDoc ''
+              description = ''
                 Whether the container should be restarted during a NixOS
                 configuration switch if its definition has changed.
               '';
@@ -667,7 +667,7 @@ in
             timeoutStartSec = mkOption {
               type = types.str;
               default = "1min";
-              description = lib.mdDoc ''
+              description = ''
                 Time for the container to start. In case of a timeout,
                 the container processes get killed.
                 See {manpage}`systemd.time(7)`
@@ -684,8 +684,7 @@ in
                 }
               '';
 
-              description =
-                lib.mdDoc ''
+              description = ''
                   An extra list of directories that is bound to the container.
                 '';
             };
@@ -694,7 +693,7 @@ in
               type = with types; listOf (submodule allowedDeviceOpts);
               default = [];
               example = [ { node = "/dev/net/tun"; modifier = "rw"; } ];
-              description = lib.mdDoc ''
+              description = ''
                 A list of device nodes to which the containers has access to.
               '';
             };
@@ -703,7 +702,7 @@ in
               type = types.listOf types.str;
               default = [];
               example = [ "/var" ];
-              description = lib.mdDoc ''
+              description = ''
                 Mounts a set of tmpfs file systems into the container.
                 Multiple paths can be specified.
                 Valid items must conform to the --tmpfs argument
@@ -715,7 +714,7 @@ in
               type = types.listOf types.str;
               default = [];
               example = [ "--drop-capability=CAP_SYS_CHROOT" ];
-              description = lib.mdDoc ''
+              description = ''
                 Extra flags passed to the systemd-nspawn command.
                 See systemd-nspawn(1) for details.
               '';
@@ -765,7 +764,7 @@ in
               };
           }
         '';
-      description = lib.mdDoc ''
+      description = ''
         A set of NixOS system configurations to be run as lightweight
         containers.  Each container appears as a service
         `container-«name»`
diff --git a/nixos/modules/virtualisation/oci-containers.nix b/nixos/modules/virtualisation/oci-containers.nix
index 5bffb3f047166..4308d410c69c7 100644
--- a/nixos/modules/virtualisation/oci-containers.nix
+++ b/nixos/modules/virtualisation/oci-containers.nix
@@ -14,14 +14,14 @@ let
 
         image = mkOption {
           type = with types; str;
-          description = lib.mdDoc "OCI image to run.";
+          description = "OCI image to run.";
           example = "library/hello-world";
         };
 
         imageFile = mkOption {
           type = with types; nullOr package;
           default = null;
-          description = lib.mdDoc ''
+          description = ''
             Path to an image file to load before running the image. This can
             be used to bypass pulling the image from the registry.
 
@@ -38,20 +38,20 @@ let
           username = mkOption {
             type = with types; nullOr str;
             default = null;
-            description = lib.mdDoc "Username for login.";
+            description = "Username for login.";
           };
 
           passwordFile = mkOption {
             type = with types; nullOr str;
             default = null;
-            description = lib.mdDoc "Path to file containing password.";
+            description = "Path to file containing password.";
             example = "/etc/nixos/dockerhub-password.txt";
           };
 
           registry = mkOption {
             type = with types; nullOr str;
             default = null;
-            description = lib.mdDoc "Registry where to login to.";
+            description = "Registry where to login to.";
             example = "https://docker.pkg.github.com";
           };
 
@@ -60,7 +60,7 @@ let
         cmd = mkOption {
           type =  with types; listOf str;
           default = [];
-          description = lib.mdDoc "Commandline arguments to pass to the image's entrypoint.";
+          description = "Commandline arguments to pass to the image's entrypoint.";
           example = literalExpression ''
             ["--port=9000"]
           '';
@@ -69,7 +69,7 @@ let
         labels = mkOption {
           type = with types; attrsOf str;
           default = {};
-          description = lib.mdDoc "Labels to attach to the container at runtime.";
+          description = "Labels to attach to the container at runtime.";
           example = literalExpression ''
             {
               "traefik.https.routers.example.rule" = "Host(`example.container`)";
@@ -79,7 +79,7 @@ let
 
         entrypoint = mkOption {
           type = with types; nullOr str;
-          description = lib.mdDoc "Override the default entrypoint of the image.";
+          description = "Override the default entrypoint of the image.";
           default = null;
           example = "/bin/my-app";
         };
@@ -87,7 +87,7 @@ let
         environment = mkOption {
           type = with types; attrsOf str;
           default = {};
-          description = lib.mdDoc "Environment variables to set for this container.";
+          description = "Environment variables to set for this container.";
           example = literalExpression ''
             {
               DATABASE_HOST = "db.example.com";
@@ -99,7 +99,7 @@ let
         environmentFiles = mkOption {
           type = with types; listOf path;
           default = [];
-          description = lib.mdDoc "Environment files for this container.";
+          description = "Environment files for this container.";
           example = literalExpression ''
             [
               /path/to/.env
@@ -111,7 +111,7 @@ let
         log-driver = mkOption {
           type = types.str;
           default = "journald";
-          description = lib.mdDoc ''
+          description = ''
             Logging driver for the container.  The default of
             `"journald"` means that the container's logs will be
             handled as part of the systemd unit.
@@ -129,7 +129,7 @@ let
         ports = mkOption {
           type = with types; listOf str;
           default = [];
-          description = lib.mdDoc ''
+          description = ''
             Network ports to publish from the container to the outer host.
 
             Valid formats:
@@ -161,7 +161,7 @@ let
         user = mkOption {
           type = with types; nullOr str;
           default = null;
-          description = lib.mdDoc ''
+          description = ''
             Override the username or UID (and optionally groupname or GID) used
             in the container.
           '';
@@ -171,7 +171,7 @@ let
         volumes = mkOption {
           type = with types; listOf str;
           default = [];
-          description = lib.mdDoc ''
+          description = ''
             List of volumes to attach to this container.
 
             Note that this is a list of `"src:dst"` strings to
@@ -192,14 +192,14 @@ let
         workdir = mkOption {
           type = with types; nullOr str;
           default = null;
-          description = lib.mdDoc "Override the default working directory for the container.";
+          description = "Override the default working directory for the container.";
           example = "/var/lib/hello_world";
         };
 
         dependsOn = mkOption {
           type = with types; listOf str;
           default = [];
-          description = lib.mdDoc ''
+          description = ''
             Define which other containers this one depends on. They will be added to both After and Requires for the unit.
 
             Use the same name as the attribute under `virtualisation.oci-containers.containers`.
@@ -217,14 +217,14 @@ let
         hostname = mkOption {
           type = with types; nullOr str;
           default = null;
-          description = lib.mdDoc "The hostname of the container.";
+          description = "The hostname of the container.";
           example = "hello-world";
         };
 
         extraOptions = mkOption {
           type = with types; listOf str;
           default = [];
-          description = lib.mdDoc "Extra options for {command}`${defaultBackend} run`.";
+          description = "Extra options for {command}`${defaultBackend} run`.";
           example = literalExpression ''
             ["--network=host"]
           '';
@@ -233,7 +233,7 @@ let
         autoStart = mkOption {
           type = types.bool;
           default = true;
-          description = lib.mdDoc ''
+          description = ''
             When enabled, the container is automatically started on boot.
             If this option is set to false, the container has to be started on-demand via its service.
           '';
@@ -365,13 +365,13 @@ in {
     backend = mkOption {
       type = types.enum [ "podman" "docker" ];
       default = if versionAtLeast config.system.stateVersion "22.05" then "podman" else "docker";
-      description = lib.mdDoc "The underlying Docker implementation to use.";
+      description = "The underlying Docker implementation to use.";
     };
 
     containers = mkOption {
       default = {};
       type = types.attrsOf (types.submodule containerOptions);
-      description = lib.mdDoc "OCI (Docker) containers to run as systemd services.";
+      description = "OCI (Docker) containers to run as systemd services.";
     };
 
   };
diff --git a/nixos/modules/virtualisation/openstack-options.nix b/nixos/modules/virtualisation/openstack-options.nix
index 52f45de92ecbb..a06a113e252e4 100644
--- a/nixos/modules/virtualisation/openstack-options.nix
+++ b/nixos/modules/virtualisation/openstack-options.nix
@@ -9,13 +9,13 @@ in
         enable = lib.mkOption {
           default = false;
           internal = true;
-          description = lib.mdDoc ''
+          description = ''
             Whether the OpenStack instance uses a ZFS root.
           '';
         };
 
         datasets = lib.mkOption {
-          description = lib.mdDoc ''
+          description = ''
             Datasets to create under the `tank` and `boot` zpools.
 
             **NOTE:** This option is used only at image creation time, and
@@ -28,13 +28,13 @@ in
           type = types.attrsOf (types.submodule {
             options = {
               mount = lib.mkOption {
-                description = lib.mdDoc "Where to mount this dataset.";
+                description = "Where to mount this dataset.";
                 type = types.nullOr types.str;
                 default = null;
               };
 
               properties = lib.mkOption {
-                description = lib.mdDoc "Properties to set on this dataset.";
+                description = "Properties to set on this dataset.";
                 type = types.attrsOf types.str;
                 default = { };
               };
@@ -47,7 +47,7 @@ in
         default = pkgs.stdenv.hostPlatform.isAarch64;
         defaultText = literalExpression "pkgs.stdenv.hostPlatform.isAarch64";
         internal = true;
-        description = lib.mdDoc ''
+        description = ''
           Whether the instance is using EFI.
         '';
       };
diff --git a/nixos/modules/virtualisation/openvswitch.nix b/nixos/modules/virtualisation/openvswitch.nix
index a968c732f8f7e..e0cedce091399 100644
--- a/nixos/modules/virtualisation/openvswitch.nix
+++ b/nixos/modules/virtualisation/openvswitch.nix
@@ -13,7 +13,7 @@ in {
     enable = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Whether to enable Open vSwitch. A configuration daemon (ovs-server)
         will be started.
         '';
@@ -22,7 +22,7 @@ in {
     resetOnStart = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Whether to reset the Open vSwitch configuration database to a default
         configuration on every start of the systemd `ovsdb.service`.
         '';
diff --git a/nixos/modules/virtualisation/parallels-guest.nix b/nixos/modules/virtualisation/parallels-guest.nix
index dba8ce02b724c..b92d30dcc0e2b 100644
--- a/nixos/modules/virtualisation/parallels-guest.nix
+++ b/nixos/modules/virtualisation/parallels-guest.nix
@@ -14,7 +14,7 @@ in
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           This enables Parallels Tools for Linux guests, along with provided
           video, mouse and other hardware drivers.
         '';
@@ -23,7 +23,7 @@ in
       autoMountShares = mkOption {
         type = types.bool;
         default = true;
-        description = lib.mdDoc ''
+        description = ''
           Control prlfsmountd service. When this service is running, shares can not be manually
           mounted through `mount -t prl_fs ...` as this service will remount and trample any set options.
           Recommended to enable for simple file sharing, but extended share use such as for code should
@@ -36,7 +36,7 @@ in
         default = config.boot.kernelPackages.prl-tools;
         defaultText = "config.boot.kernelPackages.prl-tools";
         example = literalExpression "config.boot.kernelPackages.prl-tools";
-        description = lib.mdDoc ''
+        description = ''
           Defines which package to use for prl-tools. Override to change the version.
         '';
       };
diff --git a/nixos/modules/virtualisation/podman/default.nix b/nixos/modules/virtualisation/podman/default.nix
index a977390542166..4b1b67ac9444e 100644
--- a/nixos/modules/virtualisation/podman/default.nix
+++ b/nixos/modules/virtualisation/podman/default.nix
@@ -48,7 +48,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           This option enables Podman, a daemonless container engine for
           developing, managing, and running OCI Containers on your Linux System.
 
@@ -59,7 +59,7 @@ in
     dockerSocket.enable = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Make the Podman socket available in place of the Docker socket, so
         Docker tools can find the Podman socket.
 
@@ -73,7 +73,7 @@ in
     dockerCompat = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Create an alias mapping {command}`docker` to {command}`podman`.
       '';
     };
@@ -81,7 +81,7 @@ in
     enableNvidia = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         **Deprecated**, please use virtualisation.containers.cdi.dynamic.nvidia.enable instead.
 
         Enable use of NVidia GPUs from within podman containers.
@@ -96,7 +96,7 @@ in
           pkgs.gvisor
         ]
       '';
-      description = lib.mdDoc ''
+      description = ''
         Extra packages to be installed in the Podman wrapper.
       '';
     };
@@ -105,7 +105,7 @@ in
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           Whether to periodically prune Podman resources. If enabled, a
           systemd timer will run `podman system prune -f`
           as specified by the `dates` option.
@@ -116,7 +116,7 @@ in
         type = types.listOf types.str;
         default = [];
         example = [ "--all" ];
-        description = lib.mdDoc ''
+        description = ''
           Any additional flags passed to {command}`podman system prune`.
         '';
       };
@@ -124,7 +124,7 @@ in
       dates = mkOption {
         default = "weekly";
         type = types.str;
-        description = lib.mdDoc ''
+        description = ''
           Specification (in the format described by
           {manpage}`systemd.time(7)`) of the time at
           which the prune will occur.
@@ -136,7 +136,7 @@ in
       type = types.package;
       default = podmanPackage;
       internal = true;
-      description = lib.mdDoc ''
+      description = ''
         The final Podman package (including extra packages).
       '';
     };
@@ -145,7 +145,7 @@ in
       type = json.type;
       default = { };
       example = lib.literalExpression "{ dns_enabled = true; }";
-      description = lib.mdDoc ''
+      description = ''
         Settings for podman's default network.
       '';
     };
diff --git a/nixos/modules/virtualisation/podman/network-socket.nix b/nixos/modules/virtualisation/podman/network-socket.nix
index a10597175ab9f..4a6f05e9a2f20 100644
--- a/nixos/modules/virtualisation/podman/network-socket.nix
+++ b/nixos/modules/virtualisation/podman/network-socket.nix
@@ -17,7 +17,7 @@ in
     enable = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Make the Podman and Docker compatibility API available over the network
         with TLS client certificate authentication.
 
@@ -32,7 +32,7 @@ in
 
     server = mkOption {
       type = types.enum [ ];
-      description = lib.mdDoc ''
+      description = ''
         Choice of TLS proxy server.
       '';
       example = "ghostunnel";
@@ -41,28 +41,28 @@ in
     openFirewall = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Whether to open the port in the firewall.
       '';
     };
 
     tls.cacert = mkOption {
       type = types.path;
-      description = lib.mdDoc ''
+      description = ''
         Path to CA certificate to use for client authentication.
       '';
     };
 
     tls.cert = mkOption {
       type = types.path;
-      description = lib.mdDoc ''
+      description = ''
         Path to certificate describing the server.
       '';
     };
 
     tls.key = mkOption {
       type = types.path;
-      description = lib.mdDoc ''
+      description = ''
         Path to the private key corresponding to the server certificate.
 
         Use a string for this setting. Otherwise it will be copied to the Nix
@@ -73,14 +73,14 @@ in
     port = mkOption {
       type = types.port;
       default = 2376;
-      description = lib.mdDoc ''
+      description = ''
         TCP port number for receiving TLS connections.
       '';
     };
     listenAddress = mkOption {
       type = types.str;
       default = "0.0.0.0";
-      description = lib.mdDoc ''
+      description = ''
         Interface address for receiving TLS connections.
       '';
     };
diff --git a/nixos/modules/virtualisation/proxmox-image.nix b/nixos/modules/virtualisation/proxmox-image.nix
index 62778f2626f8e..6349bcef99e6b 100644
--- a/nixos/modules/virtualisation/proxmox-image.nix
+++ b/nixos/modules/virtualisation/proxmox-image.nix
@@ -10,7 +10,7 @@ with lib;
         type = types.str;
         default = "";
         example = "order=scsi0;net0";
-        description = lib.mdDoc ''
+        description = ''
           Default boot device. PVE will try all devices in its default order if this value is empty.
         '';
       };
@@ -18,7 +18,7 @@ with lib;
         type = types.str;
         default = "virtio-scsi-pci";
         example = "lsi";
-        description = lib.mdDoc ''
+        description = ''
           SCSI controller type. Must be one of the supported values given in
           <https://pve.proxmox.com/wiki/Qemu/KVM_Virtual_Machines>
         '';
@@ -27,7 +27,7 @@ with lib;
         type = types.str;
         default = "local-lvm:vm-9999-disk-0";
         example = "ceph:vm-123-disk-0";
-        description = lib.mdDoc ''
+        description = ''
           Configuration for the default virtio disk. It can be used as a cue for PVE to autodetect the target storage.
           This parameter is required by PVE even if it isn't used.
         '';
@@ -35,21 +35,21 @@ with lib;
       ostype = mkOption {
         type = types.str;
         default = "l26";
-        description = lib.mdDoc ''
+        description = ''
           Guest OS type
         '';
       };
       cores = mkOption {
         type = types.ints.positive;
         default = 1;
-        description = lib.mdDoc ''
+        description = ''
           Guest core count
         '';
       };
       memory = mkOption {
         type = types.ints.positive;
         default = 1024;
-        description = lib.mdDoc ''
+        description = ''
           Guest memory in MB
         '';
       };
@@ -65,7 +65,7 @@ with lib;
       name = mkOption {
         type = types.str;
         default = "nixos-${config.system.nixos.label}";
-        description = lib.mdDoc ''
+        description = ''
           VM name
         '';
       };
@@ -73,7 +73,7 @@ with lib;
         type = types.str;
         default = "512M";
         example = "2048M";
-        description = lib.mdDoc ''
+        description = ''
           additional disk space to be added to the image if diskSize "auto"
           is used.
         '';
@@ -82,7 +82,7 @@ with lib;
         type = types.str;
         default = "256M";
         example = "512M";
-        description = lib.mdDoc ''
+        description = ''
           Size of the boot partition. Is only used if partitionTableType is
           either "efi" or "hybrid".
         '';
@@ -91,7 +91,7 @@ with lib;
         type = types.str;
         default = "auto";
         example = "20480";
-        description = lib.mdDoc ''
+        description = ''
           The size of the disk, in megabytes.
           if "auto" size is calculated based on the contents copied to it and
           additionalSpace is taken into account.
@@ -100,7 +100,7 @@ with lib;
       net0 = mkOption {
         type = types.commas;
         default = "virtio=00:00:00:00:00:00,bridge=vmbr0,firewall=1";
-        description = lib.mdDoc ''
+        description = ''
           Configuration for the default interface. When restoring from VMA, check the
           "unique" box to ensure device mac is randomized.
         '';
@@ -109,7 +109,7 @@ with lib;
         type = types.str;
         default = "socket";
         example = "/dev/ttyS0";
-        description = lib.mdDoc ''
+        description = ''
           Create a serial device inside the VM (n is 0 to 3), and pass through a host serial device (i.e. /dev/ttyS0),
           or create a unix socket on the host side (use qm terminal to open a terminal connection).
         '';
@@ -118,7 +118,7 @@ with lib;
         type = types.bool;
         apply = x: if x then "1" else "0";
         default = true;
-        description = lib.mdDoc ''
+        description = ''
           Expect guest to have qemu agent running
         '';
       };
@@ -132,7 +132,7 @@ with lib;
           onboot = 1;
         }
       '';
-      description = lib.mdDoc ''
+      description = ''
         Additional options appended to qemu-server.conf
       '';
     };
@@ -151,7 +151,7 @@ with lib;
       type = types.str;
       default = config.proxmox.qemuConf.name;
       example = "999-nixos_template";
-      description = lib.mdDoc ''
+      description = ''
         Filename of the image will be vzdump-qemu-''${filenameSuffix}.vma.zstd.
         This will also determine the default name of the VM on restoring the VMA.
         Start this value with a number if you want the VMA to be detected as a backup of
diff --git a/nixos/modules/virtualisation/proxmox-lxc.nix b/nixos/modules/virtualisation/proxmox-lxc.nix
index 3d966d725a9a2..9b9f99e5b8172 100644
--- a/nixos/modules/virtualisation/proxmox-lxc.nix
+++ b/nixos/modules/virtualisation/proxmox-lxc.nix
@@ -7,14 +7,14 @@ with lib;
     privileged = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Whether to enable privileged mounts
       '';
     };
     manageNetwork = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Whether to manage network interfaces through nix options
         When false, systemd-networkd is enabled to accept network
         configuration from proxmox.
@@ -23,7 +23,7 @@ with lib;
     manageHostName = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Whether to manage hostname through nix options
         When false, the hostname is picked up from /etc/hostname
         populated by proxmox.
diff --git a/nixos/modules/virtualisation/qemu-guest-agent.nix b/nixos/modules/virtualisation/qemu-guest-agent.nix
index aeab0ceac3cc2..fb65d327e7f21 100644
--- a/nixos/modules/virtualisation/qemu-guest-agent.nix
+++ b/nixos/modules/virtualisation/qemu-guest-agent.nix
@@ -10,7 +10,7 @@ in {
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc "Whether to enable the qemu guest agent.";
+        description = "Whether to enable the qemu guest agent.";
       };
       package = mkPackageOption pkgs [ "qemu_kvm" "ga" ] { };
   };
diff --git a/nixos/modules/virtualisation/qemu-vm.nix b/nixos/modules/virtualisation/qemu-vm.nix
index a8e5db4f8a5ba..06c1253d1fb64 100644
--- a/nixos/modules/virtualisation/qemu-vm.nix
+++ b/nixos/modules/virtualisation/qemu-vm.nix
@@ -28,26 +28,25 @@ let
 
       file = mkOption {
         type = types.str;
-        description = lib.mdDoc "The file image used for this drive.";
+        description = "The file image used for this drive.";
       };
 
       driveExtraOpts = mkOption {
         type = types.attrsOf types.str;
         default = {};
-        description = lib.mdDoc "Extra options passed to drive flag.";
+        description = "Extra options passed to drive flag.";
       };
 
       deviceExtraOpts = mkOption {
         type = types.attrsOf types.str;
         default = {};
-        description = lib.mdDoc "Extra options passed to device flag.";
+        description = "Extra options passed to device flag.";
       };
 
       name = mkOption {
         type = types.nullOr types.str;
         default = null;
-        description =
-          lib.mdDoc "A name for the drive. Must be unique in the drives list. Not passed to qemu.";
+        description = "A name for the drive. Must be unique in the drives list. Not passed to qemu.";
       };
 
     };
@@ -333,8 +332,7 @@ in
       mkOption {
         type = types.ints.positive;
         default = 1024;
-        description =
-          lib.mdDoc ''
+        description = ''
             The memory size in megabytes of the virtual machine.
           '';
       };
@@ -343,8 +341,7 @@ in
       mkOption {
         type = types.ints.positive;
         default = 16384;
-        description =
-          lib.mdDoc ''
+        description = ''
             The msize (maximum packet size) option passed to 9p file systems, in
             bytes. Increasing this should increase performance significantly,
             at the cost of higher RAM usage.
@@ -355,8 +352,7 @@ in
       mkOption {
         type = types.nullOr types.ints.positive;
         default = 1024;
-        description =
-          lib.mdDoc ''
+        description = ''
             The disk size in megabytes of the virtual machine.
           '';
       };
@@ -366,8 +362,7 @@ in
         type = types.nullOr types.str;
         default = "./${config.system.name}.qcow2";
         defaultText = literalExpression ''"./''${config.system.name}.qcow2"'';
-        description =
-          lib.mdDoc ''
+        description = ''
             Path to the disk image containing the root filesystem.
             The image will be created on startup if it does not
             exist.
@@ -383,8 +378,7 @@ in
         default = "/dev/disk/by-id/virtio-${rootDriveSerialAttr}";
         defaultText = literalExpression ''/dev/disk/by-id/virtio-${rootDriveSerialAttr}'';
         example = "/dev/disk/by-id/virtio-boot-loader-device";
-        description =
-          lib.mdDoc ''
+        description = ''
             The path (inside th VM) to the device to boot from when legacy booting.
           '';
         };
@@ -395,8 +389,7 @@ in
         default = if cfg.useEFIBoot then "/dev/disk/by-label/${espFilesystemLabel}" else null;
         defaultText = literalExpression ''if cfg.useEFIBoot then "/dev/disk/by-label/${espFilesystemLabel}" else null'';
         example = "/dev/disk/by-label/esp";
-        description =
-          lib.mdDoc ''
+        description = ''
             The path (inside the VM) to the device containing the EFI System Partition (ESP).
 
             If you are *not* booting from a UEFI firmware, this value is, by
@@ -410,8 +403,7 @@ in
         default = "/dev/disk/by-label/${rootFilesystemLabel}";
         defaultText = literalExpression ''/dev/disk/by-label/${rootFilesystemLabel}'';
         example = "/dev/disk/by-label/nixos";
-        description =
-          lib.mdDoc ''
+        description = ''
             The path (inside the VM) to the device containing the root filesystem.
           '';
       };
@@ -420,8 +412,7 @@ in
       mkOption {
         type = types.listOf types.ints.positive;
         default = [];
-        description =
-          lib.mdDoc ''
+        description = ''
             Additional disk images to provide to the VM. The value is
             a list of size in megabytes of each disk. These disks are
             writeable by the VM.
@@ -432,8 +423,7 @@ in
       mkOption {
         type = types.bool;
         default = true;
-        description =
-          lib.mdDoc ''
+        description = ''
             Whether to run QEMU with a graphics window, or in nographic mode.
             Serial console will be enabled on both settings, but this will
             change the preferred console.
@@ -444,8 +434,7 @@ in
       mkOption {
         type = options.services.xserver.resolutions.type.nestedTypes.elemType;
         default = { x = 1024; y = 768; };
-        description =
-          lib.mdDoc ''
+        description = ''
             The resolution of the virtual machine display.
           '';
       };
@@ -454,8 +443,7 @@ in
       mkOption {
         type = types.ints.positive;
         default = 1;
-        description =
-          lib.mdDoc ''
+        description = ''
             Specify the number of cores the guest is permitted to use.
             The number can be higher than the available cores on the
             host system.
@@ -468,19 +456,18 @@ in
           (types.submodule {
             options.source = mkOption {
               type = types.str;
-              description = lib.mdDoc "The path of the directory to share, can be a shell variable";
+              description = "The path of the directory to share, can be a shell variable";
             };
             options.target = mkOption {
               type = types.path;
-              description = lib.mdDoc "The mount point of the directory inside the virtual machine";
+              description = "The mount point of the directory inside the virtual machine";
             };
           });
         default = { };
         example = {
           my-share = { source = "/path/to/be/shared"; target = "/mnt/shared"; };
         };
-        description =
-          lib.mdDoc ''
+        description = ''
             An attributes set of directories that will be shared with the
             virtual machine using VirtFS (9P filesystem over VirtIO).
             The attribute name will be used as the 9P mount tag.
@@ -491,8 +478,7 @@ in
       mkOption {
         type = types.listOf types.path;
         default = [];
-        description =
-          lib.mdDoc ''
+        description = ''
             A list of paths whose closure should be made available to
             the VM.
 
@@ -513,8 +499,7 @@ in
           options.from = mkOption {
             type = types.enum [ "host" "guest" ];
             default = "host";
-            description =
-              lib.mdDoc ''
+            description = ''
                 Controls the direction in which the ports are mapped:
 
                 - `"host"` means traffic from the host ports
@@ -526,25 +511,25 @@ in
           options.proto = mkOption {
             type = types.enum [ "tcp" "udp" ];
             default = "tcp";
-            description = lib.mdDoc "The protocol to forward.";
+            description = "The protocol to forward.";
           };
           options.host.address = mkOption {
             type = types.str;
             default = "";
-            description = lib.mdDoc "The IPv4 address of the host.";
+            description = "The IPv4 address of the host.";
           };
           options.host.port = mkOption {
             type = types.port;
-            description = lib.mdDoc "The host port to be mapped.";
+            description = "The host port to be mapped.";
           };
           options.guest.address = mkOption {
             type = types.str;
             default = "";
-            description = lib.mdDoc "The IPv4 address on the guest VLAN.";
+            description = "The IPv4 address on the guest VLAN.";
           };
           options.guest.port = mkOption {
             type = types.port;
-            description = lib.mdDoc "The guest port to be mapped.";
+            description = "The guest port to be mapped.";
           };
         });
       default = [];
@@ -560,8 +545,7 @@ in
           }
         ]
         '';
-      description =
-        lib.mdDoc ''
+      description = ''
           When using the SLiRP user networking (default), this option allows to
           forward ports to/from the host/guest.
 
@@ -582,8 +566,7 @@ in
         type = types.bool;
         default = false;
         example = true;
-        description =
-          lib.mdDoc ''
+        description = ''
             If this option is enabled, the guest will be isolated, i.e. it will
             not be able to contact the host and no guest IP packets will be
             routed over the host to the outside. This option does not affect
@@ -597,8 +580,7 @@ in
         default = if config.virtualisation.interfaces == {} then [ 1 ] else [ ];
         defaultText = lib.literalExpression ''if config.virtualisation.interfaces == {} then [ 1 ] else [ ]'';
         example = [ 1 2 ];
-        description =
-          lib.mdDoc ''
+        description = ''
             Virtual networks to which the VM is connected.  Each
             number «N» in this list causes
             the VM to have a virtual Ethernet interface attached to a
@@ -615,14 +597,14 @@ in
       example = {
         enp1s0.vlan = 1;
       };
-      description = lib.mdDoc ''
+      description = ''
         Network interfaces to add to the VM.
       '';
       type = with types; attrsOf (submodule {
         options = {
           vlan = mkOption {
             type = types.ints.unsigned;
-            description = lib.mdDoc ''
+            description = ''
               VLAN to which the network interface is connected.
             '';
           };
@@ -630,7 +612,7 @@ in
           assignIP = mkOption {
             type = types.bool;
             default = false;
-            description = lib.mdDoc ''
+            description = ''
               Automatically assign an IP address to the network interface using the same scheme as
               virtualisation.vlans.
             '';
@@ -644,8 +626,7 @@ in
         type = types.bool;
         default = cfg.mountHostNixStore;
         defaultText = literalExpression "cfg.mountHostNixStore";
-        description =
-          lib.mdDoc ''
+        description = ''
             If enabled, the Nix store in the VM is made writable by
             layering an overlay filesystem on top of the host's Nix
             store.
@@ -658,8 +639,7 @@ in
       mkOption {
         type = types.bool;
         default = true;
-        description =
-          lib.mdDoc ''
+        description = ''
             Use a tmpfs for the writable store instead of writing to the VM's
             own filesystem.
           '';
@@ -670,7 +650,7 @@ in
         type = types.str;
         default = "";
         internal = true;
-        description = lib.mdDoc "Primary IP address used in /etc/hosts.";
+        description = "Primary IP address used in /etc/hosts.";
       };
 
     virtualisation.host.pkgs = mkOption {
@@ -680,7 +660,7 @@ in
       example = literalExpression ''
         import pkgs.path { system = "x86_64-darwin"; }
       '';
-      description = lib.mdDoc ''
+      description = ''
         Package set to use for the host-specific packages of the VM runner.
         Changing this to e.g. a Darwin package set allows running NixOS VMs on Darwin.
       '';
@@ -693,7 +673,7 @@ in
           default = if hostPkgs.stdenv.hostPlatform.qemuArch == pkgs.stdenv.hostPlatform.qemuArch then hostPkgs.qemu_kvm else hostPkgs.qemu;
           defaultText = literalExpression "if hostPkgs.stdenv.hostPlatform.qemuArch == pkgs.stdenv.hostPlatform.qemuArch then config.virtualisation.host.pkgs.qemu_kvm else config.virtualisation.host.pkgs.qemu";
           example = literalExpression "pkgs.qemu_test";
-          description = lib.mdDoc "QEMU package to use.";
+          description = "QEMU package to use.";
         };
 
       options =
@@ -701,7 +681,7 @@ in
           type = types.listOf types.str;
           default = [];
           example = [ "-vga std" ];
-          description = lib.mdDoc ''
+          description = ''
             Options passed to QEMU.
             See [QEMU User Documentation](https://www.qemu.org/docs/master/system/qemu-manpage) for a complete list.
           '';
@@ -713,7 +693,7 @@ in
           consoles = [ "${qemu-common.qemuSerialDevice},115200n8" "tty0" ];
         in if cfg.graphics then consoles else reverseList consoles;
         example = [ "console=tty1" ];
-        description = lib.mdDoc ''
+        description = ''
           The output console devices to pass to the kernel command line via the
           `console` parameter, the primary console is the last
           item of this list.
@@ -732,7 +712,7 @@ in
             "-net nic,netdev=user.0,model=virtio"
             "-netdev user,id=user.0,\${QEMU_NET_OPTS:+,$QEMU_NET_OPTS}"
           ];
-          description = lib.mdDoc ''
+          description = ''
             Networking-related command-line options that should be passed to qemu.
             The default is to use userspace networking (SLiRP).
             See the [QEMU Wiki on Networking](https://wiki.qemu.org/Documentation/Networking) for details.
@@ -746,7 +726,7 @@ in
       drives =
         mkOption {
           type = types.listOf (types.submodule driveOpts);
-          description = lib.mdDoc "Drives passed to qemu.";
+          description = "Drives passed to qemu.";
         };
 
       diskInterface =
@@ -754,14 +734,14 @@ in
           type = types.enum [ "virtio" "scsi" "ide" ];
           default = "virtio";
           example = "scsi";
-          description = lib.mdDoc "The interface used for the virtual hard disks.";
+          description = "The interface used for the virtual hard disks.";
         };
 
       guestAgent.enable =
         mkOption {
           type = types.bool;
           default = true;
-          description = lib.mdDoc ''
+          description = ''
             Enable the Qemu guest agent.
           '';
         };
@@ -770,7 +750,7 @@ in
         mkOption {
           type = types.bool;
           default = true;
-          description = lib.mdDoc ''
+          description = ''
             Enable the virtio-keyboard device.
           '';
         };
@@ -780,7 +760,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description = lib.mdDoc ''
+        description = ''
           Build and use a disk image for the Nix store, instead of
           accessing the host's one through 9p.
 
@@ -800,7 +780,7 @@ in
         type = types.bool;
         default = !cfg.useNixStoreImage && !cfg.useBootLoader;
         defaultText = literalExpression "!cfg.useNixStoreImage && !cfg.useBootLoader";
-        description = lib.mdDoc ''
+        description = ''
           Mount the host Nix store as a 9p mount.
         '';
       };
@@ -811,8 +791,7 @@ in
           type = types.bool;
           default = !cfg.useBootLoader;
           defaultText = "!cfg.useBootLoader";
-          description =
-            lib.mdDoc ''
+          description = ''
               If enabled, the virtual machine will boot directly into the kernel instead of through a bootloader.
               Read more about this feature in the [QEMU documentation on Direct Linux Boot](https://qemu-project.gitlab.io/qemu/system/linuxboot.html)
 
@@ -833,8 +812,7 @@ in
           type = types.str;
           default = "${config.system.build.initialRamdisk}/${config.system.boot.loader.initrdFile}";
           defaultText = "\${config.system.build.initialRamdisk}/\${config.system.boot.loader.initrdFile}";
-          description =
-            lib.mdDoc ''
+          description = ''
               In direct boot situations, you may want to influence the initrd to load
               to use your own customized payload.
 
@@ -848,8 +826,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description =
-          lib.mdDoc ''
+        description = ''
             Use a boot loader to boot the system.
             This allows, among other things, testing the boot loader.
 
@@ -864,8 +841,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description =
-          lib.mdDoc ''
+        description = ''
             If enabled, the virtual machine will provide a EFI boot
             manager.
             useEFIBoot is ignored if useBootLoader == false.
@@ -881,16 +857,14 @@ in
         defaultText = ''(pkgs.OVMF.override {
           secureBoot = cfg.useSecureBoot;
         }).fd'';
-        description =
-        lib.mdDoc "OVMF firmware package, defaults to OVMF configured with secure boot if needed.";
+        description = "OVMF firmware package, defaults to OVMF configured with secure boot if needed.";
       };
 
       firmware = mkOption {
         type = types.path;
         default = cfg.efi.OVMF.firmware;
         defaultText = literalExpression "cfg.efi.OVMF.firmware";
-        description =
-          lib.mdDoc ''
+        description = ''
             Firmware binary for EFI implementation, defaults to OVMF.
           '';
       };
@@ -899,8 +873,7 @@ in
         type = types.path;
         default = cfg.efi.OVMF.variables;
         defaultText = literalExpression "cfg.efi.OVMF.variables";
-        description =
-          lib.mdDoc ''
+        description = ''
             Platform-specific flash binary for EFI variables, implementation-dependent to the EFI firmware.
             Defaults to OVMF.
           '';
@@ -936,7 +909,7 @@ in
           - `tpm-tis-device` for (armv7, aarch64)
         '';
         example = "tpm-tis-device";
-        description = lib.mdDoc "QEMU device model for the TPM, uses the appropriate default based on th guest platform system and the package passed.";
+        description = "QEMU device model for the TPM, uses the appropriate default based on th guest platform system and the package passed.";
       };
     };
 
@@ -944,8 +917,7 @@ in
       mkOption {
         type = types.bool;
         default = true;
-        description =
-          lib.mdDoc ''
+        description = ''
             If enabled, the boot disk of the virtual machine will be
             formatted and mounted with the default filesystems for
             testing. Swap devices and LUKS will be disabled.
@@ -959,8 +931,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description =
-          lib.mdDoc ''
+        description = ''
             Enable Secure Boot support in the EFI firmware.
           '';
       };
@@ -969,8 +940,7 @@ in
       mkOption {
         type = types.nullOr types.package;
         default = null;
-        description =
-          lib.mdDoc ''
+        description = ''
             An alternate BIOS (such as `qboot`) with which to start the VM.
             Should contain a file named `bios.bin`.
             If `null`, QEMU's builtin SeaBIOS will be used.
@@ -981,8 +951,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description =
-          lib.mdDoc ''
+        description = ''
             If enabled, when `NIX_SSL_CERT_FILE` is set on the host,
             pass the CA certificates from the host to the VM.
           '';
diff --git a/nixos/modules/virtualisation/rosetta.nix b/nixos/modules/virtualisation/rosetta.nix
index ee811b571b8f8..c4780ae1a81d1 100644
--- a/nixos/modules/virtualisation/rosetta.nix
+++ b/nixos/modules/virtualisation/rosetta.nix
@@ -9,7 +9,7 @@ in
     virtualisation.rosetta.enable = lib.mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Whether to enable [Rosetta](https://developer.apple.com/documentation/apple-silicon/about-the-rosetta-translation-environment) support.
 
         This feature requires the system to be a virtualised guest on an Apple silicon host.
@@ -23,7 +23,7 @@ in
       type = types.str;
       default = "/run/rosetta";
       internal = true;
-      description = lib.mdDoc ''
+      description = ''
         The mount point for the Rosetta runtime inside the guest system.
 
         The proprietary runtime is exposed through a VirtioFS directory share and then mounted at this directory.
@@ -33,7 +33,7 @@ in
     virtualisation.rosetta.mountTag = lib.mkOption {
       type = types.str;
       default = "rosetta";
-      description = lib.mdDoc ''
+      description = ''
         The VirtioFS mount tag for the Rosetta runtime, exposed by the host's virtualisation software.
 
         If supported, your virtualisation software should provide instructions on how register the Rosetta runtime inside Linux guests.
diff --git a/nixos/modules/virtualisation/spice-usb-redirection.nix b/nixos/modules/virtualisation/spice-usb-redirection.nix
index ab2b058c686f7..255327f2622c9 100644
--- a/nixos/modules/virtualisation/spice-usb-redirection.nix
+++ b/nixos/modules/virtualisation/spice-usb-redirection.nix
@@ -3,7 +3,7 @@
   options.virtualisation.spiceUSBRedirection.enable = lib.mkOption {
     type = lib.types.bool;
     default = false;
-    description = lib.mdDoc ''
+    description = ''
       Install the SPICE USB redirection helper with setuid
       privileges. This allows unprivileged users to pass USB devices
       connected to this machine to libvirt VMs, both local and
diff --git a/nixos/modules/virtualisation/virtualbox-guest.nix b/nixos/modules/virtualisation/virtualbox-guest.nix
index c2606968d3bed..649ff3abb9ae9 100644
--- a/nixos/modules/virtualisation/virtualbox-guest.nix
+++ b/nixos/modules/virtualisation/virtualbox-guest.nix
@@ -37,25 +37,25 @@ in
     enable = mkOption {
       default = false;
       type = types.bool;
-      description = lib.mdDoc "Whether to enable the VirtualBox service and other guest additions.";
+      description = "Whether to enable the VirtualBox service and other guest additions.";
     };
 
     clipboard = mkOption {
       default = true;
       type = types.bool;
-      description = lib.mdDoc "Whether to enable clipboard support.";
+      description = "Whether to enable clipboard support.";
     };
 
     seamless = mkOption {
       default = true;
       type = types.bool;
-      description = lib.mdDoc "Whether to enable seamless mode. When activated windows from the guest appear next to the windows of the host.";
+      description = "Whether to enable seamless mode. When activated windows from the guest appear next to the windows of the host.";
     };
 
     draganddrop = mkOption {
       default = true;
       type = types.bool;
-      description = lib.mdDoc "Whether to enable drag and drop support.";
+      description = "Whether to enable drag and drop support.";
     };
   };
 
diff --git a/nixos/modules/virtualisation/virtualbox-host.nix b/nixos/modules/virtualisation/virtualbox-host.nix
index 0ecf7f490cf6f..609799995c527 100644
--- a/nixos/modules/virtualisation/virtualbox-host.nix
+++ b/nixos/modules/virtualisation/virtualbox-host.nix
@@ -18,8 +18,8 @@ in
 
 {
   options.virtualisation.virtualbox.host = {
-    enable = mkEnableOption (lib.mdDoc "VirtualBox") // {
-      description = lib.mdDoc ''
+    enable = mkEnableOption "VirtualBox" // {
+      description = ''
         Whether to enable VirtualBox.
 
         ::: {.note}
@@ -29,8 +29,8 @@ in
       '';
     };
 
-    enableExtensionPack = mkEnableOption (lib.mdDoc "VirtualBox extension pack") // {
-      description = lib.mdDoc ''
+    enableExtensionPack = mkEnableOption "VirtualBox extension pack" // {
+      description = ''
         Whether to install the Oracle Extension Pack for VirtualBox.
 
         ::: {.important}
@@ -45,7 +45,7 @@ in
     addNetworkInterface = mkOption {
       type = types.bool;
       default = true;
-      description = lib.mdDoc ''
+      description = ''
         Automatically set up a vboxnet0 host-only network interface.
       '';
     };
@@ -53,7 +53,7 @@ in
     enableHardening = mkOption {
       type = types.bool;
       default = true;
-      description = lib.mdDoc ''
+      description = ''
         Enable hardened VirtualBox, which ensures that only the binaries in the
         system path get access to the devices exposed by the kernel modules
         instead of all users in the vboxusers group.
@@ -68,7 +68,7 @@ in
     headless = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Use VirtualBox installation without GUI and Qt dependency. Useful to enable on servers
         and when virtual machines are controlled only via SSH.
       '';
@@ -77,7 +77,7 @@ in
     enableWebService = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Build VirtualBox web service tool (vboxwebsrv) to allow managing VMs via other webpage frontend tools. Useful for headless servers.
       '';
     };
@@ -85,7 +85,7 @@ in
     enableKvm = mkOption {
       type = types.bool;
       default = false;
-      description = lib.mdDoc ''
+      description = ''
         Enable KVM support for VirtualBox. This increases compatibility with Linux kernel versions, because the VirtualBox kernel modules
         are not required.
 
diff --git a/nixos/modules/virtualisation/virtualbox-image.nix b/nixos/modules/virtualisation/virtualbox-image.nix
index 0da217fd1cb0c..1c8b9b99c01ca 100644
--- a/nixos/modules/virtualisation/virtualbox-image.nix
+++ b/nixos/modules/virtualisation/virtualbox-image.nix
@@ -14,42 +14,42 @@ in {
         type = with types; either (enum [ "auto" ]) int;
         default = "auto";
         example = 50 * 1024;
-        description = lib.mdDoc ''
+        description = ''
           The size of the VirtualBox base image in MiB.
         '';
       };
       baseImageFreeSpace = mkOption {
         type = with types; int;
         default = 30 * 1024;
-        description = lib.mdDoc ''
+        description = ''
           Free space in the VirtualBox base image in MiB.
         '';
       };
       memorySize = mkOption {
         type = types.int;
         default = 1536;
-        description = lib.mdDoc ''
+        description = ''
           The amount of RAM the VirtualBox appliance can use in MiB.
         '';
       };
       vmDerivationName = mkOption {
         type = types.str;
         default = "nixos-ova-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}";
-        description = lib.mdDoc ''
+        description = ''
           The name of the derivation for the VirtualBox appliance.
         '';
       };
       vmName = mkOption {
         type = types.str;
         default = "${config.system.nixos.distroName} ${config.system.nixos.label} (${pkgs.stdenv.hostPlatform.system})";
-        description = lib.mdDoc ''
+        description = ''
           The name of the VirtualBox appliance.
         '';
       };
       vmFileName = mkOption {
         type = types.str;
         default = "nixos-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.ova";
-        description = lib.mdDoc ''
+        description = ''
           The file name of the VirtualBox appliance.
         '';
       };
@@ -60,7 +60,7 @@ in {
           rtcuseutc = "on";
           usb = "off";
         };
-        description = lib.mdDoc ''
+        description = ''
           Parameters passed to the Virtualbox appliance.
 
           Run `VBoxManage modifyvm --help` to see more options.
@@ -72,14 +72,14 @@ in {
           "--vsys" "0" "--vendor" "ACME Inc."
         ];
         default = [];
-        description = lib.mdDoc ''
+        description = ''
           Parameters passed to the Virtualbox export command.
 
           Run `VBoxManage export --help` to see more options.
         '';
       };
       extraDisk = mkOption {
-        description = lib.mdDoc ''
+        description = ''
           Optional extra disk/hdd configuration.
           The disk will be an 'ext4' partition on a separate file.
         '';
@@ -93,16 +93,16 @@ in {
           options = {
             size = mkOption {
               type = types.int;
-              description = lib.mdDoc "Size in MiB";
+              description = "Size in MiB";
             };
             label = mkOption {
               type = types.str;
               default = "vm-extra-storage";
-              description = lib.mdDoc "Label for the disk partition";
+              description = "Label for the disk partition";
             };
             mountPoint = mkOption {
               type = types.str;
-              description = lib.mdDoc "Path where to mount this disk.";
+              description = "Path where to mount this disk.";
             };
           };
         });
@@ -120,7 +120,7 @@ in {
             --network-descriptions 'Nic description' \
             --scsi-subtypes VirtualSCSI
         '';
-        description = lib.mdDoc ''
+        description = ''
           Extra commands to run after exporting the OVA to `$fn`.
         '';
       };
@@ -140,7 +140,7 @@ in {
           bootable = "on";
           hostiocache = "on";
         };
-        description = lib.mdDoc ''
+        description = ''
           Parameters passed to the VirtualBox appliance. Must have at least
           `name`.
 
diff --git a/nixos/modules/virtualisation/vmware-guest.nix b/nixos/modules/virtualisation/vmware-guest.nix
index 6880a257c2be6..9bd8f41096438 100644
--- a/nixos/modules/virtualisation/vmware-guest.nix
+++ b/nixos/modules/virtualisation/vmware-guest.nix
@@ -13,12 +13,12 @@ in
   ];
 
   options.virtualisation.vmware.guest = {
-    enable = mkEnableOption (lib.mdDoc "VMWare Guest Support");
+    enable = mkEnableOption "VMWare Guest Support";
     headless = mkOption {
       type = types.bool;
       default = !config.services.xserver.enable;
       defaultText = "!config.services.xserver.enable";
-      description = lib.mdDoc "Whether to disable X11-related features.";
+      description = "Whether to disable X11-related features.";
     };
   };
 
diff --git a/nixos/modules/virtualisation/vmware-host.nix b/nixos/modules/virtualisation/vmware-host.nix
index 094114623a424..5fac2a4a8e8d4 100644
--- a/nixos/modules/virtualisation/vmware-host.nix
+++ b/nixos/modules/virtualisation/vmware-host.nix
@@ -20,8 +20,8 @@ in
 {
   options = with lib; {
     virtualisation.vmware.host = {
-      enable = mkEnableOption (lib.mdDoc "VMware") // {
-        description = lib.mdDoc ''
+      enable = mkEnableOption "VMware" // {
+        description = ''
           This enables VMware host virtualisation for running VMs.
 
           ::: {.important}
@@ -41,13 +41,13 @@ in
       extraPackages = mkOption {
         type = with types; listOf package;
         default = with pkgs; [ ];
-        description = lib.mdDoc "Extra packages to be used with VMware host.";
+        description = "Extra packages to be used with VMware host.";
         example = "with pkgs; [ ntfs3g ]";
       };
       extraConfig = mkOption {
         type = types.lines;
         default = "";
-        description = lib.mdDoc "Add extra config to /etc/vmware/config";
+        description = "Add extra config to /etc/vmware/config";
         example = ''
           # Allow unsupported device's OpenGL and Vulkan acceleration for guest vGPU
           mks.gl.allowUnsupportedDrivers = "TRUE"
diff --git a/nixos/modules/virtualisation/vmware-image.nix b/nixos/modules/virtualisation/vmware-image.nix
index 3674b37d0b97e..4a9064c9b8a3e 100644
--- a/nixos/modules/virtualisation/vmware-image.nix
+++ b/nixos/modules/virtualisation/vmware-image.nix
@@ -21,34 +21,34 @@ in {
         type = with types; either (enum [ "auto" ]) int;
         default = "auto";
         example = 2048;
-        description = lib.mdDoc ''
+        description = ''
           The size of the VMWare base image in MiB.
         '';
       };
       vmDerivationName = mkOption {
         type = types.str;
         default = "nixos-vmware-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}";
-        description = lib.mdDoc ''
+        description = ''
           The name of the derivation for the VMWare appliance.
         '';
       };
       vmFileName = mkOption {
         type = types.str;
         default = "nixos-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.vmdk";
-        description = lib.mdDoc ''
+        description = ''
           The file name of the VMWare appliance.
         '';
       };
       vmSubformat = mkOption {
         type = types.enum subformats;
         default = "monolithicSparse";
-        description = lib.mdDoc "Specifies which VMDK subformat to use.";
+        description = "Specifies which VMDK subformat to use.";
       };
       vmCompat6 = mkOption {
         type = types.bool;
         default = false;
         example = true;
-        description = lib.mdDoc "Create a VMDK version 6 image (instead of version 4).";
+        description = "Create a VMDK version 6 image (instead of version 4).";
       };
     };
   };
diff --git a/nixos/modules/virtualisation/waydroid.nix b/nixos/modules/virtualisation/waydroid.nix
index 1f466c780cf22..2a2ef86f2ce37 100644
--- a/nixos/modules/virtualisation/waydroid.nix
+++ b/nixos/modules/virtualisation/waydroid.nix
@@ -20,7 +20,7 @@ in
 {
 
   options.virtualisation.waydroid = {
-    enable = lib.mkEnableOption (lib.mdDoc "Waydroid");
+    enable = lib.mkEnableOption "Waydroid";
   };
 
   config = lib.mkIf cfg.enable {
diff --git a/nixos/modules/virtualisation/xe-guest-utilities.nix b/nixos/modules/virtualisation/xe-guest-utilities.nix
index 792edc9b397dd..25ccbaebc0772 100644
--- a/nixos/modules/virtualisation/xe-guest-utilities.nix
+++ b/nixos/modules/virtualisation/xe-guest-utilities.nix
@@ -5,7 +5,7 @@ let
 in {
   options = {
     services.xe-guest-utilities = {
-      enable = mkEnableOption (lib.mdDoc "the Xen guest utilities daemon");
+      enable = mkEnableOption "the Xen guest utilities daemon";
     };
   };
   config = mkIf cfg.enable {
diff --git a/nixos/modules/virtualisation/xen-dom0.nix b/nixos/modules/virtualisation/xen-dom0.nix
index 8f361a7ac020a..2fb8c6cd45664 100644
--- a/nixos/modules/virtualisation/xen-dom0.nix
+++ b/nixos/modules/virtualisation/xen-dom0.nix
@@ -22,8 +22,7 @@ in
       mkOption {
         default = false;
         type = types.bool;
-        description =
-          mdDoc ''
+        description = ''
             Setting this option enables the Xen hypervisor, a
             virtualisation technology that allows multiple virtual
             machines, known as *domains*, to run
@@ -37,7 +36,7 @@ in
       type = types.package;
       defaultText = literalExpression "pkgs.xen";
       example = literalExpression "pkgs.xen-light";
-      description = lib.mdDoc ''
+      description = ''
         The package used for Xen binary.
       '';
       relatedPackages = [ "xen" "xen-light" ];
@@ -47,7 +46,7 @@ in
       type = types.package;
       defaultText = literalExpression "pkgs.xen";
       example = literalExpression "pkgs.qemu_xen-light";
-      description = lib.mdDoc ''
+      description = ''
         The package with qemu binaries for dom0 qemu and xendomains.
       '';
       relatedPackages = [ "xen"
@@ -59,7 +58,7 @@ in
       mkOption {
         default = [];
         type = types.listOf types.str;
-        description = lib.mdDoc
+        description =
           ''
             Parameters passed to the Xen hypervisor at boot time.
           '';
@@ -70,7 +69,7 @@ in
         default = 0;
         example = 512;
         type = types.addCheck types.int (n: n >= 0);
-        description = lib.mdDoc
+        description =
           ''
             Amount of memory (in MiB) allocated to Domain 0 on boot.
             If set to 0, all memory is assigned to Domain 0.
@@ -81,7 +80,7 @@ in
         name = mkOption {
           default = "xenbr0";
           type = types.str;
-          description = lib.mdDoc ''
+          description = ''
               Name of bridge the Xen domUs connect to.
             '';
         };
@@ -89,7 +88,7 @@ in
         address = mkOption {
           type = types.str;
           default = "172.16.0.1";
-          description = lib.mdDoc ''
+          description = ''
             IPv4 address of the bridge.
           '';
         };
@@ -97,7 +96,7 @@ in
         prefixLength = mkOption {
           type = types.addCheck types.int (n: n >= 0 && n <= 32);
           default = 16;
-          description = lib.mdDoc ''
+          description = ''
             Subnet mask of the bridge interface, specified as the number of
             bits in the prefix (`24`).
             A DHCP server will provide IP addresses for the whole, remaining
@@ -108,7 +107,7 @@ in
         forwardDns = mkOption {
           type = types.bool;
           default = false;
-          description = lib.mdDoc ''
+          description = ''
             If set to `true`, the DNS queries from the
             hosts connected to the bridge will be forwarded to the DNS
             servers specified in /etc/resolv.conf .
@@ -120,7 +119,7 @@ in
     virtualisation.xen.stored =
       mkOption {
         type = types.path;
-        description = lib.mdDoc
+        description =
           ''
             Xen Store daemon to use. Defaults to oxenstored of the xen package.
           '';
@@ -130,7 +129,7 @@ in
         extraConfig = mkOption {
           type = types.lines;
           default = "";
-          description = lib.mdDoc
+          description =
             ''
               Options defined here will override the defaults for xendomains.
               The default options can be seen in the file included from
@@ -139,7 +138,7 @@ in
           };
       };
 
-    virtualisation.xen.trace = mkEnableOption (lib.mdDoc "Xen tracing");
+    virtualisation.xen.trace = mkEnableOption "Xen tracing";
 
   };