lol

nixos/*: automatically convert option docs

pennae 087472b1 423545fe

+1552 -1552
+4 -4
nixos/modules/config/sysctl.nix
··· 26 26 { "net.ipv4.tcp_syncookies" = false; "vm.swappiness" = 60; } 27 27 ''; 28 28 type = types.attrsOf sysctlOption; 29 - description = '' 29 + description = lib.mdDoc '' 30 30 Runtime parameters of the Linux kernel, as set by 31 - <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Note that sysctl 31 + {manpage}`sysctl(8)`. Note that sysctl 32 32 parameters names must be enclosed in quotes 33 - (e.g. <literal>"vm.swappiness"</literal> instead of 34 - <literal>vm.swappiness</literal>). The value of each 33 + (e.g. `"vm.swappiness"` instead of 34 + `vm.swappiness`). The value of each 35 35 parameter may be a string, integer, boolean, or null 36 36 (signifying the option will not appear at all). 37 37 '';
+5 -5
nixos/modules/config/system-environment.nix
··· 39 39 environment.profileRelativeSessionVariables = mkOption { 40 40 type = types.attrsOf (types.listOf types.str); 41 41 example = { PATH = [ "/bin" ]; MANPATH = [ "/man" "/share/man" ]; }; 42 - description = '' 42 + description = lib.mdDoc '' 43 43 Attribute set of environment variable used in the global 44 44 environment. These variables will be set by PAM early in the 45 45 login process. 46 46 47 47 Variable substitution is available as described in 48 - <citerefentry><refentrytitle>pam_env.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 48 + {manpage}`pam_env.conf(5)`. 49 49 50 50 Each attribute maps to a list of relative paths. Each relative 51 51 path is appended to the each profile of 52 - <option>environment.profiles</option> to form the content of 52 + {option}`environment.profiles` to form the content of 53 53 the corresponding environment variable. 54 54 55 55 Also, these variables are merged into 56 - <xref linkend="opt-environment.profileRelativeEnvVars"/> and it is 56 + [](#opt-environment.profileRelativeEnvVars) and it is 57 57 therefore not possible to use PAM style variables such as 58 - <literal>@{HOME}</literal>. 58 + `@{HOME}`. 59 59 ''; 60 60 }; 61 61
+19 -19
nixos/modules/installer/cd-dvd/iso-image.nix
··· 454 454 455 455 isoImage.isoName = mkOption { 456 456 default = "${config.isoImage.isoBaseName}.iso"; 457 - description = '' 457 + description = lib.mdDoc '' 458 458 Name of the generated ISO image file. 459 459 ''; 460 460 }; 461 461 462 462 isoImage.isoBaseName = mkOption { 463 463 default = "nixos"; 464 - description = '' 464 + description = lib.mdDoc '' 465 465 Prefix of the name of the generated ISO image file. 466 466 ''; 467 467 }; 468 468 469 469 isoImage.compressImage = mkOption { 470 470 default = false; 471 - description = '' 471 + description = lib.mdDoc '' 472 472 Whether the ISO image should be compressed using 473 - <command>zstd</command>. 473 + {command}`zstd`. 474 474 ''; 475 475 }; 476 476 ··· 481 481 + lib.optionalString isAarch "-Xbcj arm" 482 482 + lib.optionalString (isPower && is32bit && isBigEndian) "-Xbcj powerpc" 483 483 + lib.optionalString (isSparc) "-Xbcj sparc"; 484 - description = '' 484 + description = lib.mdDoc '' 485 485 Compression settings to use for the squashfs nix store. 486 486 ''; 487 487 example = "zstd -Xcompression-level 6"; ··· 489 489 490 490 isoImage.edition = mkOption { 491 491 default = ""; 492 - description = '' 492 + description = lib.mdDoc '' 493 493 Specifies which edition string to use in the volume ID of the generated 494 494 ISO image. 495 495 ''; ··· 498 498 isoImage.volumeID = mkOption { 499 499 # nixos-$EDITION-$RELEASE-$ARCH 500 500 default = "nixos${optionalString (config.isoImage.edition != "") "-${config.isoImage.edition}"}-${config.system.nixos.release}-${pkgs.stdenv.hostPlatform.uname.processor}"; 501 - description = '' 501 + description = lib.mdDoc '' 502 502 Specifies the label or volume ID of the generated ISO image. 503 503 Note that the label is used by stage 1 of the boot process to 504 504 mount the CD, so it should be reasonably distinctive. ··· 512 512 } 513 513 ] 514 514 ''; 515 - description = '' 515 + description = lib.mdDoc '' 516 516 This option lists files to be copied to fixed locations in the 517 517 generated ISO image. 518 518 ''; ··· 520 520 521 521 isoImage.storeContents = mkOption { 522 522 example = literalExpression "[ pkgs.stdenv ]"; 523 - description = '' 523 + description = lib.mdDoc '' 524 524 This option lists additional derivations to be included in the 525 525 Nix store in the generated ISO image. 526 526 ''; ··· 528 528 529 529 isoImage.includeSystemBuildDependencies = mkOption { 530 530 default = false; 531 - description = '' 531 + description = lib.mdDoc '' 532 532 Set this option to include all the needed sources etc in the 533 533 image. It significantly increases image size. Use that when 534 534 you want to be able to keep all the sources needed to build your ··· 539 539 540 540 isoImage.makeEfiBootable = mkOption { 541 541 default = false; 542 - description = '' 542 + description = lib.mdDoc '' 543 543 Whether the ISO image should be an efi-bootable volume. 544 544 ''; 545 545 }; 546 546 547 547 isoImage.makeUsbBootable = mkOption { 548 548 default = false; 549 - description = '' 549 + description = lib.mdDoc '' 550 550 Whether the ISO image should be bootable from CD as well as USB. 551 551 ''; 552 552 }; ··· 556 556 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/a9e05d7deb38a8e005a2b52575a3f59a63a4dba0/bootloader/efi-background.png"; 557 557 sha256 = "18lfwmp8yq923322nlb9gxrh5qikj1wsk6g5qvdh31c4h5b1538x"; 558 558 }; 559 - description = '' 559 + description = lib.mdDoc '' 560 560 The splash image to use in the EFI bootloader. 561 561 ''; 562 562 }; ··· 566 566 url = "https://raw.githubusercontent.com/NixOS/nixos-artwork/a9e05d7deb38a8e005a2b52575a3f59a63a4dba0/bootloader/isolinux/bios-boot.png"; 567 567 sha256 = "1wp822zrhbg4fgfbwkr7cbkr4labx477209agzc0hr6k62fr6rxd"; 568 568 }; 569 - description = '' 569 + description = lib.mdDoc '' 570 570 The splash image to use in the legacy-boot bootloader. 571 571 ''; 572 572 }; ··· 574 574 isoImage.grubTheme = mkOption { 575 575 default = pkgs.nixos-grub2-theme; 576 576 type = types.nullOr (types.either types.path types.package); 577 - description = '' 577 + description = lib.mdDoc '' 578 578 The grub2 theme used for UEFI boot. 579 579 ''; 580 580 }; ··· 605 605 MENU COLOR SEL 7;37;40 #FFFFFFFF #FF5277C3 std 606 606 ''; 607 607 type = types.str; 608 - description = '' 608 + description = lib.mdDoc '' 609 609 The syslinux theme used for BIOS boot. 610 610 ''; 611 611 }; ··· 613 613 isoImage.appendToMenuLabel = mkOption { 614 614 default = " Installer"; 615 615 example = " Live System"; 616 - description = '' 616 + description = lib.mdDoc '' 617 617 The string to append after the menu label for the NixOS system. 618 618 This will be directly appended (without whitespace) to the NixOS version 619 - string, like for example if it is set to <literal>XXX</literal>: 619 + string, like for example if it is set to `XXX`: 620 620 621 - <literal>NixOS 99.99-pre666XXX</literal> 621 + `NixOS 99.99-pre666XXX` 622 622 ''; 623 623 }; 624 624
+1 -1
nixos/modules/installer/netboot/netboot.nix
··· 10 10 11 11 netboot.storeContents = mkOption { 12 12 example = literalExpression "[ pkgs.stdenv ]"; 13 - description = '' 13 + description = lib.mdDoc '' 14 14 This option lists additional derivations to be included in the 15 15 Nix store in the generated netboot image. 16 16 '';
+14 -14
nixos/modules/misc/documentation.nix
··· 157 157 enable = mkOption { 158 158 type = types.bool; 159 159 default = true; 160 - description = '' 160 + description = lib.mdDoc '' 161 161 Whether to install documentation of packages from 162 - <option>environment.systemPackages</option> into the generated system path. 162 + {option}`environment.systemPackages` into the generated system path. 163 163 164 164 See "Multiple-output packages" chapter in the nixpkgs manual for more info. 165 165 ''; ··· 169 169 man.enable = mkOption { 170 170 type = types.bool; 171 171 default = true; 172 - description = '' 172 + description = lib.mdDoc '' 173 173 Whether to install manual pages. 174 - This also includes <literal>man</literal> outputs. 174 + This also includes `man` outputs. 175 175 ''; 176 176 }; 177 177 ··· 190 190 info.enable = mkOption { 191 191 type = types.bool; 192 192 default = true; 193 - description = '' 194 - Whether to install info pages and the <command>info</command> command. 193 + description = lib.mdDoc '' 194 + Whether to install info pages and the {command}`info` command. 195 195 This also includes "info" outputs. 196 196 ''; 197 197 }; ··· 199 199 doc.enable = mkOption { 200 200 type = types.bool; 201 201 default = true; 202 - description = '' 203 - Whether to install documentation distributed in packages' <literal>/share/doc</literal>. 202 + description = lib.mdDoc '' 203 + Whether to install documentation distributed in packages' `/share/doc`. 204 204 Usually plain text and/or HTML. 205 205 This also includes "doc" outputs. 206 206 ''; ··· 238 238 nixos.options.splitBuild = mkOption { 239 239 type = types.bool; 240 240 default = true; 241 - description = '' 241 + description = lib.mdDoc '' 242 242 Whether to split the option docs build into a cacheable and an uncacheable part. 243 243 Splitting the build can substantially decrease the amount of time needed to build 244 244 the manual, but some user modules may be incompatible with this splitting. ··· 248 248 nixos.options.warningsAreErrors = mkOption { 249 249 type = types.bool; 250 250 default = true; 251 - description = '' 251 + description = lib.mdDoc '' 252 252 Treat warning emitted during the option documentation build (eg for missing option 253 253 descriptions) as errors. 254 254 ''; ··· 257 257 nixos.includeAllModules = mkOption { 258 258 type = types.bool; 259 259 default = false; 260 - description = '' 260 + description = lib.mdDoc '' 261 261 Whether the generated NixOS's documentation should include documentation for all 262 262 the options from all the NixOS modules included in the current 263 - <literal>configuration.nix</literal>. Disabling this will make the manual 264 - generator to ignore options defined outside of <literal>baseModules</literal>. 263 + `configuration.nix`. Disabling this will make the manual 264 + generator to ignore options defined outside of `baseModules`. 265 265 ''; 266 266 }; 267 267 268 268 nixos.extraModuleSources = mkOption { 269 269 type = types.listOf (types.either types.path types.str); 270 270 default = [ ]; 271 - description = '' 271 + description = lib.mdDoc '' 272 272 Which extra NixOS module paths the generated NixOS's documentation should strip 273 273 from options. 274 274 '';
+4 -4
nixos/modules/misc/locate.nix
··· 39 39 type = str; 40 40 default = "02:15"; 41 41 example = "hourly"; 42 - description = '' 42 + description = lib.mdDoc '' 43 43 Update the locate database at this interval. Updates by 44 44 default at 2:15 AM every day. 45 45 46 46 The format is described in 47 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 47 + {manpage}`systemd.time(7)`. 48 48 49 - To disable automatic updates, set to <literal>"never"</literal> 50 - and run <command>updatedb</command> manually. 49 + To disable automatic updates, set to `"never"` 50 + and run {command}`updatedb` manually. 51 51 ''; 52 52 }; 53 53
+25 -25
nixos/modules/misc/nixpkgs.nix
··· 157 157 { allowBroken = true; allowUnfree = true; } 158 158 ''; 159 159 type = configType; 160 - description = '' 160 + description = lib.mdDoc '' 161 161 The configuration of the Nix Packages collection. (For 162 162 details, see the Nixpkgs documentation.) It allows you to set 163 163 package configuration options. 164 164 165 - Ignored when <literal>nixpkgs.pkgs</literal> is set. 165 + Ignored when `nixpkgs.pkgs` is set. 166 166 ''; 167 167 }; 168 168 ··· 180 180 ] 181 181 ''; 182 182 type = types.listOf overlayType; 183 - description = '' 183 + description = lib.mdDoc '' 184 184 List of overlays to use with the Nix Packages collection. 185 185 (For details, see the Nixpkgs documentation.) It allows 186 186 you to override packages globally. Each function in the list 187 - takes as an argument the <emphasis>original</emphasis> Nixpkgs. 187 + takes as an argument the *original* Nixpkgs. 188 188 The first argument should be used for finding dependencies, and 189 189 the second should be used for overriding recipes. 190 190 191 - If <literal>nixpkgs.pkgs</literal> is set, overlays specified here 191 + If `nixpkgs.pkgs` is set, overlays specified here 192 192 will be applied after the overlays that were already present 193 - in <literal>nixpkgs.pkgs</literal>. 193 + in `nixpkgs.pkgs`. 194 194 ''; 195 195 }; 196 196 ··· 202 202 apply = lib.systems.elaborate; 203 203 defaultText = literalExpression 204 204 ''(import "''${nixos}/../lib").lib.systems.examples.aarch64-multiplatform''; 205 - description = '' 205 + description = lib.mdDoc '' 206 206 Specifies the platform where the NixOS configuration will run. 207 207 208 - To cross-compile, set also <literal>nixpkgs.buildPlatform</literal>. 208 + To cross-compile, set also `nixpkgs.buildPlatform`. 209 209 210 - Ignored when <literal>nixpkgs.pkgs</literal> is set. 210 + Ignored when `nixpkgs.pkgs` is set. 211 211 ''; 212 212 }; 213 213 ··· 220 220 apply = lib.systems.elaborate; 221 221 defaultText = literalExpression 222 222 ''config.nixpkgs.hostPlatform''; 223 - description = '' 223 + description = lib.mdDoc '' 224 224 Specifies the platform on which NixOS should be built. 225 225 By default, NixOS is built on the system where it runs, but you can 226 226 change where it's built. Setting this option will cause NixOS to be ··· 230 230 or if you're building machines, you can set this to match your 231 231 development system and/or build farm. 232 232 233 - Ignored when <literal>nixpkgs.pkgs</literal> is set. 233 + Ignored when `nixpkgs.pkgs` is set. 234 234 ''; 235 235 }; 236 236 ··· 243 243 apply = lib.systems.elaborate; 244 244 defaultText = literalExpression 245 245 ''(import "''${nixos}/../lib").lib.systems.examples.aarch64-multiplatform''; 246 - description = '' 247 - Systems with a recently generated <literal>hardware-configuration.nix</literal> 246 + description = lib.mdDoc '' 247 + Systems with a recently generated `hardware-configuration.nix` 248 248 do not need to specify this option, unless cross-compiling, in which case 249 - you should set <emphasis>only</emphasis> <option>nixpkgs.buildPlatform</option>. 249 + you should set *only* {option}`nixpkgs.buildPlatform`. 250 250 251 251 If this is somehow not feasible, you may fall back to removing the 252 - <option>nixpkgs.hostPlatform</option> line from the generated config and 252 + {option}`nixpkgs.hostPlatform` line from the generated config and 253 253 use the old options. 254 254 255 255 Specifies the platform on which NixOS should be built. When 256 - <literal>nixpkgs.crossSystem</literal> is unset, it also specifies 257 - the platform <emphasis>for</emphasis> which NixOS should be 256 + `nixpkgs.crossSystem` is unset, it also specifies 257 + the platform *for* which NixOS should be 258 258 built. If this option is unset, it defaults to the platform 259 259 type of the machine where evaluation happens. Specifying this 260 260 option is useful when doing distributed multi-platform 261 261 deployment, or when building virtual machines. See its 262 262 description in the Nixpkgs manual for more details. 263 263 264 - Ignored when <literal>nixpkgs.pkgs</literal> or <literal>hostPlatform</literal> is set. 264 + Ignored when `nixpkgs.pkgs` or `hostPlatform` is set. 265 265 ''; 266 266 }; 267 267 ··· 272 272 type = types.nullOr types.attrs; # TODO utilize lib.systems.parsedPlatform 273 273 default = null; 274 274 example = { system = "aarch64-linux"; config = "aarch64-unknown-linux-gnu"; }; 275 - description = '' 276 - Systems with a recently generated <literal>hardware-configuration.nix</literal> 277 - may instead specify <emphasis>only</emphasis> <option>nixpkgs.buildPlatform</option>, 278 - or fall back to removing the <option>nixpkgs.hostPlatform</option> line from the generated config. 275 + description = lib.mdDoc '' 276 + Systems with a recently generated `hardware-configuration.nix` 277 + may instead specify *only* {option}`nixpkgs.buildPlatform`, 278 + or fall back to removing the {option}`nixpkgs.hostPlatform` line from the generated config. 279 279 280 280 Specifies the platform for which NixOS should be 281 281 built. Specify this only if it is different from 282 - <literal>nixpkgs.localSystem</literal>, the platform 283 - <emphasis>on</emphasis> which NixOS should be built. In other 282 + `nixpkgs.localSystem`, the platform 283 + *on* which NixOS should be built. In other 284 284 words, specify this to cross-compile NixOS. Otherwise it 285 285 should be set as null, the default. See its description in the 286 286 Nixpkgs manual for more details. 287 287 288 - Ignored when <literal>nixpkgs.pkgs</literal> or <literal>hostPlatform</literal> is set. 288 + Ignored when `nixpkgs.pkgs` or `hostPlatform` is set. 289 289 ''; 290 290 }; 291 291
+3 -3
nixos/modules/profiles/clone-config.nix
··· 61 61 62 62 installer.cloneConfig = mkOption { 63 63 default = true; 64 - description = '' 64 + description = lib.mdDoc '' 65 65 Try to clone the installation-device configuration by re-using it's 66 66 profile from the list of imported modules. 67 67 ''; ··· 70 70 installer.cloneConfigIncludes = mkOption { 71 71 default = []; 72 72 example = [ "./nixos/modules/hardware/network/rt73.nix" ]; 73 - description = '' 73 + description = lib.mdDoc '' 74 74 List of modules used to re-build this installation device profile. 75 75 ''; 76 76 }; 77 77 78 78 installer.cloneConfigExtra = mkOption { 79 79 default = ""; 80 - description = '' 80 + description = lib.mdDoc '' 81 81 Extra text to include in the cloned configuration.nix included in this 82 82 installer. 83 83 '';
+2 -2
nixos/modules/security/acme/default.nix
··· 451 451 renewInterval = mkOption { 452 452 type = types.str; 453 453 inherit (defaultAndText "renewInterval" "daily") default defaultText; 454 - description = '' 454 + description = lib.mdDoc '' 455 455 Systemd calendar expression when to check for renewal. See 456 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 456 + {manpage}`systemd.time(7)`. 457 457 ''; 458 458 }; 459 459
+5 -5
nixos/modules/security/apparmor.nix
··· 42 42 if you want this service to do such killing 43 43 by sending a <literal>SIGTERM</literal> to those running processes''; 44 44 policies = mkOption { 45 - description = '' 45 + description = lib.mdDoc '' 46 46 AppArmor policies. 47 47 ''; 48 48 type = types.attrsOf (types.submodule ({ name, config, ... }: { ··· 50 50 enable = mkDisableOption "loading of the profile into the kernel"; 51 51 enforce = mkDisableOption "enforcing of the policy or only complain in the logs"; 52 52 profile = mkOption { 53 - description = "The policy of the profile."; 53 + description = lib.mdDoc "The policy of the profile."; 54 54 type = types.lines; 55 55 apply = pkgs.writeText name; 56 56 }; ··· 61 61 includes = mkOption { 62 62 type = types.attrsOf types.lines; 63 63 default = {}; 64 - description = '' 64 + description = lib.mdDoc '' 65 65 List of paths to be added to AppArmor's searched paths 66 - when resolving <literal>include</literal> directives. 66 + when resolving `include` directives. 67 67 ''; 68 68 apply = mapAttrs pkgs.writeText; 69 69 }; 70 70 packages = mkOption { 71 71 type = types.listOf types.package; 72 72 default = []; 73 - description = "List of packages to be added to AppArmor's include path"; 73 + description = lib.mdDoc "List of packages to be added to AppArmor's include path"; 74 74 }; 75 75 enableCache = mkEnableOption '' 76 76 caching of AppArmor policies
+8 -8
nixos/modules/security/pam.nix
··· 836 836 control = mkOption { 837 837 default = "sufficient"; 838 838 type = types.enum [ "required" "requisite" "sufficient" "optional" ]; 839 - description = '' 839 + description = lib.mdDoc '' 840 840 This option sets pam "control". 841 841 If you want to have multi factor authentication, use "required". 842 842 If you want to use the PKCS#11 device instead of the regular password, 843 843 use "sufficient". 844 844 845 845 Read 846 - <citerefentry><refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 846 + {manpage}`pam.conf(5)` 847 847 for better understanding of this option. 848 848 ''; 849 849 }; ··· 924 924 control = mkOption { 925 925 default = "sufficient"; 926 926 type = types.enum [ "required" "requisite" "sufficient" "optional" ]; 927 - description = '' 927 + description = lib.mdDoc '' 928 928 This option sets pam "control". 929 929 If you want to have multi factor authentication, use "required". 930 930 If you want to use U2F device instead of regular password, use "sufficient". 931 931 932 932 Read 933 - <citerefentry><refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 933 + {manpage}`pam.conf(5)` 934 934 for better understanding of this option. 935 935 ''; 936 936 }; ··· 1039 1039 control = mkOption { 1040 1040 default = "sufficient"; 1041 1041 type = types.enum [ "required" "requisite" "sufficient" "optional" ]; 1042 - description = '' 1042 + description = lib.mdDoc '' 1043 1043 This option sets pam "control". 1044 1044 If you want to have multi factor authentication, use "required". 1045 1045 If you want to use the SSH certificate instead of the regular password, 1046 1046 use "sufficient". 1047 1047 1048 1048 Read 1049 - <citerefentry><refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 1049 + {manpage}`pam.conf(5)` 1050 1050 for better understanding of this option. 1051 1051 ''; 1052 1052 }; ··· 1071 1071 control = mkOption { 1072 1072 default = "sufficient"; 1073 1073 type = types.enum [ "required" "requisite" "sufficient" "optional" ]; 1074 - description = '' 1074 + description = lib.mdDoc '' 1075 1075 This option sets pam "control". 1076 1076 If you want to have multi factor authentication, use "required". 1077 1077 If you want to use Yubikey instead of regular password, use "sufficient". 1078 1078 1079 1079 Read 1080 - <citerefentry><refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 1080 + {manpage}`pam.conf(5)` 1081 1081 for better understanding of this option. 1082 1082 ''; 1083 1083 };
+8 -8
nixos/modules/security/systemd-confinement.nix
··· 10 10 options.confinement.enable = lib.mkOption { 11 11 type = types.bool; 12 12 default = false; 13 - description = '' 13 + description = lib.mdDoc '' 14 14 If set, all the required runtime store paths for this service are 15 - bind-mounted into a <literal>tmpfs</literal>-based 16 - <citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>2</manvolnum></citerefentry>. 15 + bind-mounted into a `tmpfs`-based 16 + {manpage}`chroot(2)`. 17 17 ''; 18 18 }; 19 19 ··· 61 61 default = toplevelConfig.environment.binsh; 62 62 defaultText = lib.literalExpression "config.environment.binsh"; 63 63 example = lib.literalExpression ''"''${pkgs.dash}/bin/dash"''; 64 - description = '' 65 - The program to make available as <filename>/bin/sh</filename> inside 66 - the chroot. If this is set to <literal>null</literal>, no 67 - <filename>/bin/sh</filename> is provided at all. 64 + description = lib.mdDoc '' 65 + The program to make available as {file}`/bin/sh` inside 66 + the chroot. If this is set to `null`, no 67 + {file}`/bin/sh` is provided at all. 68 68 69 69 This is useful for some applications, which for example use the 70 - <citerefentry><refentrytitle>system</refentrytitle><manvolnum>3</manvolnum></citerefentry> library function to execute commands. 70 + {manpage}`system(3)` library function to execute commands. 71 71 ''; 72 72 }; 73 73
+6 -6
nixos/modules/services/backup/borgbackup.nix
··· 320 320 startAt = mkOption { 321 321 type = with types; either str (listOf str); 322 322 default = "daily"; 323 - description = '' 323 + description = lib.mdDoc '' 324 324 When or how often the backup should run. 325 325 Must be in the format described in 326 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 326 + {manpage}`systemd.time(7)`. 327 327 If you do not want the backup to start 328 - automatically, use <literal>[ ]</literal>. 328 + automatically, use `[ ]`. 329 329 It will generate a systemd service borgbackup-job-NAME. 330 330 You may trigger it manually via systemctl restart borgbackup-job-NAME. 331 331 ''; ··· 335 335 default = false; 336 336 type = types.bool; 337 337 example = true; 338 - description = '' 339 - Set the <literal>persistentTimer</literal> option for the 340 - <citerefentry><refentrytitle>systemd.timer</refentrytitle><manvolnum>5</manvolnum></citerefentry> 338 + description = lib.mdDoc '' 339 + Set the `persistentTimer` option for the 340 + {manpage}`systemd.timer(5)` 341 341 which triggers the backup immediately if the last trigger 342 342 was missed (e.g. if the system was powered down). 343 343 '';
+10 -10
nixos/modules/services/backup/duplicity.nix
··· 27 27 type = types.listOf types.str; 28 28 default = [ ]; 29 29 example = [ "/home" ]; 30 - description = '' 30 + description = lib.mdDoc '' 31 31 List of paths to include into the backups. See the FILE SELECTION 32 - section in <citerefentry><refentrytitle>duplicity</refentrytitle><manvolnum>1</manvolnum></citerefentry> for details on the syntax. 32 + section in {manpage}`duplicity(1)` for details on the syntax. 33 33 ''; 34 34 }; 35 35 36 36 exclude = mkOption { 37 37 type = types.listOf types.str; 38 38 default = [ ]; 39 - description = '' 39 + description = lib.mdDoc '' 40 40 List of paths to exclude from backups. See the FILE SELECTION section in 41 - <citerefentry><refentrytitle>duplicity</refentrytitle><manvolnum>1</manvolnum></citerefentry> for details on the syntax. 41 + {manpage}`duplicity(1)` for details on the syntax. 42 42 ''; 43 43 }; 44 44 45 45 targetUrl = mkOption { 46 46 type = types.str; 47 47 example = "s3://host:port/prefix"; 48 - description = '' 48 + description = lib.mdDoc '' 49 49 Target url to backup to. See the URL FORMAT section in 50 - <citerefentry><refentrytitle>duplicity</refentrytitle><manvolnum>1</manvolnum></citerefentry> for supported urls. 50 + {manpage}`duplicity(1)` for supported urls. 51 51 ''; 52 52 }; 53 53 ··· 69 69 frequency = mkOption { 70 70 type = types.nullOr types.str; 71 71 default = "daily"; 72 - description = '' 72 + description = lib.mdDoc '' 73 73 Run duplicity with the given frequency (see 74 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry> for the format). 74 + {manpage}`systemd.time(7)` for the format). 75 75 If null, do not run automatically. 76 76 ''; 77 77 }; ··· 80 80 type = types.listOf types.str; 81 81 default = [ ]; 82 82 example = [ "--backend-retry-delay" "100" ]; 83 - description = '' 83 + description = lib.mdDoc '' 84 84 Extra command-line flags passed to duplicity. See 85 - <citerefentry><refentrytitle>duplicity</refentrytitle><manvolnum>1</manvolnum></citerefentry>. 85 + {manpage}`duplicity(1)`. 86 86 ''; 87 87 }; 88 88
+2 -2
nixos/modules/services/backup/sanoid.nix
··· 118 118 type = types.str; 119 119 default = "hourly"; 120 120 example = "daily"; 121 - description = '' 121 + description = lib.mdDoc '' 122 122 Run sanoid at this interval. The default is to run hourly. 123 123 124 124 The format is described in 125 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 125 + {manpage}`systemd.time(7)`. 126 126 ''; 127 127 }; 128 128
+2 -2
nixos/modules/services/backup/syncoid.nix
··· 89 89 type = types.str; 90 90 default = "hourly"; 91 91 example = "*-*-* *:15:00"; 92 - description = '' 92 + description = lib.mdDoc '' 93 93 Run syncoid at this interval. The default is to run hourly. 94 94 95 95 The format is described in 96 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 96 + {manpage}`systemd.time(7)`. 97 97 ''; 98 98 }; 99 99
+2 -2
nixos/modules/services/backup/tarsnap.nix
··· 140 140 type = types.str; 141 141 default = "01:15"; 142 142 example = "hourly"; 143 - description = '' 143 + description = lib.mdDoc '' 144 144 Create archive at this interval. 145 145 146 146 The format is described in 147 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 147 + {manpage}`systemd.time(7)`. 148 148 ''; 149 149 }; 150 150
+17 -17
nixos/modules/services/cluster/hadoop/default.nix
··· 16 16 "fs.defaultFS" = "hdfs://localhost"; 17 17 } 18 18 ''; 19 - description = '' 19 + description = lib.mdDoc '' 20 20 Hadoop core-site.xml definition 21 - <link xlink:href="https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/core-default.xml"/> 21 + <https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/core-default.xml> 22 22 ''; 23 23 }; 24 24 coreSiteInternal = mkOption { ··· 38 38 "dfs.namenode.http-bind-host" = "0.0.0.0"; 39 39 }; 40 40 type = types.attrsOf types.anything; 41 - description = '' 41 + description = lib.mdDoc '' 42 42 Default options for hdfs-site.xml 43 43 ''; 44 44 }; ··· 50 50 "dfs.nameservices" = "namenode1"; 51 51 } 52 52 ''; 53 - description = '' 53 + description = lib.mdDoc '' 54 54 Additional options and overrides for hdfs-site.xml 55 - <link xlink:href="https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml"/> 55 + <https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml> 56 56 ''; 57 57 }; 58 58 hdfsSiteInternal = mkOption { ··· 80 80 } 81 81 ''; 82 82 type = types.attrsOf types.anything; 83 - description = '' 83 + description = lib.mdDoc '' 84 84 Default options for mapred-site.xml 85 85 ''; 86 86 }; ··· 92 92 "mapreduce.map.java.opts" = "-Xmx900m -XX:+UseParallelGC"; 93 93 } 94 94 ''; 95 - description = '' 95 + description = lib.mdDoc '' 96 96 Additional options and overrides for mapred-site.xml 97 - <link xlink:href="https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml"/> 97 + <https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml> 98 98 ''; 99 99 }; 100 100 ··· 113 113 "yarn.resourcemanager.scheduler.class" = "org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler"; 114 114 }; 115 115 type = types.attrsOf types.anything; 116 - description = '' 116 + description = lib.mdDoc '' 117 117 Default options for yarn-site.xml 118 118 ''; 119 119 }; ··· 125 125 "yarn.resourcemanager.hostname" = "''${config.networking.hostName}"; 126 126 } 127 127 ''; 128 - description = '' 128 + description = lib.mdDoc '' 129 129 Additional options and overrides for yarn-site.xml 130 - <link xlink:href="https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-common/yarn-default.xml"/> 130 + <https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-common/yarn-default.xml> 131 131 ''; 132 132 }; 133 133 yarnSiteInternal = mkOption { ··· 147 147 "hadoop.http.max.threads" = 500; 148 148 } 149 149 ''; 150 - description = '' 150 + description = lib.mdDoc '' 151 151 Hadoop httpfs-site.xml definition 152 - <link xlink:href="https://hadoop.apache.org/docs/current/hadoop-hdfs-httpfs/httpfs-default.html"/> 152 + <https://hadoop.apache.org/docs/current/hadoop-hdfs-httpfs/httpfs-default.html> 153 153 ''; 154 154 }; 155 155 ··· 162 162 example = literalExpression '' 163 163 "''${pkgs.hadoop}/lib/''${pkgs.hadoop.untarDir}/etc/hadoop/log4j.properties"; 164 164 ''; 165 - description = "log4j.properties file added to HADOOP_CONF_DIR"; 165 + description = lib.mdDoc "log4j.properties file added to HADOOP_CONF_DIR"; 166 166 }; 167 167 168 168 containerExecutorCfg = mkOption { ··· 179 179 "feature.terminal.enabled" = 0; 180 180 } 181 181 ''; 182 - description = '' 182 + description = lib.mdDoc '' 183 183 Yarn container-executor.cfg definition 184 - <link xlink:href="https://hadoop.apache.org/docs/r2.7.2/hadoop-yarn/hadoop-yarn-site/SecureContainer.html"/> 184 + <https://hadoop.apache.org/docs/r2.7.2/hadoop-yarn/hadoop-yarn-site/SecureContainer.html> 185 185 ''; 186 186 }; 187 187 ··· 194 194 ./extraYARNConfs 195 195 ] 196 196 ''; 197 - description = "Directories containing additional config files to be added to HADOOP_CONF_DIR"; 197 + description = lib.mdDoc "Directories containing additional config files to be added to HADOOP_CONF_DIR"; 198 198 }; 199 199 200 200 gatewayRole.enable = mkEnableOption "gateway role for deploying hadoop configs";
+3 -3
nixos/modules/services/computing/slurm/slurm.nix
··· 109 109 extraConfig = mkOption { 110 110 type = types.lines; 111 111 default = ""; 112 - description = '' 113 - Extra configuration for <literal>slurmdbd.conf</literal> See also: 114 - <citerefentry><refentrytitle>slurmdbd.conf</refentrytitle><manvolnum>8</manvolnum></citerefentry>. 112 + description = lib.mdDoc '' 113 + Extra configuration for `slurmdbd.conf` See also: 114 + {manpage}`slurmdbd.conf(8)`. 115 115 ''; 116 116 }; 117 117 };
+4 -4
nixos/modules/services/databases/rethinkdb.nix
··· 24 24 25 25 user = mkOption { 26 26 default = "rethinkdb"; 27 - description = "User account under which RethinkDB runs."; 27 + description = lib.mdDoc "User account under which RethinkDB runs."; 28 28 }; 29 29 30 30 group = mkOption { 31 31 default = "rethinkdb"; 32 - description = "Group which rethinkdb user belongs to."; 32 + description = lib.mdDoc "Group which rethinkdb user belongs to."; 33 33 }; 34 34 35 35 dbpath = mkOption { 36 36 default = "/var/db/rethinkdb"; 37 - description = "Location where RethinkDB stores its data, 1 data directory per instance."; 37 + description = lib.mdDoc "Location where RethinkDB stores its data, 1 data directory per instance."; 38 38 }; 39 39 40 40 pidpath = mkOption { 41 41 default = "/run/rethinkdb"; 42 - description = "Location where each instance's pid file is located."; 42 + description = lib.mdDoc "Location where each instance's pid file is located."; 43 43 }; 44 44 45 45 #cfgpath = mkOption {
+6 -6
nixos/modules/services/desktops/pipewire/pipewire-media-session.nix
··· 39 39 enable = mkOption { 40 40 type = types.bool; 41 41 default = false; 42 - description = "Whether to enable the deprecated example Pipewire session manager"; 42 + description = lib.mdDoc "Whether to enable the deprecated example Pipewire session manager"; 43 43 }; 44 44 45 45 package = mkOption { 46 46 type = types.package; 47 47 default = pkgs.pipewire-media-session; 48 48 defaultText = literalExpression "pkgs.pipewire-media-session"; 49 - description = '' 49 + description = lib.mdDoc '' 50 50 The pipewire-media-session derivation to use. 51 51 ''; 52 52 }; ··· 54 54 config = { 55 55 media-session = mkOption { 56 56 type = json.type; 57 - description = '' 57 + description = lib.mdDoc '' 58 58 Configuration for the media session core. For details see 59 59 https://gitlab.freedesktop.org/pipewire/media-session/-/blob/${cfg.package.version}/src/daemon/media-session.d/media-session.conf 60 60 ''; ··· 63 63 64 64 alsa-monitor = mkOption { 65 65 type = json.type; 66 - description = '' 66 + description = lib.mdDoc '' 67 67 Configuration for the alsa monitor. For details see 68 68 https://gitlab.freedesktop.org/pipewire/media-session/-/blob/${cfg.package.version}/src/daemon/media-session.d/alsa-monitor.conf 69 69 ''; ··· 72 72 73 73 bluez-monitor = mkOption { 74 74 type = json.type; 75 - description = '' 75 + description = lib.mdDoc '' 76 76 Configuration for the bluez5 monitor. For details see 77 77 https://gitlab.freedesktop.org/pipewire/media-session/-/blob/${cfg.package.version}/src/daemon/media-session.d/bluez-monitor.conf 78 78 ''; ··· 81 81 82 82 v4l2-monitor = mkOption { 83 83 type = json.type; 84 - description = '' 84 + description = lib.mdDoc '' 85 85 Configuration for the V4L2 monitor. For details see 86 86 https://gitlab.freedesktop.org/pipewire/media-session/-/blob/${cfg.package.version}/src/daemon/media-session.d/v4l2-monitor.conf 87 87 '';
+9 -9
nixos/modules/services/development/jupyter/default.nix
··· 29 29 ip = mkOption { 30 30 type = types.str; 31 31 default = "localhost"; 32 - description = '' 32 + description = lib.mdDoc '' 33 33 IP address Jupyter will be listening on. 34 34 ''; 35 35 }; ··· 41 41 # saving a rebuild. 42 42 default = pkgs.python3.pkgs.notebook; 43 43 defaultText = literalExpression "pkgs.python3.pkgs.notebook"; 44 - description = '' 44 + description = lib.mdDoc '' 45 45 Jupyter package to use. 46 46 ''; 47 47 }; ··· 50 50 type = types.str; 51 51 default = "jupyter-notebook"; 52 52 example = "jupyter-lab"; 53 - description = '' 53 + description = lib.mdDoc '' 54 54 Which command the service runs. Note that not all jupyter packages 55 55 have all commands, e.g. jupyter-lab isn't present in the default package. 56 56 ''; ··· 59 59 port = mkOption { 60 60 type = types.int; 61 61 default = 8888; 62 - description = '' 62 + description = lib.mdDoc '' 63 63 Port number Jupyter will be listening on. 64 64 ''; 65 65 }; ··· 67 67 notebookDir = mkOption { 68 68 type = types.str; 69 69 default = "~/"; 70 - description = '' 70 + description = lib.mdDoc '' 71 71 Root directory for notebooks. 72 72 ''; 73 73 }; ··· 75 75 user = mkOption { 76 76 type = types.str; 77 77 default = "jupyter"; 78 - description = '' 78 + description = lib.mdDoc '' 79 79 Name of the user used to run the jupyter service. 80 80 For security reason, jupyter should really not be run as root. 81 81 If not set (jupyter), the service will create a jupyter user with appropriate settings. ··· 86 86 group = mkOption { 87 87 type = types.str; 88 88 default = "jupyter"; 89 - description = '' 89 + description = lib.mdDoc '' 90 90 Name of the group used to run the jupyter service. 91 91 Use this if you want to create a group of users that are able to view the notebook directory's content. 92 92 ''; ··· 95 95 96 96 password = mkOption { 97 97 type = types.str; 98 - description = '' 98 + description = lib.mdDoc '' 99 99 Password to use with notebook. 100 100 Can be generated using: 101 101 In [1]: from notebook.auth import passwd ··· 112 112 notebookConfig = mkOption { 113 113 type = types.lines; 114 114 default = ""; 115 - description = '' 115 + description = lib.mdDoc '' 116 116 Raw jupyter config. 117 117 ''; 118 118 };
+6 -6
nixos/modules/services/development/jupyter/kernel-options.nix
··· 13 13 "Python 3" 14 14 "Python 3 for Data Science" 15 15 ''; 16 - description = '' 16 + description = lib.mdDoc '' 17 17 Name that will be shown to the user. 18 18 ''; 19 19 }; ··· 27 27 "-f" 28 28 "{connection_file}" 29 29 ]; 30 - description = '' 30 + description = lib.mdDoc '' 31 31 Command and arguments to start the kernel. 32 32 ''; 33 33 }; ··· 35 35 language = mkOption { 36 36 type = types.str; 37 37 example = "python"; 38 - description = '' 38 + description = lib.mdDoc '' 39 39 Language of the environment. Typically the name of the binary. 40 40 ''; 41 41 }; ··· 44 44 type = types.nullOr types.path; 45 45 default = null; 46 46 example = literalExpression ''"''${env.sitePackages}/ipykernel/resources/logo-32x32.png"''; 47 - description = '' 47 + description = lib.mdDoc '' 48 48 Path to 32x32 logo png. 49 49 ''; 50 50 }; ··· 52 52 type = types.nullOr types.path; 53 53 default = null; 54 54 example = literalExpression ''"''${env.sitePackages}/ipykernel/resources/logo-64x64.png"''; 55 - description = '' 55 + description = lib.mdDoc '' 56 56 Path to 64x64 logo png. 57 57 ''; 58 58 }; ··· 61 61 type = types.attrsOf types.path; 62 62 default = { }; 63 63 example = literalExpression ''"{ examples = ''${env.sitePack}/IRkernel/kernelspec/kernel.js"; }''; 64 - description = '' 64 + description = lib.mdDoc '' 65 65 Extra paths to link in kernel directory 66 66 ''; 67 67 };
+9 -9
nixos/modules/services/development/jupyterhub/default.nix
··· 35 35 authentication = mkOption { 36 36 type = types.str; 37 37 default = "jupyterhub.auth.PAMAuthenticator"; 38 - description = '' 38 + description = lib.mdDoc '' 39 39 Jupyterhub authentication to use 40 40 41 41 There are many authenticators available including: oauth, pam, ··· 46 46 spawner = mkOption { 47 47 type = types.str; 48 48 default = "systemdspawner.SystemdSpawner"; 49 - description = '' 49 + description = lib.mdDoc '' 50 50 Jupyterhub spawner to use 51 51 52 52 There are many spawners available including: local process, ··· 57 57 extraConfig = mkOption { 58 58 type = types.lines; 59 59 default = ""; 60 - description = '' 60 + description = lib.mdDoc '' 61 61 Extra contents appended to the jupyterhub configuration 62 62 63 63 Jupyterhub configuration is a normal python file using ··· 84 84 jupyterhub-systemdspawner 85 85 ]) 86 86 ''; 87 - description = '' 87 + description = lib.mdDoc '' 88 88 Python environment to run jupyterhub 89 89 90 90 Customizing will affect the packages available in the hub and ··· 106 106 jupyterlab 107 107 ]) 108 108 ''; 109 - description = '' 109 + description = lib.mdDoc '' 110 110 Python environment to run jupyterlab 111 111 112 112 Customizing will affect the packages available in the ··· 146 146 }; 147 147 } 148 148 ''; 149 - description = '' 149 + description = lib.mdDoc '' 150 150 Declarative kernel config 151 151 152 152 Kernels can be declared in any language that supports and has ··· 159 159 port = mkOption { 160 160 type = types.port; 161 161 default = 8000; 162 - description = '' 162 + description = lib.mdDoc '' 163 163 Port number Jupyterhub will be listening on 164 164 ''; 165 165 }; ··· 167 167 host = mkOption { 168 168 type = types.str; 169 169 default = "0.0.0.0"; 170 - description = '' 170 + description = lib.mdDoc '' 171 171 Bind IP JupyterHub will be listening on 172 172 ''; 173 173 }; ··· 175 175 stateDirectory = mkOption { 176 176 type = types.str; 177 177 default = "jupyterhub"; 178 - description = '' 178 + description = lib.mdDoc '' 179 179 Directory for jupyterhub state (token + database) 180 180 ''; 181 181 };
+2 -2
nixos/modules/services/hardware/pcscd.nix
··· 35 35 LIBPATH /path/to/serial_reader.so 36 36 CHANNELID 1 37 37 ''; 38 - description = '' 38 + description = lib.mdDoc '' 39 39 Configuration for devices that aren't hotpluggable. 40 40 41 - See <citerefentry><refentrytitle>reader.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for valid options. 41 + See {manpage}`reader.conf(5)` for valid options. 42 42 ''; 43 43 }; 44 44 };
+2 -2
nixos/modules/services/logging/awstats.nix
··· 121 121 type = types.nullOr types.str; 122 122 default = null; 123 123 example = "hourly"; 124 - description = '' 124 + description = lib.mdDoc '' 125 125 Specification of the time at which awstats will get updated. 126 - (in the format described by <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>) 126 + (in the format described by {manpage}`systemd.time(7)`) 127 127 ''; 128 128 }; 129 129 };
+2 -2
nixos/modules/services/mail/mlmmj.nix
··· 86 86 maintInterval = mkOption { 87 87 type = types.str; 88 88 default = "20min"; 89 - description = '' 89 + description = lib.mdDoc '' 90 90 Time interval between mlmmj-maintd runs, see 91 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry> for format information. 91 + {manpage}`systemd.time(7)` for format information. 92 92 ''; 93 93 }; 94 94
+2 -2
nixos/modules/services/mail/postfix.nix
··· 535 535 canonical = mkOption { 536 536 type = types.lines; 537 537 default = ""; 538 - description = '' 539 - Entries for the <citerefentry><refentrytitle>canonical</refentrytitle><manvolnum>5</manvolnum></citerefentry> table. 538 + description = lib.mdDoc '' 539 + Entries for the {manpage}`canonical(5)` table. 540 540 ''; 541 541 }; 542 542
+19 -19
nixos/modules/services/matrix/mjolnir.nix
··· 70 70 homeserverUrl = mkOption { 71 71 type = types.str; 72 72 default = "https://matrix.org"; 73 - description = '' 73 + description = lib.mdDoc '' 74 74 Where the homeserver is located (client-server URL). 75 75 76 - If <literal>pantalaimon.enable</literal> is <literal>true</literal>, this option will become the homeserver to which <literal>pantalaimon</literal> connects. 77 - The listen address of <literal>pantalaimon</literal> will then become the <literal>homeserverUrl</literal> of <literal>mjolnir</literal>. 76 + If `pantalaimon.enable` is `true`, this option will become the homeserver to which `pantalaimon` connects. 77 + The listen address of `pantalaimon` will then become the `homeserverUrl` of `mjolnir`. 78 78 ''; 79 79 }; 80 80 81 81 accessTokenFile = mkOption { 82 82 type = with types; nullOr path; 83 83 default = null; 84 - description = '' 85 - File containing the matrix access token for the <literal>mjolnir</literal> user. 84 + description = lib.mdDoc '' 85 + File containing the matrix access token for the `mjolnir` user. 86 86 ''; 87 87 }; 88 88 89 89 pantalaimon = mkOption { 90 - description = '' 91 - <literal>pantalaimon</literal> options (enables E2E Encryption support). 90 + description = lib.mdDoc '' 91 + `pantalaimon` options (enables E2E Encryption support). 92 92 93 - This will create a <literal>pantalaimon</literal> instance with the name "mjolnir". 93 + This will create a `pantalaimon` instance with the name "mjolnir". 94 94 ''; 95 95 default = { }; 96 96 type = types.submodule { ··· 102 102 103 103 username = mkOption { 104 104 type = types.str; 105 - description = "The username to login with."; 105 + description = lib.mdDoc "The username to login with."; 106 106 }; 107 107 108 108 passwordFile = mkOption { 109 109 type = with types; nullOr path; 110 110 default = null; 111 - description = '' 112 - File containing the matrix password for the <literal>mjolnir</literal> user. 111 + description = lib.mdDoc '' 112 + File containing the matrix password for the `mjolnir` user. 113 113 ''; 114 114 }; 115 115 116 116 options = mkOption { 117 117 type = types.submodule (import ./pantalaimon-options.nix); 118 118 default = { }; 119 - description = '' 120 - passthrough additional options to the <literal>pantalaimon</literal> service. 119 + description = lib.mdDoc '' 120 + passthrough additional options to the `pantalaimon` service. 121 121 ''; 122 122 }; 123 123 }; ··· 127 127 dataPath = mkOption { 128 128 type = types.path; 129 129 default = "/var/lib/mjolnir"; 130 - description = '' 130 + description = lib.mdDoc '' 131 131 The directory the bot should store various bits of information in. 132 132 ''; 133 133 }; ··· 135 135 managementRoom = mkOption { 136 136 type = types.str; 137 137 default = "#moderators:example.org"; 138 - description = '' 138 + description = lib.mdDoc '' 139 139 The room ID where people can use the bot. The bot has no access controls, so 140 140 anyone in this room can use the bot - secure your room! 141 141 This should be a room alias or room ID - not a matrix.to URL. 142 - Note: <literal>mjolnir</literal> is fairly verbose - expect a lot of messages from it. 142 + Note: `mjolnir` is fairly verbose - expect a lot of messages from it. 143 143 ''; 144 144 }; 145 145 ··· 152 152 "https://matrix.to/#/#anotherroom:example.org" 153 153 ] 154 154 ''; 155 - description = '' 155 + description = lib.mdDoc '' 156 156 A list of rooms to protect (matrix.to URLs). 157 157 ''; 158 158 }; ··· 166 166 automaticallyRedactForReasons = [ "spam" "advertising" ]; 167 167 } 168 168 ''; 169 - description = '' 170 - Additional settings (see <link xlink:href="https://github.com/matrix-org/mjolnir/blob/main/config/default.yaml">mjolnir default config</link> for available settings). These settings will override settings made by the module config. 169 + description = lib.mdDoc '' 170 + Additional settings (see [mjolnir default config](https://github.com/matrix-org/mjolnir/blob/main/config/default.yaml) for available settings). These settings will override settings made by the module config. 171 171 ''; 172 172 }; 173 173 };
+10 -10
nixos/modules/services/matrix/pantalaimon-options.nix
··· 6 6 dataPath = mkOption { 7 7 type = types.path; 8 8 default = "/var/lib/pantalaimon-${name}"; 9 - description = '' 10 - The directory where <literal>pantalaimon</literal> should store its state such as the database file. 9 + description = lib.mdDoc '' 10 + The directory where `pantalaimon` should store its state such as the database file. 11 11 ''; 12 12 }; 13 13 14 14 logLevel = mkOption { 15 15 type = types.enum [ "info" "warning" "error" "debug" ]; 16 16 default = "warning"; 17 - description = '' 17 + description = lib.mdDoc '' 18 18 Set the log level of the daemon. 19 19 ''; 20 20 }; ··· 22 22 homeserver = mkOption { 23 23 type = types.str; 24 24 example = "https://matrix.org"; 25 - description = '' 26 - The URI of the homeserver that the <literal>pantalaimon</literal> proxy should 25 + description = lib.mdDoc '' 26 + The URI of the homeserver that the `pantalaimon` proxy should 27 27 forward requests to, without the matrix API path but including 28 28 the http(s) schema. 29 29 ''; ··· 32 32 ssl = mkOption { 33 33 type = types.bool; 34 34 default = true; 35 - description = '' 35 + description = lib.mdDoc '' 36 36 Whether or not SSL verification should be enabled for outgoing 37 37 connections to the homeserver. 38 38 ''; ··· 41 41 listenAddress = mkOption { 42 42 type = types.str; 43 43 default = "localhost"; 44 - description = '' 44 + description = lib.mdDoc '' 45 45 The address where the daemon will listen to client connections 46 46 for this homeserver. 47 47 ''; ··· 50 50 listenPort = mkOption { 51 51 type = types.port; 52 52 default = 8009; 53 - description = '' 53 + description = lib.mdDoc '' 54 54 The port where the daemon will listen to client connections for 55 55 this homeserver. Note that the listen address/port combination 56 56 needs to be unique between different homeservers. ··· 60 60 extraSettings = mkOption { 61 61 type = types.attrs; 62 62 default = { }; 63 - description = '' 63 + description = lib.mdDoc '' 64 64 Extra configuration options. See 65 - <link xlink:href="https://github.com/matrix-org/pantalaimon/blob/master/docs/man/pantalaimon.5.md">pantalaimon(5)</link> 65 + [pantalaimon(5)](https://github.com/matrix-org/pantalaimon/blob/master/docs/man/pantalaimon.5.md) 66 66 for available options. 67 67 ''; 68 68 };
+2 -2
nixos/modules/services/matrix/pantalaimon.nix
··· 51 51 options.services.pantalaimon-headless.instances = mkOption { 52 52 default = { }; 53 53 type = types.attrsOf (types.submodule (import ./pantalaimon-options.nix)); 54 - description = '' 54 + description = lib.mdDoc '' 55 55 Declarative instance config. 56 56 57 57 Note: to use pantalaimon interactively, e.g. for a Matrix client which does not 58 - support End-to-end encryption (like <literal>fractal</literal>), refer to the home-manager module. 58 + support End-to-end encryption (like `fractal`), refer to the home-manager module. 59 59 ''; 60 60 }; 61 61
+41 -41
nixos/modules/services/matrix/synapse.nix
··· 143 143 configFile = mkOption { 144 144 type = types.path; 145 145 readOnly = true; 146 - description = '' 146 + description = lib.mdDoc '' 147 147 Path to the configuration file on the target system. Useful to configure e.g. workers 148 148 that also need this. 149 149 ''; ··· 153 153 type = types.package; 154 154 default = pkgs.matrix-synapse; 155 155 defaultText = literalExpression "pkgs.matrix-synapse"; 156 - description = '' 156 + description = lib.mdDoc '' 157 157 Overridable attribute of the matrix synapse server package to use. 158 158 ''; 159 159 }; ··· 167 167 matrix-synapse-pam 168 168 ]; 169 169 ''; 170 - description = '' 170 + description = lib.mdDoc '' 171 171 List of additional Matrix plugins to make available. 172 172 ''; 173 173 }; ··· 175 175 withJemalloc = mkOption { 176 176 type = types.bool; 177 177 default = false; 178 - description = '' 178 + description = lib.mdDoc '' 179 179 Whether to preload jemalloc to reduce memory fragmentation and overall usage. 180 180 ''; 181 181 }; ··· 183 183 dataDir = mkOption { 184 184 type = types.str; 185 185 default = "/var/lib/matrix-synapse"; 186 - description = '' 186 + description = lib.mdDoc '' 187 187 The directory where matrix-synapse stores its stateful data such as 188 188 certificates, media and uploads. 189 189 ''; ··· 210 210 example = "example.com"; 211 211 default = config.networking.hostName; 212 212 defaultText = literalExpression "config.networking.hostName"; 213 - description = '' 213 + description = lib.mdDoc '' 214 214 The domain name of the server, with optional explicit port. 215 215 This is used by remote servers to look up the server address. 216 216 This is also the last part of your UserID. ··· 222 222 enable_registration = mkOption { 223 223 type = types.bool; 224 224 default = false; 225 - description = '' 225 + description = lib.mdDoc '' 226 226 Enable registration for new users. 227 227 ''; 228 228 }; ··· 253 253 enable_metrics = mkOption { 254 254 type = types.bool; 255 255 default = false; 256 - description = '' 256 + description = lib.mdDoc '' 257 257 Enable collection and rendering of performance metrics 258 258 ''; 259 259 }; ··· 261 261 report_stats = mkOption { 262 262 type = types.bool; 263 263 default = false; 264 - description = '' 264 + description = lib.mdDoc '' 265 265 Whether or not to report anonymized homeserver usage statistics. 266 266 ''; 267 267 }; ··· 269 269 signing_key_path = mkOption { 270 270 type = types.path; 271 271 default = "${cfg.dataDir}/homeserver.signing.key"; 272 - description = '' 272 + description = lib.mdDoc '' 273 273 Path to the signing key to sign messages with. 274 274 ''; 275 275 }; ··· 278 278 type = types.path; 279 279 default = "/run/matrix-synapse.pid"; 280 280 readOnly = true; 281 - description = '' 281 + description = lib.mdDoc '' 282 282 The file to store the PID in. 283 283 ''; 284 284 }; ··· 286 286 log_config = mkOption { 287 287 type = types.path; 288 288 default = ./synapse-log_config.yaml; 289 - description = '' 289 + description = lib.mdDoc '' 290 290 The file that holds the logging configuration. 291 291 ''; 292 292 }; ··· 297 297 then "${cfg.dataDir}/media_store" 298 298 else "${cfg.dataDir}/media"; 299 299 defaultText = "${cfg.dataDir}/media_store for when system.stateVersion is at least 22.05, ${cfg.dataDir}/media when lower than 22.05"; 300 - description = '' 300 + description = lib.mdDoc '' 301 301 Directory where uploaded images and attachments are stored. 302 302 ''; 303 303 }; ··· 306 306 type = types.nullOr types.str; 307 307 default = null; 308 308 example = "https://example.com:8448/"; 309 - description = '' 309 + description = lib.mdDoc '' 310 310 The public-facing base URL for the client API (not including _matrix/...) 311 311 ''; 312 312 }; ··· 315 315 type = types.nullOr types.str; 316 316 default = null; 317 317 example = "/var/lib/acme/example.com/fullchain.pem"; 318 - description = '' 318 + description = lib.mdDoc '' 319 319 PEM encoded X509 certificate for TLS. 320 320 You can replace the self-signed certificate that synapse 321 321 autogenerates on launch with your own SSL certificate + key pair ··· 328 328 type = types.nullOr types.str; 329 329 default = null; 330 330 example = "/var/lib/acme/example.com/key.pem"; 331 - description = '' 331 + description = lib.mdDoc '' 332 332 PEM encoded private key for TLS. Specify null if synapse is not 333 333 speaking TLS directly. 334 334 ''; ··· 338 338 type = types.bool; 339 339 default = true; 340 340 example = false; 341 - description = '' 341 + description = lib.mdDoc '' 342 342 Whether to enable presence tracking. 343 343 344 344 Presence tracking allows users to see the state (e.g online/offline) ··· 352 352 port = mkOption { 353 353 type = types.port; 354 354 example = 8448; 355 - description = '' 355 + description = lib.mdDoc '' 356 356 The port to listen for HTTP(S) requests on. 357 357 ''; 358 358 }; ··· 369 369 "0.0.0.0" 370 370 ] 371 371 ''; 372 - description = '' 372 + description = lib.mdDoc '' 373 373 IP addresses to bind the listener to. 374 374 ''; 375 375 }; ··· 383 383 ]; 384 384 default = "http"; 385 385 example = "metrics"; 386 - description = '' 386 + description = lib.mdDoc '' 387 387 The type of the listener, usually http. 388 388 ''; 389 389 }; ··· 392 392 type = types.bool; 393 393 default = true; 394 394 example = false; 395 - description = '' 395 + description = lib.mdDoc '' 396 396 Whether to enable TLS on the listener socket. 397 397 ''; 398 398 }; ··· 401 401 type = types.bool; 402 402 default = false; 403 403 example = true; 404 - description = '' 404 + description = lib.mdDoc '' 405 405 Use the X-Forwarded-For (XFF) header as the client IP and not the 406 406 actual client IP. 407 407 ''; ··· 422 422 "replication" 423 423 "static" 424 424 ]); 425 - description = '' 425 + description = lib.mdDoc '' 426 426 List of resources to host on this listener. 427 427 ''; 428 428 example = [ ··· 431 431 }; 432 432 compress = mkOption { 433 433 type = types.bool; 434 - description = '' 434 + description = lib.mdDoc '' 435 435 Should synapse compress HTTP responses to clients that support it? 436 436 This should be disabled if running synapse behind a load balancer 437 437 that can do automatic compression. ··· 439 439 }; 440 440 }; 441 441 }); 442 - description = '' 442 + description = lib.mdDoc '' 443 443 List of HTTP resources to serve on this listener. 444 444 ''; 445 445 }; ··· 459 459 compress = false; 460 460 } ]; 461 461 } ]; 462 - description = '' 462 + description = lib.mdDoc '' 463 463 List of ports that Synapse should listen on, their purpose and their configuration. 464 464 ''; 465 465 }; ··· 477 477 then "psycopg2" 478 478 else "sqlite3" 479 479 ''; 480 - description = '' 480 + description = lib.mdDoc '' 481 481 The database engine name. Can be sqlite3 or psycopg2. 482 482 ''; 483 483 }; ··· 494 494 psycopg2 = "matrix-synapse"; 495 495 }.''${${options.services.matrix-synapse.settings}.database.name}; 496 496 ''; 497 - description = '' 497 + description = lib.mdDoc '' 498 498 Name of the database when using the psycopg2 backend, 499 499 path to the database location when using sqlite3. 500 500 ''; ··· 506 506 sqlite3 = null; 507 507 psycopg2 = "matrix-synapse"; 508 508 }.${cfg.settings.database.name}; 509 - description = '' 509 + description = lib.mdDoc '' 510 510 Username to connect with psycopg2, set to null 511 511 when using sqlite3. 512 512 ''; ··· 546 546 "fec0::/10" 547 547 "ff00::/8" 548 548 ]; 549 - description = '' 549 + description = lib.mdDoc '' 550 550 List of IP address CIDR ranges that the URL preview spider is denied 551 551 from accessing. 552 552 ''; ··· 555 555 url_preview_ip_range_whitelist = mkOption { 556 556 type = types.listOf types.str; 557 557 default = []; 558 - description = '' 558 + description = lib.mdDoc '' 559 559 List of IP address CIDR ranges that the URL preview spider is allowed 560 560 to access even if they are specified in url_preview_ip_range_blacklist. 561 561 ''; ··· 564 564 url_preview_url_blacklist = mkOption { 565 565 type = types.listOf types.str; 566 566 default = []; 567 - description = '' 567 + description = lib.mdDoc '' 568 568 Optional list of URL matches that the URL preview spider is 569 569 denied from accessing. 570 570 ''; ··· 574 574 type = types.str; 575 575 default = "50M"; 576 576 example = "100M"; 577 - description = '' 577 + description = lib.mdDoc '' 578 578 The largest allowed upload size in bytes 579 579 ''; 580 580 }; ··· 583 583 type = types.str; 584 584 default = "32M"; 585 585 example = "64M"; 586 - description = '' 586 + description = lib.mdDoc '' 587 587 Maximum number of pixels that will be thumbnailed 588 588 ''; 589 589 }; ··· 592 592 type = types.bool; 593 593 default = false; 594 594 example = true; 595 - description = '' 595 + description = lib.mdDoc '' 596 596 Whether to generate new thumbnails on the fly to precisely match 597 597 the resolution requested by the client. If true then whenever 598 598 a new resolution is requested by the client the server will ··· 610 610 "turns:turn.example.com:5349?transport=udp" 611 611 "turns:turn.example.com:5349?transport=tcp" 612 612 ]; 613 - description = '' 613 + description = lib.mdDoc '' 614 614 The public URIs of the TURN server to give to clients 615 615 ''; 616 616 }; ··· 633 633 server_name = mkOption { 634 634 type = types.str; 635 635 example = "matrix.org"; 636 - description = '' 636 + description = lib.mdDoc '' 637 637 Hostname of the trusted server. 638 638 ''; 639 639 }; ··· 646 646 "ed25519:auto" = "Noi6WqcDj0QmPxCNQqgezwTlBKrfqehY1u2FyWP9uYw"; 647 647 } 648 648 ''; 649 - description = '' 649 + description = lib.mdDoc '' 650 650 Attribute set from key id to base64 encoded public key. 651 651 652 652 If specified synapse will check that the response is signed ··· 661 661 "ed25519:auto" = "Noi6WqcDj0QmPxCNQqgezwTlBKrfqehY1u2FyWP9uYw"; 662 662 }; 663 663 } ]; 664 - description = '' 664 + description = lib.mdDoc '' 665 665 The trusted servers to download signing keys from. 666 666 ''; 667 667 }; ··· 669 669 app_service_config_files = mkOption { 670 670 type = types.listOf types.path; 671 671 default = [ ]; 672 - description = '' 672 + description = lib.mdDoc '' 673 673 A list of application service config file to use 674 674 ''; 675 675 }; ··· 681 681 extraConfigFiles = mkOption { 682 682 type = types.listOf types.path; 683 683 default = []; 684 - description = '' 684 + description = lib.mdDoc '' 685 685 Extra config files to include. 686 686 687 687 The configuration files will be included based on the command line
+2 -2
nixos/modules/services/misc/autorandr.nix
··· 114 114 [ 0.0 0.0 1.0 ] 115 115 ] 116 116 ''; 117 - description = '' 117 + description = lib.mdDoc '' 118 118 Refer to 119 - <citerefentry><refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum></citerefentry> 119 + {manpage}`xrandr(1)` 120 120 for the documentation of the transform matrix. 121 121 ''; 122 122 };
+2 -2
nixos/modules/services/misc/docker-registry.nix
··· 103 103 garbageCollectDates = mkOption { 104 104 default = "daily"; 105 105 type = types.str; 106 - description = '' 106 + description = lib.mdDoc '' 107 107 Specification (in the format described by 108 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>) of the time at 108 + {manpage}`systemd.time(7)`) of the time at 109 109 which the garbage collect will occur. 110 110 ''; 111 111 };
+2 -2
nixos/modules/services/misc/fstrim.nix
··· 16 16 interval = mkOption { 17 17 type = types.str; 18 18 default = "weekly"; 19 - description = '' 19 + description = lib.mdDoc '' 20 20 How often we run fstrim. For most desktop and server systems 21 21 a sufficient trimming frequency is once a week. 22 22 23 23 The format is described in 24 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 24 + {manpage}`systemd.time(7)`. 25 25 ''; 26 26 }; 27 27 };
+2 -2
nixos/modules/services/misc/geoipupdate.nix
··· 19 19 interval = lib.mkOption { 20 20 type = lib.types.str; 21 21 default = "weekly"; 22 - description = '' 22 + description = lib.mdDoc '' 23 23 Update the GeoIP databases at this time / interval. 24 24 The format is described in 25 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 25 + {manpage}`systemd.time(7)`. 26 26 ''; 27 27 }; 28 28
+2 -2
nixos/modules/services/misc/gitea.nix
··· 162 162 type = types.str; 163 163 default = "04:31"; 164 164 example = "hourly"; 165 - description = '' 165 + description = lib.mdDoc '' 166 166 Run a gitea dump at this interval. Runs by default at 04:31 every day. 167 167 168 168 The format is described in 169 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 169 + {manpage}`systemd.time(7)`. 170 170 ''; 171 171 }; 172 172
+52 -52
nixos/modules/services/misc/gitit.nix
··· 31 31 enable = mkOption { 32 32 type = types.bool; 33 33 default = false; 34 - description = "Enable the gitit service."; 34 + description = lib.mdDoc "Enable the gitit service."; 35 35 }; 36 36 37 37 haskellPackages = mkOption { 38 38 default = pkgs.haskellPackages; 39 39 defaultText = literalExpression "pkgs.haskellPackages"; 40 40 example = literalExpression "pkgs.haskell.packages.ghc784"; 41 - description = "haskellPackages used to build gitit and plugins."; 41 + description = lib.mdDoc "haskellPackages used to build gitit and plugins."; 42 42 }; 43 43 44 44 extraPackages = mkOption { ··· 59 59 address = mkOption { 60 60 type = types.str; 61 61 default = "0.0.0.0"; 62 - description = "IP address on which the web server will listen."; 62 + description = lib.mdDoc "IP address on which the web server will listen."; 63 63 }; 64 64 65 65 port = mkOption { 66 66 type = types.int; 67 67 default = 5001; 68 - description = "Port on which the web server will run."; 68 + description = lib.mdDoc "Port on which the web server will run."; 69 69 }; 70 70 71 71 wikiTitle = mkOption { 72 72 type = types.str; 73 73 default = "Gitit!"; 74 - description = "The wiki title."; 74 + description = lib.mdDoc "The wiki title."; 75 75 }; 76 76 77 77 repositoryType = mkOption { 78 78 type = types.enum ["git" "darcs" "mercurial"]; 79 79 default = "git"; 80 - description = "Specifies the type of repository used for wiki content."; 80 + description = lib.mdDoc "Specifies the type of repository used for wiki content."; 81 81 }; 82 82 83 83 repositoryPath = mkOption { 84 84 type = types.path; 85 85 default = homeDir + "/wiki"; 86 - description = '' 86 + description = lib.mdDoc '' 87 87 Specifies the path of the repository directory. If it does not 88 88 exist, gitit will create it on startup. 89 89 ''; ··· 92 92 requireAuthentication = mkOption { 93 93 type = types.enum [ "none" "modify" "read" ]; 94 94 default = "modify"; 95 - description = '' 95 + description = lib.mdDoc '' 96 96 If 'none', login is never required, and pages can be edited 97 97 anonymously. If 'modify', login is required to modify the wiki 98 98 (edit, add, delete pages, upload files). If 'read', login is ··· 103 103 authenticationMethod = mkOption { 104 104 type = types.enum [ "form" "http" "generic" "github" ]; 105 105 default = "form"; 106 - description = '' 106 + description = lib.mdDoc '' 107 107 'form' means that users will be logged in and registered using forms 108 108 in the gitit web interface. 'http' means that gitit will assume that 109 109 HTTP authentication is in place and take the logged in username from ··· 121 121 userFile = mkOption { 122 122 type = types.path; 123 123 default = homeDir + "/gitit-users"; 124 - description = '' 124 + description = lib.mdDoc '' 125 125 Specifies the path of the file containing user login information. If 126 126 it does not exist, gitit will create it (with an empty user list). 127 127 This file is not used if 'http' is selected for ··· 132 132 sessionTimeout = mkOption { 133 133 type = types.int; 134 134 default = 60; 135 - description = '' 135 + description = lib.mdDoc '' 136 136 Number of minutes of inactivity before a session expires. 137 137 ''; 138 138 }; ··· 140 140 staticDir = mkOption { 141 141 type = types.path; 142 142 default = gititShared + "/data/static"; 143 - description = '' 143 + description = lib.mdDoc '' 144 144 Specifies the path of the static directory (containing javascript, 145 145 css, and images). If it does not exist, gitit will create it and 146 146 populate it with required scripts, stylesheets, and images. ··· 150 150 defaultPageType = mkOption { 151 151 type = types.enum [ "markdown" "rst" "latex" "html" "markdown+lhs" "rst+lhs" "latex+lhs" ]; 152 152 default = "markdown"; 153 - description = '' 153 + description = lib.mdDoc '' 154 154 Specifies the type of markup used to interpret pages in the wiki. 155 155 Possible values are markdown, rst, latex, html, markdown+lhs, 156 156 rst+lhs, and latex+lhs. (the +lhs variants treat the input as ··· 166 166 math = mkOption { 167 167 type = types.enum [ "mathml" "raw" "mathjax" "jsmath" "google" ]; 168 168 default = "mathml"; 169 - description = '' 169 + description = lib.mdDoc '' 170 170 Specifies how LaTeX math is to be displayed. Possible values are 171 171 mathml, raw, mathjax, jsmath, and google. If mathml is selected, 172 172 gitit will convert LaTeX math to MathML and link in a script, ··· 186 186 mathJaxScript = mkOption { 187 187 type = types.str; 188 188 default = "https://d3eoax9i5htok0.cloudfront.net/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"; 189 - description = '' 189 + description = lib.mdDoc '' 190 190 Specifies the path to MathJax rendering script. You might want to 191 191 use your own MathJax script to render formulas without Internet 192 192 connection or if you want to use some special LaTeX packages. Note: ··· 202 202 showLhsBirdTracks = mkOption { 203 203 type = types.bool; 204 204 default = false; 205 - description = '' 205 + description = lib.mdDoc '' 206 206 Specifies whether to show Haskell code blocks in "bird style", with 207 207 "> " at the beginning of each line. 208 208 ''; ··· 224 224 logFile = mkOption { 225 225 type = types.path; 226 226 default = homeDir + "/gitit.log"; 227 - description = '' 227 + description = lib.mdDoc '' 228 228 Specifies the path of gitit's log file. If it does not exist, gitit 229 229 will create it. The log is in Apache combined log format. 230 230 ''; ··· 233 233 logLevel = mkOption { 234 234 type = types.enum [ "DEBUG" "INFO" "NOTICE" "WARNING" "ERROR" "CRITICAL" "ALERT" "EMERGENCY" ]; 235 235 default = "ERROR"; 236 - description = '' 236 + description = lib.mdDoc '' 237 237 Determines how much information is logged. Possible values (from 238 238 most to least verbose) are DEBUG, INFO, NOTICE, WARNING, ERROR, 239 239 CRITICAL, ALERT, EMERGENCY. ··· 243 243 frontPage = mkOption { 244 244 type = types.str; 245 245 default = "Front Page"; 246 - description = '' 246 + description = lib.mdDoc '' 247 247 Specifies which wiki page is to be used as the wiki's front page. 248 248 Gitit creates a default front page on startup, if one does not exist 249 249 already. ··· 253 253 noDelete = mkOption { 254 254 type = types.str; 255 255 default = "Front Page, Help"; 256 - description = '' 256 + description = lib.mdDoc '' 257 257 Specifies pages that cannot be deleted through the web interface. 258 258 (They can still be deleted directly using git or darcs.) A 259 259 comma-separated list of page names. Leave blank to allow every page ··· 264 264 noEdit = mkOption { 265 265 type = types.str; 266 266 default = "Help"; 267 - description = '' 267 + description = lib.mdDoc '' 268 268 Specifies pages that cannot be edited through the web interface. 269 269 Leave blank to allow every page to be edited. 270 270 ''; ··· 273 273 defaultSummary = mkOption { 274 274 type = types.str; 275 275 default = ""; 276 - description = '' 276 + description = lib.mdDoc '' 277 277 Specifies text to be used in the change description if the author 278 278 leaves the "description" field blank. If default-summary is blank 279 279 (the default), the author will be required to fill in the description ··· 284 284 tableOfContents = mkOption { 285 285 type = types.bool; 286 286 default = true; 287 - description = '' 287 + description = lib.mdDoc '' 288 288 Specifies whether to print a tables of contents (with links to 289 289 sections) on each wiki page. 290 290 ''; ··· 293 293 plugins = mkOption { 294 294 type = with types; listOf str; 295 295 default = [ (gititShared + "/plugins/Dot.hs") ]; 296 - description = '' 296 + description = lib.mdDoc '' 297 297 Specifies a list of plugins to load. Plugins may be specified either 298 298 by their path or by their module name. If the plugin name starts 299 299 with Gitit.Plugin., gitit will assume that the plugin is an installed ··· 304 304 useCache = mkOption { 305 305 type = types.bool; 306 306 default = false; 307 - description = '' 307 + description = lib.mdDoc '' 308 308 Specifies whether to cache rendered pages. Note that if use-feed is 309 309 selected, feeds will be cached regardless of the value of use-cache. 310 310 ''; ··· 313 313 cacheDir = mkOption { 314 314 type = types.path; 315 315 default = homeDir + "/cache"; 316 - description = "Path where rendered pages will be cached."; 316 + description = lib.mdDoc "Path where rendered pages will be cached."; 317 317 }; 318 318 319 319 maxUploadSize = mkOption { 320 320 type = types.str; 321 321 default = "1000K"; 322 - description = '' 322 + description = lib.mdDoc '' 323 323 Specifies an upper limit on the size (in bytes) of files uploaded 324 324 through the wiki's web interface. To disable uploads, set this to 325 325 0K. This will result in the uploads link disappearing and the ··· 330 330 maxPageSize = mkOption { 331 331 type = types.str; 332 332 default = "1000K"; 333 - description = "Specifies an upper limit on the size (in bytes) of pages."; 333 + description = lib.mdDoc "Specifies an upper limit on the size (in bytes) of pages."; 334 334 }; 335 335 336 336 debugMode = mkOption { 337 337 type = types.bool; 338 338 default = false; 339 - description = "Causes debug information to be logged while gitit is running."; 339 + description = lib.mdDoc "Causes debug information to be logged while gitit is running."; 340 340 }; 341 341 342 342 compressResponses = mkOption { 343 343 type = types.bool; 344 344 default = true; 345 - description = "Specifies whether HTTP responses should be compressed."; 345 + description = lib.mdDoc "Specifies whether HTTP responses should be compressed."; 346 346 }; 347 347 348 348 mimeTypesFile = mkOption { ··· 363 363 useReCaptcha = mkOption { 364 364 type = types.bool; 365 365 default = false; 366 - description = '' 366 + description = lib.mdDoc '' 367 367 If true, causes gitit to use the reCAPTCHA service 368 368 (http://recaptcha.net) to prevent bots from creating accounts. 369 369 ''; ··· 372 372 reCaptchaPrivateKey = mkOption { 373 373 type = with types; nullOr str; 374 374 default = null; 375 - description = '' 375 + description = lib.mdDoc '' 376 376 Specifies the private key for the reCAPTCHA service. To get 377 377 these, you need to create an account at http://recaptcha.net. 378 378 ''; ··· 381 381 reCaptchaPublicKey = mkOption { 382 382 type = with types; nullOr str; 383 383 default = null; 384 - description = '' 384 + description = lib.mdDoc '' 385 385 Specifies the public key for the reCAPTCHA service. To get 386 386 these, you need to create an account at http://recaptcha.net. 387 387 ''; ··· 390 390 accessQuestion = mkOption { 391 391 type = types.str; 392 392 default = "What is the code given to you by Ms. X?"; 393 - description = '' 393 + description = lib.mdDoc '' 394 394 Specifies a question that users must answer when they attempt to 395 395 create an account 396 396 ''; ··· 399 399 accessQuestionAnswers = mkOption { 400 400 type = types.str; 401 401 default = "RED DOG, red dog"; 402 - description = '' 402 + description = lib.mdDoc '' 403 403 Specifies a question that users must answer when they attempt to 404 404 create an account, along with a comma-separated list of acceptable 405 405 answers. This can be used to institute a rudimentary password for ··· 413 413 rpxDomain = mkOption { 414 414 type = with types; nullOr str; 415 415 default = null; 416 - description = '' 416 + description = lib.mdDoc '' 417 417 Specifies the domain and key of your RPX account. The domain is just 418 418 the prefix of the complete RPX domain, so if your full domain is 419 419 'https://foo.rpxnow.com/', use 'foo' as the value of rpx-domain. ··· 423 423 rpxKey = mkOption { 424 424 type = with types; nullOr str; 425 425 default = null; 426 - description = "RPX account access key."; 426 + description = lib.mdDoc "RPX account access key."; 427 427 }; 428 428 429 429 mailCommand = mkOption { 430 430 type = types.str; 431 431 default = "sendmail %s"; 432 - description = '' 432 + description = lib.mdDoc '' 433 433 Specifies the command to use to send notification emails. '%s' will 434 434 be replaced by the destination email address. The body of the 435 435 message will be read from stdin. If this field is left blank, ··· 451 451 > 452 452 > Regards 453 453 ''; 454 - description = '' 454 + description = lib.mdDoc '' 455 455 Gives the text of the message that will be sent to the user should 456 456 she want to reset her password, or change other registration info. 457 457 The lines must be indented, and must begin with '>'. The initial ··· 471 471 useFeed = mkOption { 472 472 type = types.bool; 473 473 default = false; 474 - description = '' 474 + description = lib.mdDoc '' 475 475 Specifies whether an ATOM feed should be enabled (for the site and 476 476 for individual pages). 477 477 ''; ··· 480 480 baseUrl = mkOption { 481 481 type = with types; nullOr str; 482 482 default = null; 483 - description = '' 483 + description = lib.mdDoc '' 484 484 The base URL of the wiki, to be used in constructing feed IDs and RPX 485 485 token_urls. Set this if useFeed is false or authentication-method 486 486 is 'rpx'. ··· 502 502 feedDays = mkOption { 503 503 type = types.int; 504 504 default = 14; 505 - description = "Number of days to be included in feeds."; 505 + description = lib.mdDoc "Number of days to be included in feeds."; 506 506 }; 507 507 508 508 feedRefreshTime = mkOption { 509 509 type = types.int; 510 510 default = 60; 511 - description = "Number of minutes to cache feeds before refreshing."; 511 + description = lib.mdDoc "Number of minutes to cache feeds before refreshing."; 512 512 }; 513 513 514 514 pdfExport = mkOption { 515 515 type = types.bool; 516 516 default = false; 517 - description = '' 517 + description = lib.mdDoc '' 518 518 If true, PDF will appear in export options. PDF will be created using 519 519 pdflatex, which must be installed and in the path. Note that PDF 520 520 exports create significant additional server load. ··· 524 524 pandocUserData = mkOption { 525 525 type = with types; nullOr path; 526 526 default = null; 527 - description = '' 527 + description = lib.mdDoc '' 528 528 If a directory is specified, this will be searched for pandoc 529 529 customizations. These can include a templates/ directory for custom 530 530 templates for various export formats, an S5 directory for custom S5 ··· 537 537 xssSanitize = mkOption { 538 538 type = types.bool; 539 539 default = true; 540 - description = '' 540 + description = lib.mdDoc '' 541 541 If true, all HTML (including that produced by pandoc) is filtered 542 542 through xss-sanitize. Set to no only if you trust all of your users. 543 543 ''; ··· 546 546 oauthClientId = mkOption { 547 547 type = with types; nullOr str; 548 548 default = null; 549 - description = "OAuth client ID"; 549 + description = lib.mdDoc "OAuth client ID"; 550 550 }; 551 551 552 552 oauthClientSecret = mkOption { 553 553 type = with types; nullOr str; 554 554 default = null; 555 - description = "OAuth client secret"; 555 + description = lib.mdDoc "OAuth client secret"; 556 556 }; 557 557 558 558 oauthCallback = mkOption { 559 559 type = with types; nullOr str; 560 560 default = null; 561 - description = "OAuth callback URL"; 561 + description = lib.mdDoc "OAuth callback URL"; 562 562 }; 563 563 564 564 oauthAuthorizeEndpoint = mkOption { 565 565 type = with types; nullOr str; 566 566 default = null; 567 - description = "OAuth authorize endpoint"; 567 + description = lib.mdDoc "OAuth authorize endpoint"; 568 568 }; 569 569 570 570 oauthAccessTokenEndpoint = mkOption { 571 571 type = with types; nullOr str; 572 572 default = null; 573 - description = "OAuth access token endpoint"; 573 + description = lib.mdDoc "OAuth access token endpoint"; 574 574 }; 575 575 576 576 githubOrg = mkOption { 577 577 type = with types; nullOr str; 578 578 default = null; 579 - description = "Github organization"; 579 + description = lib.mdDoc "Github organization"; 580 580 }; 581 581 }; 582 582
+2 -2
nixos/modules/services/misc/gitlab.nix
··· 319 319 type = with types; either str (listOf str); 320 320 default = []; 321 321 example = "03:00"; 322 - description = '' 322 + description = lib.mdDoc '' 323 323 The time(s) to run automatic backup of GitLab 324 324 state. Specified in systemd's time format; see 325 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 325 + {manpage}`systemd.time(7)`. 326 326 ''; 327 327 }; 328 328
+11 -11
nixos/modules/services/misc/nix-daemon.nix
··· 155 155 type = types.enum [ "other" "batch" "idle" ]; 156 156 default = "other"; 157 157 example = "batch"; 158 - description = '' 158 + description = lib.mdDoc '' 159 159 Nix daemon process CPU scheduling policy. This policy propagates to 160 - build processes. <literal>other</literal> is the default scheduling 161 - policy for regular tasks. The <literal>batch</literal> policy is 162 - similar to <literal>other</literal>, but optimised for 163 - non-interactive tasks. <literal>idle</literal> is for extremely 160 + build processes. `other` is the default scheduling 161 + policy for regular tasks. The `batch` policy is 162 + similar to `other`, but optimised for 163 + non-interactive tasks. `idle` is for extremely 164 164 low-priority tasks that should only be run when no other task 165 165 requires CPU time. 166 166 167 - Please note that while using the <literal>idle</literal> policy may 167 + Please note that while using the `idle` policy may 168 168 greatly improve responsiveness of a system performing expensive 169 169 builds, it may also slow down and potentially starve crucial 170 170 configuration updates during load. 171 171 172 - <literal>idle</literal> may therefore be a sensible policy for 172 + `idle` may therefore be a sensible policy for 173 173 systems that experience only intermittent phases of high CPU load, 174 174 such as desktop or portable computers used interactively. Other 175 - systems should use the <literal>other</literal> or 176 - <literal>batch</literal> policy instead. 175 + systems should use the `other` or 176 + `batch` policy instead. 177 177 178 178 For more fine-grained resource control, please refer to 179 - <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry> and adjust 180 - <option>systemd.services.nix-daemon</option> directly. 179 + {manpage}`systemd.resource-control(5)` and adjust 180 + {option}`systemd.services.nix-daemon` directly. 181 181 ''; 182 182 }; 183 183
+4 -4
nixos/modules/services/misc/nix-gc.nix
··· 24 24 type = types.str; 25 25 default = "03:15"; 26 26 example = "weekly"; 27 - description = '' 27 + description = lib.mdDoc '' 28 28 How often or when garbage collection is performed. For most desktop and server systems 29 29 a sufficient garbage collection is once a week. 30 30 31 31 The format is described in 32 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 32 + {manpage}`systemd.time(7)`. 33 33 ''; 34 34 }; 35 35 ··· 37 37 default = "0"; 38 38 type = types.str; 39 39 example = "45min"; 40 - description = '' 40 + description = lib.mdDoc '' 41 41 Add a randomized delay before each garbage collection. 42 42 The delay will be chosen between zero and this value. 43 43 This value must be a time span in the format specified by 44 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry> 44 + {manpage}`systemd.time(7)` 45 45 ''; 46 46 }; 47 47
+2 -2
nixos/modules/services/misc/nix-optimise.nix
··· 23 23 dates = mkOption { 24 24 default = ["03:45"]; 25 25 type = types.listOf types.str; 26 - description = '' 26 + description = lib.mdDoc '' 27 27 Specification (in the format described by 28 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>) of the time at 28 + {manpage}`systemd.time(7)`) of the time at 29 29 which the optimiser will run. 30 30 ''; 31 31 };
+4 -4
nixos/modules/services/misc/snapper.nix
··· 20 20 snapshotInterval = mkOption { 21 21 type = types.str; 22 22 default = "hourly"; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 Snapshot interval. 25 25 26 26 The format is described in 27 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 27 + {manpage}`systemd.time(7)`. 28 28 ''; 29 29 }; 30 30 31 31 cleanupInterval = mkOption { 32 32 type = types.str; 33 33 default = "1d"; 34 - description = '' 34 + description = lib.mdDoc '' 35 35 Cleanup interval. 36 36 37 37 The format is described in 38 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 38 + {manpage}`systemd.time(7)`. 39 39 ''; 40 40 }; 41 41
+89 -89
nixos/modules/services/misc/sourcehut/default.nix
··· 47 47 }))); 48 48 commonServiceSettings = srv: { 49 49 origin = mkOption { 50 - description = "URL ${srv}.sr.ht is being served at (protocol://domain)"; 50 + description = lib.mdDoc "URL ${srv}.sr.ht is being served at (protocol://domain)"; 51 51 type = types.str; 52 52 default = "https://${srv}.${domain}"; 53 53 defaultText = "https://${srv}.example.com"; 54 54 }; 55 55 debug-host = mkOption { 56 - description = "Address to bind the debug server to."; 56 + description = lib.mdDoc "Address to bind the debug server to."; 57 57 type = with types; nullOr str; 58 58 default = null; 59 59 }; 60 60 debug-port = mkOption { 61 - description = "Port to bind the debug server to."; 61 + description = lib.mdDoc "Port to bind the debug server to."; 62 62 type = with types; nullOr str; 63 63 default = null; 64 64 }; 65 65 connection-string = mkOption { 66 - description = "SQLAlchemy connection string for the database."; 66 + description = lib.mdDoc "SQLAlchemy connection string for the database."; 67 67 type = types.str; 68 68 default = "postgresql:///localhost?user=${srv}srht&host=/run/postgresql"; 69 69 }; 70 70 migrate-on-upgrade = mkEnableOption "automatic migrations on package upgrade" // { default = true; }; 71 71 oauth-client-id = mkOption { 72 - description = "${srv}.sr.ht's OAuth client id for meta.sr.ht."; 72 + description = lib.mdDoc "${srv}.sr.ht's OAuth client id for meta.sr.ht."; 73 73 type = types.str; 74 74 }; 75 75 oauth-client-secret = mkOption { 76 - description = "${srv}.sr.ht's OAuth client secret for meta.sr.ht."; 76 + description = lib.mdDoc "${srv}.sr.ht's OAuth client secret for meta.sr.ht."; 77 77 type = types.path; 78 78 apply = s: "<" + toString s; 79 79 }; ··· 117 117 type = with types; listOf (enum 118 118 [ "builds" "dispatch" "git" "hg" "hub" "lists" "man" "meta" "pages" "paste" "todo" ]); 119 119 defaultText = "locally enabled services"; 120 - description = '' 120 + description = lib.mdDoc '' 121 121 Services that may be displayed as links in the title bar of the Web interface. 122 122 ''; 123 123 }; ··· 125 125 listenAddress = mkOption { 126 126 type = types.str; 127 127 default = "localhost"; 128 - description = "Address to bind to."; 128 + description = lib.mdDoc "Address to bind to."; 129 129 }; 130 130 131 131 python = mkOption { ··· 147 147 virtualHost = mkOption { 148 148 type = types.attrs; 149 149 default = {}; 150 - description = "Virtual-host configuration merged with all Sourcehut's virtual-hosts."; 150 + description = lib.mdDoc "Virtual-host configuration merged with all Sourcehut's virtual-hosts."; 151 151 }; 152 152 }; 153 153 ··· 168 168 freeformType = settingsFormat.type; 169 169 options."sr.ht" = { 170 170 global-domain = mkOption { 171 - description = "Global domain name."; 171 + description = lib.mdDoc "Global domain name."; 172 172 type = types.str; 173 173 example = "example.com"; 174 174 }; 175 175 environment = mkOption { 176 - description = "Values other than \"production\" adds a banner to each page."; 176 + description = lib.mdDoc "Values other than \"production\" adds a banner to each page."; 177 177 type = types.enum [ "development" "production" ]; 178 178 default = "development"; 179 179 }; 180 180 network-key = mkOption { 181 - description = '' 181 + description = lib.mdDoc '' 182 182 An absolute file path (which should be outside the Nix-store) 183 - to a secret key to encrypt internal messages with. Use <literal>srht-keygen network</literal> to 183 + to a secret key to encrypt internal messages with. Use `srht-keygen network` to 184 184 generate this key. It must be consistent between all services and nodes. 185 185 ''; 186 186 type = types.path; 187 187 apply = s: "<" + toString s; 188 188 }; 189 189 owner-email = mkOption { 190 - description = "Owner's email."; 190 + description = lib.mdDoc "Owner's email."; 191 191 type = types.str; 192 192 default = "contact@example.com"; 193 193 }; 194 194 owner-name = mkOption { 195 - description = "Owner's name."; 195 + description = lib.mdDoc "Owner's name."; 196 196 type = types.str; 197 197 default = "John Doe"; 198 198 }; 199 199 site-blurb = mkOption { 200 - description = "Blurb for your site."; 200 + description = lib.mdDoc "Blurb for your site."; 201 201 type = types.str; 202 202 default = "the hacker's forge"; 203 203 }; 204 204 site-info = mkOption { 205 - description = "The top-level info page for your site."; 205 + description = lib.mdDoc "The top-level info page for your site."; 206 206 type = types.str; 207 207 default = "https://sourcehut.org"; 208 208 }; 209 209 service-key = mkOption { 210 - description = '' 210 + description = lib.mdDoc '' 211 211 An absolute file path (which should be outside the Nix-store) 212 - to a key used for encrypting session cookies. Use <literal>srht-keygen service</literal> to 212 + to a key used for encrypting session cookies. Use `srht-keygen service` to 213 213 generate the service key. This must be shared between each node of the same 214 214 service (e.g. git1.sr.ht and git2.sr.ht), but different services may use 215 215 different keys. If you configure all of your services with the same ··· 219 219 apply = s: "<" + toString s; 220 220 }; 221 221 site-name = mkOption { 222 - description = "The name of your network of sr.ht-based sites."; 222 + description = lib.mdDoc "The name of your network of sr.ht-based sites."; 223 223 type = types.str; 224 224 default = "sourcehut"; 225 225 }; 226 226 source-url = mkOption { 227 - description = "The source code for your fork of sr.ht."; 227 + description = lib.mdDoc "The source code for your fork of sr.ht."; 228 228 type = types.str; 229 229 default = "https://git.sr.ht/~sircmpwn/srht"; 230 230 }; ··· 232 232 options.mail = { 233 233 smtp-host = mkOptionNullOrStr "Outgoing SMTP host."; 234 234 smtp-port = mkOption { 235 - description = "Outgoing SMTP port."; 235 + description = lib.mdDoc "Outgoing SMTP port."; 236 236 type = with types; nullOr port; 237 237 default = null; 238 238 }; ··· 240 240 smtp-password = mkOptionNullOrStr "Outgoing SMTP password."; 241 241 smtp-from = mkOption { 242 242 type = types.str; 243 - description = "Outgoing SMTP FROM."; 243 + description = lib.mdDoc "Outgoing SMTP FROM."; 244 244 }; 245 245 error-to = mkOptionNullOrStr "Address receiving application exceptions"; 246 246 error-from = mkOptionNullOrStr "Address sending application exceptions"; 247 247 pgp-privkey = mkOption { 248 248 type = types.str; 249 - description = '' 249 + description = lib.mdDoc '' 250 250 An absolute file path (which should be outside the Nix-store) 251 251 to an OpenPGP private key. 252 252 253 253 Your PGP key information (DO NOT mix up pub and priv here) 254 254 You must remove the password from your secret key, if present. 255 - You can do this with <literal>gpg --edit-key [key-id]</literal>, 256 - then use the <literal>passwd</literal> command and do not enter a new password. 255 + You can do this with `gpg --edit-key [key-id]`, 256 + then use the `passwd` command and do not enter a new password. 257 257 ''; 258 258 }; 259 259 pgp-pubkey = mkOption { 260 260 type = with types; either path str; 261 - description = "OpenPGP public key."; 261 + description = lib.mdDoc "OpenPGP public key."; 262 262 }; 263 263 pgp-key-id = mkOption { 264 264 type = types.str; 265 - description = "OpenPGP key identifier."; 265 + description = lib.mdDoc "OpenPGP key identifier."; 266 266 }; 267 267 }; 268 268 options.objects = { 269 269 s3-upstream = mkOption { 270 - description = "Configure the S3-compatible object storage service."; 270 + description = lib.mdDoc "Configure the S3-compatible object storage service."; 271 271 type = with types; nullOr str; 272 272 default = null; 273 273 }; 274 274 s3-access-key = mkOption { 275 - description = "Access key to the S3-compatible object storage service"; 275 + description = lib.mdDoc "Access key to the S3-compatible object storage service"; 276 276 type = with types; nullOr str; 277 277 default = null; 278 278 }; 279 279 s3-secret-key = mkOption { 280 - description = '' 280 + description = lib.mdDoc '' 281 281 An absolute file path (which should be outside the Nix-store) 282 282 to the secret key of the S3-compatible object storage service. 283 283 ''; ··· 288 288 }; 289 289 options.webhooks = { 290 290 private-key = mkOption { 291 - description = '' 291 + description = lib.mdDoc '' 292 292 An absolute file path (which should be outside the Nix-store) 293 293 to a base64-encoded Ed25519 key for signing webhook payloads. 294 294 This should be consistent for all *.sr.ht sites, 295 295 as this key will be used to verify signatures 296 296 from other sites in your network. 297 - Use the <literal>srht-keygen webhook</literal> command to generate a key. 297 + Use the `srht-keygen webhook` command to generate a key. 298 298 ''; 299 299 type = types.path; 300 300 apply = s: "<" + toString s; ··· 311 311 enabled = mkEnableOption "GitLab integration"; 312 312 canonical-upstream = mkOption { 313 313 type = types.str; 314 - description = "Canonical upstream."; 314 + description = lib.mdDoc "Canonical upstream."; 315 315 default = "gitlab.com"; 316 316 }; 317 317 repo-cache = mkOption { 318 318 type = types.str; 319 - description = "Repository cache directory."; 319 + description = lib.mdDoc "Repository cache directory."; 320 320 default = "./repo-cache"; 321 321 }; 322 322 "gitlab.com" = mkOption { 323 323 type = with types; nullOr str; 324 - description = "GitLab id and secret."; 324 + description = lib.mdDoc "GitLab id and secret."; 325 325 default = null; 326 326 example = "GitLab:application id:secret"; 327 327 }; ··· 330 330 options."builds.sr.ht" = commonServiceSettings "builds" // { 331 331 allow-free = mkEnableOption "nonpaying users to submit builds"; 332 332 redis = mkOption { 333 - description = "The Redis connection used for the Celery worker."; 333 + description = lib.mdDoc "The Redis connection used for the Celery worker."; 334 334 type = types.str; 335 335 default = "redis+socket:///run/redis-sourcehut-buildsrht/redis.sock?virtual_host=2"; 336 336 }; 337 337 shell = mkOption { 338 - description = '' 338 + description = lib.mdDoc '' 339 339 Scripts used to launch on SSH connection. 340 - <literal>/usr/bin/master-shell</literal> on master, 341 - <literal>/usr/bin/runner-shell</literal> on runner. 340 + `/usr/bin/master-shell` on master, 341 + `/usr/bin/runner-shell` on runner. 342 342 If master and worker are on the same system 343 - set to <literal>/usr/bin/runner-shell</literal>. 343 + set to `/usr/bin/runner-shell`. 344 344 ''; 345 345 type = types.enum ["/usr/bin/master-shell" "/usr/bin/runner-shell"]; 346 346 default = "/usr/bin/master-shell"; ··· 348 348 }; 349 349 options."builds.sr.ht::worker" = { 350 350 bind-address = mkOption { 351 - description = '' 351 + description = lib.mdDoc '' 352 352 HTTP bind address for serving local build information/monitoring. 353 353 ''; 354 354 type = types.str; 355 355 default = "localhost:8080"; 356 356 }; 357 357 buildlogs = mkOption { 358 - description = "Path to write build logs."; 358 + description = lib.mdDoc "Path to write build logs."; 359 359 type = types.str; 360 360 default = "/var/log/sourcehut/buildsrht-worker"; 361 361 }; 362 362 name = mkOption { 363 - description = '' 363 + description = lib.mdDoc '' 364 364 Listening address and listening port 365 365 of the build runner (with HTTP port if not 80). 366 366 ''; ··· 368 368 default = "localhost:5020"; 369 369 }; 370 370 timeout = mkOption { 371 - description = '' 371 + description = lib.mdDoc '' 372 372 Max build duration. 373 - See <link xlink:href="https://golang.org/pkg/time/#ParseDuration"/>. 373 + See <https://golang.org/pkg/time/#ParseDuration>. 374 374 ''; 375 375 type = types.str; 376 376 default = "3m"; ··· 379 379 380 380 options."git.sr.ht" = commonServiceSettings "git" // { 381 381 outgoing-domain = mkOption { 382 - description = "Outgoing domain."; 382 + description = lib.mdDoc "Outgoing domain."; 383 383 type = types.str; 384 384 default = "https://git.localhost.localdomain"; 385 385 }; 386 386 post-update-script = mkOption { 387 - description = '' 387 + description = lib.mdDoc '' 388 388 A post-update script which is installed in every git repo. 389 389 This setting is propagated to newer and existing repositories. 390 390 ''; ··· 393 393 defaultText = "\${pkgs.sourcehut.gitsrht}/bin/gitsrht-update-hook"; 394 394 }; 395 395 repos = mkOption { 396 - description = '' 396 + description = lib.mdDoc '' 397 397 Path to git repositories on disk. 398 398 If changing the default, you must ensure that 399 399 the gitsrht's user as read and write access to it. ··· 402 402 default = "/var/lib/sourcehut/gitsrht/repos"; 403 403 }; 404 404 webhooks = mkOption { 405 - description = "The Redis connection used for the webhooks worker."; 405 + description = lib.mdDoc "The Redis connection used for the webhooks worker."; 406 406 type = types.str; 407 407 default = "redis+socket:///run/redis-sourcehut-gitsrht/redis.sock?virtual_host=1"; 408 408 }; 409 409 }; 410 410 options."git.sr.ht::api" = { 411 411 internal-ipnet = mkOption { 412 - description = '' 412 + description = lib.mdDoc '' 413 413 Set of IP subnets which are permitted to utilize internal API 414 414 authentication. This should be limited to the subnets 415 415 from which your *.sr.ht services are running. 416 - See <xref linkend="opt-services.sourcehut.listenAddress"/>. 416 + See [](#opt-services.sourcehut.listenAddress). 417 417 ''; 418 418 type = with types; listOf str; 419 419 default = [ "127.0.0.0/8" "::1/128" ]; ··· 422 422 423 423 options."hg.sr.ht" = commonServiceSettings "hg" // { 424 424 changegroup-script = mkOption { 425 - description = '' 425 + description = lib.mdDoc '' 426 426 A changegroup script which is installed in every mercurial repo. 427 427 This setting is propagated to newer and existing repositories. 428 428 ''; ··· 431 431 defaultText = "\${cfg.python}/bin/hgsrht-hook-changegroup"; 432 432 }; 433 433 repos = mkOption { 434 - description = '' 434 + description = lib.mdDoc '' 435 435 Path to mercurial repositories on disk. 436 436 If changing the default, you must ensure that 437 437 the hgsrht's user as read and write access to it. ··· 444 444 (defaults to where the hgsrht code is) 445 445 ''; 446 446 clone_bundle_threshold = mkOption { 447 - description = ".hg/store size (in MB) past which the nightly job generates clone bundles."; 447 + description = lib.mdDoc ".hg/store size (in MB) past which the nightly job generates clone bundles."; 448 448 type = types.ints.unsigned; 449 449 default = 50; 450 450 }; 451 451 hg_ssh = mkOption { 452 - description = "Path to hg-ssh (if not in $PATH)."; 452 + description = lib.mdDoc "Path to hg-ssh (if not in $PATH)."; 453 453 type = types.str; 454 454 default = "${pkgs.mercurial}/bin/hg-ssh"; 455 455 defaultText = "\${pkgs.mercurial}/bin/hg-ssh"; 456 456 }; 457 457 webhooks = mkOption { 458 - description = "The Redis connection used for the webhooks worker."; 458 + description = lib.mdDoc "The Redis connection used for the webhooks worker."; 459 459 type = types.str; 460 460 default = "redis+socket:///run/redis-sourcehut-hgsrht/redis.sock?virtual_host=1"; 461 461 }; ··· 467 467 options."lists.sr.ht" = commonServiceSettings "lists" // { 468 468 allow-new-lists = mkEnableOption "Allow creation of new lists."; 469 469 notify-from = mkOption { 470 - description = "Outgoing email for notifications generated by users."; 470 + description = lib.mdDoc "Outgoing email for notifications generated by users."; 471 471 type = types.str; 472 472 default = "lists-notify@localhost.localdomain"; 473 473 }; 474 474 posting-domain = mkOption { 475 - description = "Posting domain."; 475 + description = lib.mdDoc "Posting domain."; 476 476 type = types.str; 477 477 default = "lists.localhost.localdomain"; 478 478 }; 479 479 redis = mkOption { 480 - description = "The Redis connection used for the Celery worker."; 480 + description = lib.mdDoc "The Redis connection used for the Celery worker."; 481 481 type = types.str; 482 482 default = "redis+socket:///run/redis-sourcehut-listssrht/redis.sock?virtual_host=2"; 483 483 }; 484 484 webhooks = mkOption { 485 - description = "The Redis connection used for the webhooks worker."; 485 + description = lib.mdDoc "The Redis connection used for the webhooks worker."; 486 486 type = types.str; 487 487 default = "redis+socket:///run/redis-sourcehut-listssrht/redis.sock?virtual_host=1"; 488 488 }; 489 489 }; 490 490 options."lists.sr.ht::worker" = { 491 491 reject-mimetypes = mkOption { 492 - description = '' 492 + description = lib.mdDoc '' 493 493 Comma-delimited list of Content-Types to reject. Messages with Content-Types 494 494 included in this list are rejected. Multipart messages are always supported, 495 495 and each part is checked against this list. ··· 500 500 default = ["text/html"]; 501 501 }; 502 502 reject-url = mkOption { 503 - description = "Reject URL."; 503 + description = lib.mdDoc "Reject URL."; 504 504 type = types.str; 505 505 default = "https://man.sr.ht/lists.sr.ht/etiquette.md"; 506 506 }; 507 507 sock = mkOption { 508 - description = '' 508 + description = lib.mdDoc '' 509 509 Path for the lmtp daemon's unix socket. Direct incoming mail to this socket. 510 510 Alternatively, specify IP:PORT and an SMTP server will be run instead. 511 511 ''; ··· 513 513 default = "/tmp/lists.sr.ht-lmtp.sock"; 514 514 }; 515 515 sock-group = mkOption { 516 - description = '' 516 + description = lib.mdDoc '' 517 517 The lmtp daemon will make the unix socket group-read/write 518 518 for users in this group. 519 519 ''; ··· 529 529 removeAttrs (commonServiceSettings "meta") 530 530 ["oauth-client-id" "oauth-client-secret"] // { 531 531 api-origin = mkOption { 532 - description = "Origin URL for API, 100 more than web."; 532 + description = lib.mdDoc "Origin URL for API, 100 more than web."; 533 533 type = types.str; 534 534 default = "http://${cfg.listenAddress}:${toString (cfg.meta.port + 100)}"; 535 535 defaultText = ''http://<xref linkend="opt-services.sourcehut.listenAddress"/>:''${toString (<xref linkend="opt-services.sourcehut.meta.port"/> + 100)}''; 536 536 }; 537 537 webhooks = mkOption { 538 - description = "The Redis connection used for the webhooks worker."; 538 + description = lib.mdDoc "The Redis connection used for the webhooks worker."; 539 539 type = types.str; 540 540 default = "redis+socket:///run/redis-sourcehut-metasrht/redis.sock?virtual_host=1"; 541 541 }; ··· 543 543 }; 544 544 options."meta.sr.ht::api" = { 545 545 internal-ipnet = mkOption { 546 - description = '' 546 + description = lib.mdDoc '' 547 547 Set of IP subnets which are permitted to utilize internal API 548 548 authentication. This should be limited to the subnets 549 549 from which your *.sr.ht services are running. 550 - See <xref linkend="opt-services.sourcehut.listenAddress"/>. 550 + See [](#opt-services.sourcehut.listenAddress). 551 551 ''; 552 552 type = with types; listOf str; 553 553 default = [ "127.0.0.0/8" "::1/128" ]; 554 554 }; 555 555 }; 556 556 options."meta.sr.ht::aliases" = mkOption { 557 - description = "Aliases for the client IDs of commonly used OAuth clients."; 557 + description = lib.mdDoc "Aliases for the client IDs of commonly used OAuth clients."; 558 558 type = with types; attrsOf int; 559 559 default = {}; 560 560 example = { "git.sr.ht" = 12345; }; ··· 572 572 options."meta.sr.ht::settings" = { 573 573 registration = mkEnableOption "public registration"; 574 574 onboarding-redirect = mkOption { 575 - description = "Where to redirect new users upon registration."; 575 + description = lib.mdDoc "Where to redirect new users upon registration."; 576 576 type = types.str; 577 577 default = "https://meta.localhost.localdomain"; 578 578 }; 579 579 user-invites = mkOption { 580 - description = '' 580 + description = lib.mdDoc '' 581 581 How many invites each user is issued upon registration 582 582 (only applicable if open registration is disabled). 583 583 ''; ··· 588 588 589 589 options."pages.sr.ht" = commonServiceSettings "pages" // { 590 590 gemini-certs = mkOption { 591 - description = '' 591 + description = lib.mdDoc '' 592 592 An absolute file path (which should be outside the Nix-store) 593 593 to Gemini certificates. 594 594 ''; ··· 596 596 default = null; 597 597 }; 598 598 max-site-size = mkOption { 599 - description = "Maximum size of any given site (post-gunzip), in MiB."; 599 + description = lib.mdDoc "Maximum size of any given site (post-gunzip), in MiB."; 600 600 type = types.int; 601 601 default = 1024; 602 602 }; ··· 611 611 }; 612 612 options."pages.sr.ht::api" = { 613 613 internal-ipnet = mkOption { 614 - description = '' 614 + description = lib.mdDoc '' 615 615 Set of IP subnets which are permitted to utilize internal API 616 616 authentication. This should be limited to the subnets 617 617 from which your *.sr.ht services are running. 618 - See <xref linkend="opt-services.sourcehut.listenAddress"/>. 618 + See [](#opt-services.sourcehut.listenAddress). 619 619 ''; 620 620 type = with types; listOf str; 621 621 default = [ "127.0.0.0/8" "::1/128" ]; ··· 627 627 628 628 options."todo.sr.ht" = commonServiceSettings "todo" // { 629 629 notify-from = mkOption { 630 - description = "Outgoing email for notifications generated by users."; 630 + description = lib.mdDoc "Outgoing email for notifications generated by users."; 631 631 type = types.str; 632 632 default = "todo-notify@localhost.localdomain"; 633 633 }; 634 634 webhooks = mkOption { 635 - description = "The Redis connection used for the webhooks worker."; 635 + description = lib.mdDoc "The Redis connection used for the webhooks worker."; 636 636 type = types.str; 637 637 default = "redis+socket:///run/redis-sourcehut-todosrht/redis.sock?virtual_host=1"; 638 638 }; 639 639 }; 640 640 options."todo.sr.ht::mail" = { 641 641 posting-domain = mkOption { 642 - description = "Posting domain."; 642 + description = lib.mdDoc "Posting domain."; 643 643 type = types.str; 644 644 default = "todo.localhost.localdomain"; 645 645 }; 646 646 sock = mkOption { 647 - description = '' 647 + description = lib.mdDoc '' 648 648 Path for the lmtp daemon's unix socket. Direct incoming mail to this socket. 649 649 Alternatively, specify IP:PORT and an SMTP server will be run instead. 650 650 ''; ··· 652 652 default = "/tmp/todo.sr.ht-lmtp.sock"; 653 653 }; 654 654 sock-group = mkOption { 655 - description = '' 655 + description = lib.mdDoc '' 656 656 The lmtp daemon will make the unix socket group-read/write 657 657 for users in this group. 658 658 ''; ··· 662 662 }; 663 663 }; 664 664 default = { }; 665 - description = '' 665 + description = lib.mdDoc '' 666 666 The configuration for the sourcehut network. 667 667 ''; 668 668 }; ··· 698 698 nixos.unstable.x86_64 = image_from_nixpkgs; 699 699 } 700 700 )''; 701 - description = '' 701 + description = lib.mdDoc '' 702 702 Images for builds.sr.ht. Each package should be distro.release.arch and point to a /nix/store/package/root.img.qcow2. 703 703 ''; 704 704 }; ··· 710 710 default = pkgs.git; 711 711 defaultText = literalExpression "pkgs.git"; 712 712 example = literalExpression "pkgs.gitFull"; 713 - description = '' 713 + description = lib.mdDoc '' 714 714 Git package for git.sr.ht. This can help silence collisions. 715 715 ''; 716 716 }; 717 717 fcgiwrap.preforkProcess = mkOption { 718 - description = "Number of fcgiwrap processes to prefork."; 718 + description = lib.mdDoc "Number of fcgiwrap processes to prefork."; 719 719 type = types.int; 720 720 default = 4; 721 721 }; ··· 726 726 type = types.package; 727 727 default = pkgs.mercurial; 728 728 defaultText = literalExpression "pkgs.mercurial"; 729 - description = '' 729 + description = lib.mdDoc '' 730 730 Mercurial package for hg.sr.ht. This can help silence collisions. 731 731 ''; 732 732 }; 733 733 cloneBundles = mkOption { 734 734 type = types.bool; 735 735 default = false; 736 - description = '' 736 + description = lib.mdDoc '' 737 737 Generate clonebundles (which require more disk space but dramatically speed up cloning large repositories). 738 738 ''; 739 739 }; ··· 744 744 extraArgs = mkOption { 745 745 type = with types; listOf str; 746 746 default = [ "--loglevel DEBUG" "--pool eventlet" "--without-heartbeat" ]; 747 - description = "Extra arguments passed to the Celery responsible for processing mails."; 747 + description = lib.mdDoc "Extra arguments passed to the Celery responsible for processing mails."; 748 748 }; 749 749 celeryConfig = mkOption { 750 750 type = types.lines; 751 751 default = ""; 752 - description = "Content of the <literal>celeryconfig.py</literal> used by the Celery of <literal>listssrht-process</literal>."; 752 + description = lib.mdDoc "Content of the `celeryconfig.py` used by the Celery of `listssrht-process`."; 753 753 }; 754 754 }; 755 755 };
+9 -9
nixos/modules/services/misc/sourcehut/service.nix
··· 122 122 user = mkOption { 123 123 type = types.str; 124 124 default = srvsrht; 125 - description = '' 125 + description = lib.mdDoc '' 126 126 User for ${srv}.sr.ht. 127 127 ''; 128 128 }; ··· 130 130 group = mkOption { 131 131 type = types.str; 132 132 default = srvsrht; 133 - description = '' 133 + description = lib.mdDoc '' 134 134 Group for ${srv}.sr.ht. 135 135 Membership grants access to the Git/Mercurial repositories by default, 136 136 but not to the config.ini file (where secrets are). ··· 140 140 port = mkOption { 141 141 type = types.port; 142 142 default = port; 143 - description = '' 143 + description = lib.mdDoc '' 144 144 Port on which the "${srv}" backend should listen. 145 145 ''; 146 146 }; ··· 150 150 type = types.str; 151 151 default = "unix:///run/redis-sourcehut-${srvsrht}/redis.sock?db=0"; 152 152 example = "redis://shared.wireguard:6379/0"; 153 - description = '' 153 + description = lib.mdDoc '' 154 154 The redis host URL. This is used for caching and temporary storage, and must 155 155 be shared between nodes (e.g. git1.sr.ht and git2.sr.ht), but need not be 156 156 shared between services. It may be shared between services, however, with no ··· 163 163 database = mkOption { 164 164 type = types.str; 165 165 default = "${srv}.sr.ht"; 166 - description = '' 166 + description = lib.mdDoc '' 167 167 PostgreSQL database name for the ${srv}.sr.ht service, 168 - used if <xref linkend="opt-services.sourcehut.postgresql.enable"/> is <literal>true</literal>. 168 + used if [](#opt-services.sourcehut.postgresql.enable) is `true`. 169 169 ''; 170 170 }; 171 171 }; ··· 174 174 extraArgs = mkOption { 175 175 type = with types; listOf str; 176 176 default = ["--timeout 120" "--workers 1" "--log-level=info"]; 177 - description = "Extra arguments passed to Gunicorn."; 177 + description = lib.mdDoc "Extra arguments passed to Gunicorn."; 178 178 }; 179 179 }; 180 180 } // optionalAttrs webhooks { ··· 182 182 extraArgs = mkOption { 183 183 type = with types; listOf str; 184 184 default = ["--loglevel DEBUG" "--pool eventlet" "--without-heartbeat"]; 185 - description = "Extra arguments passed to the Celery responsible for webhooks."; 185 + description = lib.mdDoc "Extra arguments passed to the Celery responsible for webhooks."; 186 186 }; 187 187 celeryConfig = mkOption { 188 188 type = types.lines; 189 189 default = ""; 190 - description = "Content of the <literal>celeryconfig.py</literal> used by the Celery responsible for webhooks."; 190 + description = lib.mdDoc "Content of the `celeryconfig.py` used by the Celery responsible for webhooks."; 191 191 }; 192 192 }; 193 193 };
+8 -8
nixos/modules/services/misc/taskserver/default.nix
··· 227 227 queueSize = mkOption { 228 228 type = types.int; 229 229 default = 10; 230 - description = '' 231 - Size of the connection backlog, see <citerefentry><refentrytitle>listen</refentrytitle><manvolnum>2</manvolnum></citerefentry>. 230 + description = lib.mdDoc '' 231 + Size of the connection backlog, see {manpage}`listen(2)`. 232 232 ''; 233 233 }; 234 234 ··· 321 321 config = mkOption { 322 322 type = types.attrs; 323 323 example.client.cert = "/tmp/debugging.cert"; 324 - description = '' 324 + description = lib.mdDoc '' 325 325 Configuration options to pass to Taskserver. 326 326 327 327 The options here are the same as described in 328 - <citerefentry><refentrytitle>taskdrc</refentrytitle><manvolnum>5</manvolnum></citerefentry>, but with one difference: 328 + {manpage}`taskdrc(5)`, but with one difference: 329 329 330 - The <literal>server</literal> option is 331 - <literal>server.listen</literal> here, because the 332 - <literal>server</literal> option would collide with other options 333 - like <literal>server.cert</literal> and we would run in a type error 330 + The `server` option is 331 + `server.listen` here, because the 332 + `server` option would collide with other options 333 + like `server.cert` and we would run in a type error 334 334 (attribute set versus string). 335 335 336 336 Nix types like integers or booleans are automatically converted to
+5 -5
nixos/modules/services/monitoring/nagios.nix
··· 125 125 debug_file = "/var/log/nagios/debug.log"; 126 126 }; 127 127 default = {}; 128 - description = "Configuration to add to /etc/nagios.cfg"; 128 + description = lib.mdDoc "Configuration to add to /etc/nagios.cfg"; 129 129 }; 130 130 131 131 validateConfig = mkOption { 132 132 type = types.bool; 133 133 default = pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform; 134 134 defaultText = literalExpression "pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform"; 135 - description = "if true, the syntax of the nagios configuration file is checked at build time"; 135 + description = lib.mdDoc "if true, the syntax of the nagios configuration file is checked at build time"; 136 136 }; 137 137 138 138 cgiConfigFile = mkOption { ··· 164 164 sslServerKey = "/var/lib/acme/example.org/key.pem"; 165 165 } 166 166 ''; 167 - description = '' 168 - Apache configuration can be done by adapting <option>services.httpd.virtualHosts</option>. 169 - See <xref linkend="opt-services.httpd.virtualHosts"/> for further information. 167 + description = lib.mdDoc '' 168 + Apache configuration can be done by adapting {option}`services.httpd.virtualHosts`. 169 + See [](#opt-services.httpd.virtualHosts) for further information. 170 170 ''; 171 171 }; 172 172 };
+7 -7
nixos/modules/services/monitoring/prometheus/exporters.nix
··· 84 84 port = mkOption { 85 85 type = types.port; 86 86 default = port; 87 - description = '' 87 + description = lib.mdDoc '' 88 88 Port to listen on. 89 89 ''; 90 90 }; 91 91 listenAddress = mkOption { 92 92 type = types.str; 93 93 default = "0.0.0.0"; 94 - description = '' 94 + description = lib.mdDoc '' 95 95 Address to listen on. 96 96 ''; 97 97 }; 98 98 extraFlags = mkOption { 99 99 type = types.listOf types.str; 100 100 default = []; 101 - description = '' 101 + description = lib.mdDoc '' 102 102 Extra commandline options to pass to the ${name} exporter. 103 103 ''; 104 104 }; 105 105 openFirewall = mkOption { 106 106 type = types.bool; 107 107 default = false; 108 - description = '' 108 + description = lib.mdDoc '' 109 109 Open port in firewall for incoming connections. 110 110 ''; 111 111 }; ··· 124 124 user = mkOption { 125 125 type = types.str; 126 126 default = "${name}-exporter"; 127 - description = '' 127 + description = lib.mdDoc '' 128 128 User name under which the ${name} exporter shall be run. 129 129 ''; 130 130 }; 131 131 group = mkOption { 132 132 type = types.str; 133 133 default = "${name}-exporter"; 134 - description = '' 134 + description = lib.mdDoc '' 135 135 Group under which the ${name} exporter shall be run. 136 136 ''; 137 137 }; ··· 227 227 type = types.submodule { 228 228 options = (mkSubModules); 229 229 }; 230 - description = "Prometheus exporter configuration"; 230 + description = lib.mdDoc "Prometheus exporter configuration"; 231 231 default = {}; 232 232 example = literalExpression '' 233 233 {
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/apcupsd.nix
··· 11 11 apcupsdAddress = mkOption { 12 12 type = types.str; 13 13 default = ":3551"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Address of the apcupsd Network Information Server (NIS). 16 16 ''; 17 17 }; ··· 19 19 apcupsdNetwork = mkOption { 20 20 type = types.enum ["tcp" "tcp4" "tcp6"]; 21 21 default = "tcp"; 22 - description = '' 22 + description = lib.mdDoc '' 23 23 Network of the apcupsd Network Information Server (NIS): one of "tcp", "tcp4", or "tcp6". 24 24 ''; 25 25 };
+4 -4
nixos/modules/services/monitoring/prometheus/exporters/artifactory.nix
··· 11 11 scrapeUri = mkOption { 12 12 type = types.str; 13 13 default = "http://localhost:8081/artifactory"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 URI on which to scrape JFrog Artifactory. 16 16 ''; 17 17 }; 18 18 19 19 artiUsername = mkOption { 20 20 type = types.str; 21 - description = '' 21 + description = lib.mdDoc '' 22 22 Username for authentication against JFrog Artifactory API. 23 23 ''; 24 24 }; ··· 26 26 artiPassword = mkOption { 27 27 type = types.str; 28 28 default = ""; 29 - description = '' 29 + description = lib.mdDoc '' 30 30 Password for authentication against JFrog Artifactory API. 31 31 One of the password or access token needs to be set. 32 32 ''; ··· 35 35 artiAccessToken = mkOption { 36 36 type = types.str; 37 37 default = ""; 38 - description = '' 38 + description = lib.mdDoc '' 39 39 Access token for authentication against JFrog Artifactory API. 40 40 One of the password or access token needs to be set. 41 41 '';
+4 -4
nixos/modules/services/monitoring/prometheus/exporters/bind.nix
··· 11 11 bindURI = mkOption { 12 12 type = types.str; 13 13 default = "http://localhost:8053/"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 HTTP XML API address of an Bind server. 16 16 ''; 17 17 }; 18 18 bindTimeout = mkOption { 19 19 type = types.str; 20 20 default = "10s"; 21 - description = '' 21 + description = lib.mdDoc '' 22 22 Timeout for trying to get stats from Bind. 23 23 ''; 24 24 }; 25 25 bindVersion = mkOption { 26 26 type = types.enum [ "xml.v2" "xml.v3" "auto" ]; 27 27 default = "auto"; 28 - description = '' 28 + description = lib.mdDoc '' 29 29 BIND statistics version. Can be detected automatically. 30 30 ''; 31 31 }; 32 32 bindGroups = mkOption { 33 33 type = types.listOf (types.enum [ "server" "view" "tasks" ]); 34 34 default = [ "server" "view" ]; 35 - description = '' 35 + description = lib.mdDoc '' 36 36 List of statistics to collect. Available: [server, view, tasks] 37 37 ''; 38 38 };
+3 -3
nixos/modules/services/monitoring/prometheus/exporters/bird.nix
··· 11 11 birdVersion = mkOption { 12 12 type = types.enum [ 1 2 ]; 13 13 default = 2; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Specifies whether BIRD1 or BIRD2 is in use. 16 16 ''; 17 17 }; 18 18 birdSocket = mkOption { 19 19 type = types.path; 20 20 default = "/run/bird/bird.ctl"; 21 - description = '' 21 + description = lib.mdDoc '' 22 22 Path to BIRD2 (or BIRD1 v4) socket. 23 23 ''; 24 24 }; 25 25 newMetricFormat = mkOption { 26 26 type = types.bool; 27 27 default = true; 28 - description = '' 28 + description = lib.mdDoc '' 29 29 Enable the new more-generic metric format. 30 30 ''; 31 31 };
+7 -7
nixos/modules/services/monitoring/prometheus/exporters/bitcoin.nix
··· 11 11 rpcUser = mkOption { 12 12 type = types.str; 13 13 default = "bitcoinrpc"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 RPC user name. 16 16 ''; 17 17 }; 18 18 19 19 rpcPasswordFile = mkOption { 20 20 type = types.path; 21 - description = '' 21 + description = lib.mdDoc '' 22 22 File containing RPC password. 23 23 ''; 24 24 }; ··· 26 26 rpcScheme = mkOption { 27 27 type = types.enum [ "http" "https" ]; 28 28 default = "http"; 29 - description = '' 29 + description = lib.mdDoc '' 30 30 Whether to connect to bitcoind over http or https. 31 31 ''; 32 32 }; ··· 34 34 rpcHost = mkOption { 35 35 type = types.str; 36 36 default = "localhost"; 37 - description = '' 37 + description = lib.mdDoc '' 38 38 RPC host. 39 39 ''; 40 40 }; ··· 42 42 rpcPort = mkOption { 43 43 type = types.port; 44 44 default = 8332; 45 - description = '' 45 + description = lib.mdDoc '' 46 46 RPC port number. 47 47 ''; 48 48 }; ··· 50 50 refreshSeconds = mkOption { 51 51 type = types.ints.unsigned; 52 52 default = 300; 53 - description = '' 53 + description = lib.mdDoc '' 54 54 How often to ask bitcoind for metrics. 55 55 ''; 56 56 }; ··· 58 58 extraEnv = mkOption { 59 59 type = types.attrsOf types.str; 60 60 default = {}; 61 - description = '' 61 + description = lib.mdDoc '' 62 62 Extra environment variables for the exporter. 63 63 ''; 64 64 };
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/blackbox.nix
··· 35 35 extraOpts = { 36 36 configFile = mkOption { 37 37 type = types.path; 38 - description = '' 38 + description = lib.mdDoc '' 39 39 Path to configuration file. 40 40 ''; 41 41 }; 42 42 enableConfigCheck = mkOption { 43 43 type = types.bool; 44 44 default = true; 45 - description = '' 45 + description = lib.mdDoc '' 46 46 Whether to run a correctness check for the configuration file. This depends 47 47 on the configuration file residing in the nix-store. Paths passed as string will 48 48 be copied to the store.
+4 -4
nixos/modules/services/monitoring/prometheus/exporters/buildkite-agent.nix
··· 11 11 tokenPath = mkOption { 12 12 type = types.nullOr types.path; 13 13 apply = final: if final == null then null else toString final; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 The token from your Buildkite "Agents" page. 16 16 17 17 A run-time path to the token file, which is supposed to be provisioned ··· 22 22 type = types.str; 23 23 default = "30s"; 24 24 example = "1min"; 25 - description = '' 25 + description = lib.mdDoc '' 26 26 How often to update metrics. 27 27 ''; 28 28 }; 29 29 endpoint = mkOption { 30 30 type = types.str; 31 31 default = "https://agent.buildkite.com/v3"; 32 - description = '' 32 + description = lib.mdDoc '' 33 33 The Buildkite Agent API endpoint. 34 34 ''; 35 35 }; ··· 37 37 type = with types; nullOr (listOf str); 38 38 default = null; 39 39 example = literalExpression ''[ "my-queue1" "my-queue2" ]''; 40 - description = '' 40 + description = lib.mdDoc '' 41 41 Which specific queues to process. 42 42 ''; 43 43 };
+6 -6
nixos/modules/services/monitoring/prometheus/exporters/collectd.nix
··· 14 14 authFile = mkOption { 15 15 default = null; 16 16 type = types.nullOr types.path; 17 - description = "File mapping user names to pre-shared keys (passwords)."; 17 + description = lib.mdDoc "File mapping user names to pre-shared keys (passwords)."; 18 18 }; 19 19 20 20 port = mkOption { 21 21 type = types.int; 22 22 default = 25826; 23 - description = "Network address on which to accept collectd binary network packets."; 23 + description = lib.mdDoc "Network address on which to accept collectd binary network packets."; 24 24 }; 25 25 26 26 listenAddress = mkOption { 27 27 type = types.str; 28 28 default = "0.0.0.0"; 29 - description = '' 29 + description = lib.mdDoc '' 30 30 Address to listen on for binary network packets. 31 31 ''; 32 32 }; ··· 34 34 securityLevel = mkOption { 35 35 type = types.enum ["None" "Sign" "Encrypt"]; 36 36 default = "None"; 37 - description = '' 37 + description = lib.mdDoc '' 38 38 Minimum required security level for accepted packets. 39 39 ''; 40 40 }; ··· 44 44 type = types.enum [ "logfmt" "json" ]; 45 45 default = "logfmt"; 46 46 example = "json"; 47 - description = '' 47 + description = lib.mdDoc '' 48 48 Set the log format. 49 49 ''; 50 50 }; ··· 52 52 logLevel = mkOption { 53 53 type = types.enum ["debug" "info" "warn" "error" "fatal"]; 54 54 default = "info"; 55 - description = '' 55 + description = lib.mdDoc '' 56 56 Only log messages with the given severity or above. 57 57 ''; 58 58 };
+11 -11
nixos/modules/services/monitoring/prometheus/exporters/dmarc.nix
··· 24 24 host = mkOption { 25 25 type = types.str; 26 26 default = "localhost"; 27 - description = '' 27 + description = lib.mdDoc '' 28 28 Hostname of IMAP server to connect to. 29 29 ''; 30 30 }; 31 31 port = mkOption { 32 32 type = types.port; 33 33 default = 993; 34 - description = '' 34 + description = lib.mdDoc '' 35 35 Port of the IMAP server to connect to. 36 36 ''; 37 37 }; 38 38 username = mkOption { 39 39 type = types.str; 40 40 example = "postmaster@example.org"; 41 - description = '' 41 + description = lib.mdDoc '' 42 42 Login username for the IMAP connection. 43 43 ''; 44 44 }; 45 45 passwordFile = mkOption { 46 46 type = types.str; 47 47 example = "/run/secrets/dovecot_pw"; 48 - description = '' 48 + description = lib.mdDoc '' 49 49 File containing the login password for the IMAP connection. 50 50 ''; 51 51 }; ··· 54 54 inbox = mkOption { 55 55 type = types.str; 56 56 default = "INBOX"; 57 - description = '' 57 + description = lib.mdDoc '' 58 58 IMAP mailbox that is checked for incoming DMARC aggregate reports 59 59 ''; 60 60 }; 61 61 done = mkOption { 62 62 type = types.str; 63 63 default = "Archive"; 64 - description = '' 64 + description = lib.mdDoc '' 65 65 IMAP mailbox that successfully processed reports are moved to. 66 66 ''; 67 67 }; 68 68 error = mkOption { 69 69 type = types.str; 70 70 default = "Invalid"; 71 - description = '' 71 + description = lib.mdDoc '' 72 72 IMAP mailbox that emails are moved to that could not be processed. 73 73 ''; 74 74 }; ··· 76 76 pollIntervalSeconds = mkOption { 77 77 type = types.ints.unsigned; 78 78 default = 60; 79 - description = '' 79 + description = lib.mdDoc '' 80 80 How often to poll the IMAP server in seconds. 81 81 ''; 82 82 }; ··· 84 84 type = types.ints.unsigned; 85 85 default = 604800; 86 86 defaultText = "7 days (in seconds)"; 87 - description = '' 87 + description = lib.mdDoc '' 88 88 How long individual report IDs will be remembered to avoid 89 89 counting double delivered reports twice. 90 90 ''; ··· 92 92 debug = mkOption { 93 93 type = types.bool; 94 94 default = false; 95 - description = '' 96 - Whether to declare enable <literal>--debug</literal>. 95 + description = lib.mdDoc '' 96 + Whether to declare enable `--debug`. 97 97 ''; 98 98 }; 99 99 };
+3 -3
nixos/modules/services/monitoring/prometheus/exporters/dnsmasq.nix
··· 11 11 dnsmasqListenAddress = mkOption { 12 12 type = types.str; 13 13 default = "localhost:53"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Address on which dnsmasq listens. 16 16 ''; 17 17 }; ··· 19 19 type = types.path; 20 20 default = "/var/lib/misc/dnsmasq.leases"; 21 21 example = "/var/lib/dnsmasq/dnsmasq.leases"; 22 - description = '' 23 - Path to the <literal>dnsmasq.leases</literal> file. 22 + description = lib.mdDoc '' 23 + Path to the `dnsmasq.leases` file. 24 24 ''; 25 25 }; 26 26 };
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/dovecot.nix
··· 11 11 telemetryPath = mkOption { 12 12 type = types.str; 13 13 default = "/metrics"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Path under which to expose metrics. 16 16 ''; 17 17 }; ··· 67 67 type = types.listOf types.str; 68 68 default = [ "user" ]; 69 69 example = [ "user" "global" ]; 70 - description = '' 70 + description = lib.mdDoc '' 71 71 Stats scopes to query. 72 72 ''; 73 73 };
+3 -3
nixos/modules/services/monitoring/prometheus/exporters/fastly.nix
··· 12 12 configFile = mkOption { 13 13 type = types.nullOr types.path; 14 14 default = null; 15 - description = '' 15 + description = lib.mdDoc '' 16 16 Path to a fastly-exporter configuration file. 17 - Example one can be generated with <literal>fastly-exporter --config-file-example</literal>. 17 + Example one can be generated with `fastly-exporter --config-file-example`. 18 18 ''; 19 19 example = "./fastly-exporter-config.txt"; 20 20 }; ··· 22 22 tokenPath = mkOption { 23 23 type = types.nullOr types.path; 24 24 apply = final: if final == null then null else toString final; 25 - description = '' 25 + description = lib.mdDoc '' 26 26 A run-time path to the token file, which is supposed to be provisioned 27 27 outside of Nix store. 28 28 '';
+4 -4
nixos/modules/services/monitoring/prometheus/exporters/flow.nix
··· 10 10 brokers = mkOption { 11 11 type = types.listOf types.str; 12 12 example = literalExpression ''[ "kafka.example.org:19092" ]''; 13 - description = "List of Kafka brokers to connect to."; 13 + description = lib.mdDoc "List of Kafka brokers to connect to."; 14 14 }; 15 15 16 16 asn = mkOption { 17 17 type = types.ints.positive; 18 18 example = 65542; 19 - description = "The ASN being monitored."; 19 + description = lib.mdDoc "The ASN being monitored."; 20 20 }; 21 21 22 22 partitions = mkOption { 23 23 type = types.listOf types.int; 24 24 default = []; 25 - description = '' 25 + description = lib.mdDoc '' 26 26 The number of the partitions to consume, none means all. 27 27 ''; 28 28 }; ··· 30 30 topic = mkOption { 31 31 type = types.str; 32 32 example = "pmacct.acct"; 33 - description = "The Kafka topic to consume from."; 33 + description = lib.mdDoc "The Kafka topic to consume from."; 34 34 }; 35 35 }; 36 36
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/fritzbox.nix
··· 11 11 gatewayAddress = mkOption { 12 12 type = types.str; 13 13 default = "fritz.box"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 The hostname or IP of the FRITZ!Box. 16 16 ''; 17 17 }; ··· 19 19 gatewayPort = mkOption { 20 20 type = types.int; 21 21 default = 49000; 22 - description = '' 22 + description = lib.mdDoc '' 23 23 The port of the FRITZ!Box UPnP service. 24 24 ''; 25 25 };
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/influxdb.nix
··· 12 12 type = types.str; 13 13 default = "5m"; 14 14 example = "10m"; 15 - description = "How long a sample is valid for"; 15 + description = lib.mdDoc "How long a sample is valid for"; 16 16 }; 17 17 udpBindAddress = mkOption { 18 18 type = types.str; 19 19 default = ":9122"; 20 20 example = "192.0.2.1:9122"; 21 - description = "Address on which to listen for udp packets"; 21 + description = lib.mdDoc "Address on which to listen for udp packets"; 22 22 }; 23 23 }; 24 24 serviceOpts = {
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/jitsi.nix
··· 11 11 url = mkOption { 12 12 type = types.str; 13 13 default = "http://localhost:8080/colibri/stats"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Jitsi Videobridge metrics URL to monitor. 16 16 This is usually /colibri/stats on port 8080 of the jitsi videobridge host. 17 17 ''; ··· 20 20 type = types.str; 21 21 default = "30s"; 22 22 example = "1min"; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 How often to scrape new data 25 25 ''; 26 26 };
+1 -1
nixos/modules/services/monitoring/prometheus/exporters/json.nix
··· 10 10 extraOpts = { 11 11 configFile = mkOption { 12 12 type = types.path; 13 - description = '' 13 + description = lib.mdDoc '' 14 14 Path to configuration file. 15 15 ''; 16 16 };
+1 -1
nixos/modules/services/monitoring/prometheus/exporters/kea.nix
··· 19 19 "/run/kea/kea-dhcp6.socket" 20 20 ] 21 21 ''; 22 - description = '' 22 + description = lib.mdDoc '' 23 23 Paths to kea control sockets 24 24 ''; 25 25 };
+3 -3
nixos/modules/services/monitoring/prometheus/exporters/knot.nix
··· 19 19 knotSocketPath = mkOption { 20 20 type = types.str; 21 21 default = "/run/knot/knot.sock"; 22 - description = '' 23 - Socket path of <citerefentry><refentrytitle>knotd</refentrytitle><manvolnum>8</manvolnum></citerefentry>. 22 + description = lib.mdDoc '' 23 + Socket path of {manpage}`knotd(8)`. 24 24 ''; 25 25 }; 26 26 27 27 knotSocketTimeout = mkOption { 28 28 type = types.int; 29 29 default = 2000; 30 - description = '' 30 + description = lib.mdDoc '' 31 31 Timeout in seconds. 32 32 ''; 33 33 };
+3 -3
nixos/modules/services/monitoring/prometheus/exporters/lnd.nix
··· 11 11 lndHost = mkOption { 12 12 type = types.str; 13 13 default = "localhost:10009"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 lnd instance gRPC address:port. 16 16 ''; 17 17 }; 18 18 19 19 lndTlsPath = mkOption { 20 20 type = types.path; 21 - description = '' 21 + description = lib.mdDoc '' 22 22 Path to lnd TLS certificate. 23 23 ''; 24 24 }; 25 25 26 26 lndMacaroonDir = mkOption { 27 27 type = types.path; 28 - description = '' 28 + description = lib.mdDoc '' 29 29 Path to lnd macaroons. 30 30 ''; 31 31 };
+15 -15
nixos/modules/services/monitoring/prometheus/exporters/mail.nix
··· 22 22 serverOptions.options = { 23 23 name = mkOption { 24 24 type = types.str; 25 - description = '' 25 + description = lib.mdDoc '' 26 26 Value for label 'configname' which will be added to all metrics. 27 27 ''; 28 28 }; 29 29 server = mkOption { 30 30 type = types.str; 31 - description = '' 31 + description = lib.mdDoc '' 32 32 Hostname of the server that should be probed. 33 33 ''; 34 34 }; 35 35 port = mkOption { 36 36 type = types.int; 37 37 example = 587; 38 - description = '' 38 + description = lib.mdDoc '' 39 39 Port to use for SMTP. 40 40 ''; 41 41 }; 42 42 from = mkOption { 43 43 type = types.str; 44 44 example = "exporteruser@domain.tld"; 45 - description = '' 45 + description = lib.mdDoc '' 46 46 Content of 'From' Header for probing mails. 47 47 ''; 48 48 }; 49 49 to = mkOption { 50 50 type = types.str; 51 51 example = "exporteruser@domain.tld"; 52 - description = '' 52 + description = lib.mdDoc '' 53 53 Content of 'To' Header for probing mails. 54 54 ''; 55 55 }; 56 56 detectionDir = mkOption { 57 57 type = types.path; 58 58 example = "/var/spool/mail/exporteruser/new"; 59 - description = '' 59 + description = lib.mdDoc '' 60 60 Directory in which new mails for the exporter user are placed. 61 61 Note that this needs to exist when the exporter starts. 62 62 ''; ··· 65 65 type = types.nullOr types.str; 66 66 default = null; 67 67 example = "exporteruser@domain.tld"; 68 - description = '' 68 + description = lib.mdDoc '' 69 69 Username to use for SMTP authentication. 70 70 ''; 71 71 }; 72 72 passphrase = mkOption { 73 73 type = types.nullOr types.str; 74 74 default = null; 75 - description = '' 75 + description = lib.mdDoc '' 76 76 Password to use for SMTP authentication. 77 77 ''; 78 78 }; ··· 82 82 monitoringInterval = mkOption { 83 83 type = types.str; 84 84 example = "10s"; 85 - description = '' 85 + description = lib.mdDoc '' 86 86 Time interval between two probe attempts. 87 87 ''; 88 88 }; 89 89 mailCheckTimeout = mkOption { 90 90 type = types.str; 91 - description = '' 91 + description = lib.mdDoc '' 92 92 Timeout until mails are considered "didn't make it". 93 93 ''; 94 94 }; 95 95 disableFileDeletion = mkOption { 96 96 type = types.bool; 97 97 default = false; 98 - description = '' 98 + description = lib.mdDoc '' 99 99 Disables the exporter's function to delete probing mails. 100 100 ''; 101 101 }; ··· 141 141 environmentFile = mkOption { 142 142 type = types.nullOr types.str; 143 143 default = null; 144 - description = '' 144 + description = lib.mdDoc '' 145 145 File containing env-vars to be substituted into the exporter's config. 146 146 ''; 147 147 }; 148 148 configFile = mkOption { 149 149 type = types.nullOr types.path; 150 150 default = null; 151 - description = '' 151 + description = lib.mdDoc '' 152 152 Specify the mailexporter configuration file to use. 153 153 ''; 154 154 }; 155 155 configuration = mkOption { 156 156 type = types.nullOr (types.submodule exporterOptions); 157 157 default = null; 158 - description = '' 158 + description = lib.mdDoc '' 159 159 Specify the mailexporter configuration file to use. 160 160 ''; 161 161 }; 162 162 telemetryPath = mkOption { 163 163 type = types.str; 164 164 default = "/metrics"; 165 - description = '' 165 + description = lib.mdDoc '' 166 166 Path under which to expose metrics. 167 167 ''; 168 168 };
+5 -5
nixos/modules/services/monitoring/prometheus/exporters/mikrotik.nix
··· 11 11 configFile = mkOption { 12 12 type = types.nullOr types.path; 13 13 default = null; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Path to a mikrotik exporter configuration file. Mutually exclusive with 16 - <option>configuration</option> option. 16 + {option}`configuration` option. 17 17 ''; 18 18 example = literalExpression "./mikrotik.yml"; 19 19 }; ··· 21 21 configuration = mkOption { 22 22 type = types.nullOr types.attrs; 23 23 default = null; 24 - description = '' 24 + description = lib.mdDoc '' 25 25 Mikrotik exporter configuration as nix attribute set. Mutually exclusive with 26 - <option>configFile</option> option. 26 + {option}`configFile` option. 27 27 28 - See <link xlink:href="https://github.com/nshttpd/mikrotik-exporter/blob/master/README.md"/> 28 + See <https://github.com/nshttpd/mikrotik-exporter/blob/master/README.md> 29 29 for the description of the configuration file format. 30 30 ''; 31 31 example = literalExpression ''
+6 -6
nixos/modules/services/monitoring/prometheus/exporters/minio.nix
··· 11 11 minioAddress = mkOption { 12 12 type = types.str; 13 13 example = "https://10.0.0.1:9000"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 The URL of the minio server. 16 16 Use HTTPS if Minio accepts secure connections only. 17 17 By default this connects to the local minio server if enabled. ··· 21 21 minioAccessKey = mkOption { 22 22 type = types.str; 23 23 example = "yourMinioAccessKey"; 24 - description = '' 24 + description = lib.mdDoc '' 25 25 The value of the Minio access key. 26 26 It is required in order to connect to the server. 27 27 By default this uses the one from the local minio server if enabled 28 - and <literal>config.services.minio.accessKey</literal>. 28 + and `config.services.minio.accessKey`. 29 29 ''; 30 30 }; 31 31 32 32 minioAccessSecret = mkOption { 33 33 type = types.str; 34 - description = '' 34 + description = lib.mdDoc '' 35 35 The value of the Minio access secret. 36 36 It is required in order to connect to the server. 37 37 By default this uses the one from the local minio server if enabled 38 - and <literal>config.services.minio.secretKey</literal>. 38 + and `config.services.minio.secretKey`. 39 39 ''; 40 40 }; 41 41 42 42 minioBucketStats = mkOption { 43 43 type = types.bool; 44 44 default = false; 45 - description = '' 45 + description = lib.mdDoc '' 46 46 Collect statistics about the buckets and files in buckets. 47 47 It requires more computation, use it carefully in case of large buckets.. 48 48 '';
+1 -1
nixos/modules/services/monitoring/prometheus/exporters/modemmanager.nix
··· 11 11 refreshRate = mkOption { 12 12 type = types.str; 13 13 default = "5s"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 How frequently ModemManager will refresh the extended signal quality 16 16 information for each modem. The duration should be specified in seconds 17 17 ("5s"), minutes ("1m"), or hours ("1h").
+5 -5
nixos/modules/services/monitoring/prometheus/exporters/nextcloud.nix
··· 11 11 url = mkOption { 12 12 type = types.str; 13 13 example = "https://domain.tld"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 URL to the Nextcloud serverinfo page. 16 16 Adding the path to the serverinfo API is optional, it defaults 17 - to <literal>/ocs/v2.php/apps/serverinfo/api/v1/info</literal>. 17 + to `/ocs/v2.php/apps/serverinfo/api/v1/info`. 18 18 ''; 19 19 }; 20 20 username = mkOption { 21 21 type = types.str; 22 22 default = "nextcloud-exporter"; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 Username for connecting to Nextcloud. 25 25 Note that this account needs to have admin privileges in Nextcloud. 26 26 ''; ··· 28 28 passwordFile = mkOption { 29 29 type = types.path; 30 30 example = "/path/to/password-file"; 31 - description = '' 31 + description = lib.mdDoc '' 32 32 File containing the password for connecting to Nextcloud. 33 33 Make sure that this file is readable by the exporter user. 34 34 ''; ··· 36 36 timeout = mkOption { 37 37 type = types.str; 38 38 default = "5s"; 39 - description = '' 39 + description = lib.mdDoc '' 40 40 Timeout for getting server info document. 41 41 ''; 42 42 };
+4 -4
nixos/modules/services/monitoring/prometheus/exporters/nginx.nix
··· 11 11 scrapeUri = mkOption { 12 12 type = types.str; 13 13 default = "http://localhost/nginx_status"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Address to access the nginx status page. 16 16 Can be enabled with services.nginx.statusPage = true. 17 17 ''; ··· 19 19 telemetryPath = mkOption { 20 20 type = types.str; 21 21 default = "/metrics"; 22 - description = '' 22 + description = lib.mdDoc '' 23 23 Path under which to expose metrics. 24 24 ''; 25 25 }; 26 26 sslVerify = mkOption { 27 27 type = types.bool; 28 28 default = true; 29 - description = '' 29 + description = lib.mdDoc '' 30 30 Whether to perform certificate verification for https. 31 31 ''; 32 32 }; ··· 37 37 "label1=value1" 38 38 "label2=value2" 39 39 ]; 40 - description = '' 40 + description = lib.mdDoc '' 41 41 A list of constant labels that will be used in every metric. 42 42 ''; 43 43 };
+1 -1
nixos/modules/services/monitoring/prometheus/exporters/nginxlog.nix
··· 24 24 metricsEndpoint = mkOption { 25 25 type = types.str; 26 26 default = "/metrics"; 27 - description = '' 27 + description = lib.mdDoc '' 28 28 Path under which to expose metrics. 29 29 ''; 30 30 };
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/node.nix
··· 12 12 type = types.listOf types.str; 13 13 default = []; 14 14 example = [ "systemd" ]; 15 - description = '' 15 + description = lib.mdDoc '' 16 16 Collectors to enable. The collectors listed here are enabled in addition to the default ones. 17 17 ''; 18 18 }; ··· 20 20 type = types.listOf types.str; 21 21 default = []; 22 22 example = [ "timex" ]; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 Collectors to disable which are enabled by default. 25 25 ''; 26 26 };
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/openldap.nix
··· 40 40 metricsPath = mkOption { 41 41 default = "/metrics"; 42 42 type = types.str; 43 - description = '' 43 + description = lib.mdDoc '' 44 44 URL path where metrics should be exposed. 45 45 ''; 46 46 }; ··· 48 48 default = "30s"; 49 49 type = types.str; 50 50 example = "1m"; 51 - description = '' 51 + description = lib.mdDoc '' 52 52 Scrape interval of the exporter. 53 53 ''; 54 54 };
+3 -3
nixos/modules/services/monitoring/prometheus/exporters/openvpn.nix
··· 9 9 extraOpts = { 10 10 statusPaths = mkOption { 11 11 type = types.listOf types.str; 12 - description = '' 12 + description = lib.mdDoc '' 13 13 Paths to OpenVPN status files. Please configure the OpenVPN option 14 - <literal>status</literal> accordingly. 14 + `status` accordingly. 15 15 ''; 16 16 }; 17 17 telemetryPath = mkOption { 18 18 type = types.str; 19 19 default = "/metrics"; 20 - description = '' 20 + description = lib.mdDoc '' 21 21 Path under which to expose metrics. 22 22 ''; 23 23 };
+6 -6
nixos/modules/services/monitoring/prometheus/exporters/pihole.nix
··· 12 12 type = types.str; 13 13 default = ""; 14 14 example = "580a770cb40511eb85290242ac130003580a770cb40511eb85290242ac130003"; 15 - description = '' 15 + description = lib.mdDoc '' 16 16 pi-hole API token which can be used instead of a password 17 17 ''; 18 18 }; ··· 20 20 type = types.str; 21 21 default = "10s"; 22 22 example = "30s"; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 How often to scrape new data 25 25 ''; 26 26 }; ··· 28 28 type = types.str; 29 29 default = ""; 30 30 example = "password"; 31 - description = '' 31 + description = lib.mdDoc '' 32 32 The password to login into pihole. An api token can be used instead. 33 33 ''; 34 34 }; ··· 36 36 type = types.str; 37 37 default = "pihole"; 38 38 example = "127.0.0.1"; 39 - description = '' 39 + description = lib.mdDoc '' 40 40 Hostname or address where to find the pihole webinterface 41 41 ''; 42 42 }; ··· 44 44 type = types.port; 45 45 default = 80; 46 46 example = 443; 47 - description = '' 47 + description = lib.mdDoc '' 48 48 The port pihole webinterface is reachable on 49 49 ''; 50 50 }; ··· 52 52 type = types.enum [ "http" "https" ]; 53 53 default = "http"; 54 54 example = "https"; 55 - description = '' 55 + description = lib.mdDoc '' 56 56 The protocol which is used to connect to pihole 57 57 ''; 58 58 };
+11 -11
nixos/modules/services/monitoring/prometheus/exporters/postfix.nix
··· 10 10 extraOpts = { 11 11 group = mkOption { 12 12 type = types.str; 13 - description = '' 13 + description = lib.mdDoc '' 14 14 Group under which the postfix exporter shall be run. 15 15 It should match the group that is allowed to access the 16 - <literal>showq</literal> socket in the <literal>queue/public/</literal> directory. 17 - Defaults to <literal>services.postfix.setgidGroup</literal> when postfix is enabled. 16 + `showq` socket in the `queue/public/` directory. 17 + Defaults to `services.postfix.setgidGroup` when postfix is enabled. 18 18 ''; 19 19 }; 20 20 telemetryPath = mkOption { 21 21 type = types.str; 22 22 default = "/metrics"; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 Path under which to expose metrics. 25 25 ''; 26 26 }; ··· 28 28 type = types.path; 29 29 default = "/var/log/postfix_exporter_input.log"; 30 30 example = "/var/log/mail.log"; 31 - description = '' 31 + description = lib.mdDoc '' 32 32 Path where Postfix writes log entries. 33 33 This file will be truncated by this exporter! 34 34 ''; ··· 37 37 type = types.path; 38 38 default = "/var/lib/postfix/queue/public/showq"; 39 39 example = "/var/spool/postfix/public/showq"; 40 - description = '' 40 + description = lib.mdDoc '' 41 41 Path where Postfix places its showq socket. 42 42 ''; 43 43 }; ··· 45 45 enable = mkOption { 46 46 type = types.bool; 47 47 default = true; 48 - description = '' 48 + description = lib.mdDoc '' 49 49 Whether to enable reading metrics from the systemd journal instead of from a logfile 50 50 ''; 51 51 }; 52 52 unit = mkOption { 53 53 type = types.str; 54 54 default = "postfix.service"; 55 - description = '' 55 + description = lib.mdDoc '' 56 56 Name of the postfix systemd unit. 57 57 ''; 58 58 }; 59 59 slice = mkOption { 60 60 type = types.nullOr types.str; 61 61 default = null; 62 - description = '' 62 + description = lib.mdDoc '' 63 63 Name of the postfix systemd slice. 64 - This overrides the <option>systemd.unit</option>. 64 + This overrides the {option}`systemd.unit`. 65 65 ''; 66 66 }; 67 67 journalPath = mkOption { 68 68 type = types.nullOr types.path; 69 69 default = null; 70 - description = '' 70 + description = lib.mdDoc '' 71 71 Path to the systemd journal. 72 72 ''; 73 73 };
+3 -3
nixos/modules/services/monitoring/prometheus/exporters/postgres.nix
··· 11 11 telemetryPath = mkOption { 12 12 type = types.str; 13 13 default = "/metrics"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Path under which to expose metrics. 16 16 ''; 17 17 }; ··· 19 19 type = types.str; 20 20 default = "user=postgres database=postgres host=/run/postgresql sslmode=disable"; 21 21 example = "postgresql://username:password@localhost:5432/postgres?sslmode=disable"; 22 - description = '' 22 + description = lib.mdDoc '' 23 23 Accepts PostgreSQL URI form and key=value form arguments. 24 24 ''; 25 25 }; 26 26 runAsLocalSuperUser = mkOption { 27 27 type = types.bool; 28 28 default = false; 29 - description = '' 29 + description = lib.mdDoc '' 30 30 Whether to run the exporter as the local 'postgres' super user. 31 31 ''; 32 32 };
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/process.nix
··· 18 18 { name = "{{.Matches.Wrapped}} {{ .Matches.Args }}"; cmdline = [ "^/nix/store[^ ]*/(?P<Wrapped>[^ /]*) (?P<Args>.*)" ]; } 19 19 ] 20 20 ''; 21 - description = '' 21 + description = lib.mdDoc '' 22 22 All settings expressed as an Nix attrset. 23 23 24 24 Check the official documentation for the corresponding YAML 25 - settings that can all be used here: <link xlink:href="https://github.com/ncabatoff/process-exporter"/> 25 + settings that can all be used here: <https://github.com/ncabatoff/process-exporter> 26 26 ''; 27 27 }; 28 28 };
+9 -9
nixos/modules/services/monitoring/prometheus/exporters/pve.nix
··· 20 20 default = pkgs.prometheus-pve-exporter; 21 21 defaultText = literalExpression "pkgs.prometheus-pve-exporter"; 22 22 example = literalExpression "pkgs.prometheus-pve-exporter"; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 The package to use for prometheus-pve-exporter 25 25 ''; 26 26 }; ··· 29 29 type = with types; nullOr path; 30 30 default = null; 31 31 example = "/etc/prometheus-pve-exporter/pve.env"; 32 - description = '' 32 + description = lib.mdDoc '' 33 33 Path to the service's environment file. This path can either be a computed path in /nix/store or a path in the local filesystem. 34 34 35 35 The environment file should NOT be stored in /nix/store as it contains passwords and/or keys in plain text. ··· 42 42 type = with types; nullOr path; 43 43 default = null; 44 44 example = "/etc/prometheus-pve-exporter/pve.yml"; 45 - description = '' 45 + description = lib.mdDoc '' 46 46 Path to the service's config file. This path can either be a computed path in /nix/store or a path in the local filesystem. 47 47 48 48 The config file should NOT be stored in /nix/store as it will contain passwords and/or keys in plain text. ··· 57 57 status = mkOption { 58 58 type = types.bool; 59 59 default = true; 60 - description = '' 60 + description = lib.mdDoc '' 61 61 Collect Node/VM/CT status 62 62 ''; 63 63 }; 64 64 version = mkOption { 65 65 type = types.bool; 66 66 default = true; 67 - description = '' 67 + description = lib.mdDoc '' 68 68 Collect PVE version info 69 69 ''; 70 70 }; 71 71 node = mkOption { 72 72 type = types.bool; 73 73 default = true; 74 - description = '' 74 + description = lib.mdDoc '' 75 75 Collect PVE node info 76 76 ''; 77 77 }; 78 78 cluster = mkOption { 79 79 type = types.bool; 80 80 default = true; 81 - description = '' 81 + description = lib.mdDoc '' 82 82 Collect PVE cluster info 83 83 ''; 84 84 }; 85 85 resources = mkOption { 86 86 type = types.bool; 87 87 default = true; 88 - description = '' 88 + description = lib.mdDoc '' 89 89 Collect PVE resources info 90 90 ''; 91 91 }; 92 92 config = mkOption { 93 93 type = types.bool; 94 94 default = true; 95 - description = '' 95 + description = lib.mdDoc '' 96 96 Collect PVE onboot status 97 97 ''; 98 98 };
+4 -4
nixos/modules/services/monitoring/prometheus/exporters/py-air-control.nix
··· 14 14 deviceHostname = mkOption { 15 15 type = types.str; 16 16 example = "192.168.1.123"; 17 - description = '' 17 + description = lib.mdDoc '' 18 18 The hostname of the air purification device from which to scrape the metrics. 19 19 ''; 20 20 }; 21 21 protocol = mkOption { 22 22 type = types.str; 23 23 default = "http"; 24 - description = '' 24 + description = lib.mdDoc '' 25 25 The protocol to use when communicating with the air purification device. 26 26 Available: [http, coap, plain_coap] 27 27 ''; ··· 29 29 stateDir = mkOption { 30 30 type = types.str; 31 31 default = "prometheus-py-air-control-exporter"; 32 - description = '' 33 - Directory below <literal>/var/lib</literal> to store runtime data. 32 + description = lib.mdDoc '' 33 + Directory below `/var/lib` to store runtime data. 34 34 This directory will be created automatically using systemd's StateDirectory mechanism. 35 35 ''; 36 36 };
+1 -1
nixos/modules/services/monitoring/prometheus/exporters/rspamd.nix
··· 69 69 custom_label = "some_value"; 70 70 } 71 71 ''; 72 - description = "Set of labels added to each metric."; 72 + description = lib.mdDoc "Set of labels added to each metric."; 73 73 }; 74 74 }; 75 75 serviceOpts.serviceConfig.ExecStart = ''
+6 -6
nixos/modules/services/monitoring/prometheus/exporters/rtl_433.nix
··· 12 12 options = { 13 13 name = lib.mkOption { 14 14 type = str; 15 - description = "Name to match."; 15 + description = lib.mdDoc "Name to match."; 16 16 }; 17 17 "${field}" = lib.mkOption { 18 18 type = int; ··· 20 20 }; 21 21 location = lib.mkOption { 22 22 type = str; 23 - description = "Location to match."; 23 + description = lib.mdDoc "Location to match."; 24 24 }; 25 25 }; 26 26 }); ··· 30 30 type = lib.types.str; 31 31 default = "-C si"; 32 32 example = "-C si -R 19"; 33 - description = '' 33 + description = lib.mdDoc '' 34 34 Flags passed verbatim to rtl_433 binary. 35 - Having <literal>-C si</literal> (the default) is recommended since only Celsius temperatures are parsed. 35 + Having `-C si` (the default) is recommended since only Celsius temperatures are parsed. 36 36 ''; 37 37 }; 38 38 channels = lib.mkOption { ··· 41 41 example = [ 42 42 { name = "Acurite"; channel = 6543; location = "Kitchen"; } 43 43 ]; 44 - description = '' 44 + description = lib.mdDoc '' 45 45 List of channel matchers to export. 46 46 ''; 47 47 }; ··· 51 51 example = [ 52 52 { name = "Nexus"; id = 1; location = "Bedroom"; } 53 53 ]; 54 - description = '' 54 + description = lib.mdDoc '' 55 55 List of ID matchers to export. 56 56 ''; 57 57 };
+5 -5
nixos/modules/services/monitoring/prometheus/exporters/script.nix
··· 15 15 name = mkOption { 16 16 type = str; 17 17 example = "sleep"; 18 - description = "Name of the script."; 18 + description = lib.mdDoc "Name of the script."; 19 19 }; 20 20 script = mkOption { 21 21 type = str; 22 22 example = "sleep 5"; 23 - description = "Shell script to execute when metrics are requested."; 23 + description = lib.mdDoc "Shell script to execute when metrics are requested."; 24 24 }; 25 25 timeout = mkOption { 26 26 type = nullOr int; 27 27 default = null; 28 28 example = 60; 29 - description = "Optional timeout for the script in seconds."; 29 + description = lib.mdDoc "Optional timeout for the script in seconds."; 30 30 }; 31 31 }; 32 32 }); ··· 37 37 ]; 38 38 } 39 39 ''; 40 - description = '' 40 + description = lib.mdDoc '' 41 41 All settings expressed as an Nix attrset. 42 42 43 43 Check the official documentation for the corresponding YAML 44 - settings that can all be used here: <link xlink:href="https://github.com/adhocteam/script_exporter#sample-configuration"/> 44 + settings that can all be used here: <https://github.com/adhocteam/script_exporter#sample-configuration> 45 45 ''; 46 46 }; 47 47 };
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix
··· 24 24 example = literalExpression '' 25 25 [ "/dev/sda", "/dev/nvme0n1" ]; 26 26 ''; 27 - description = '' 27 + description = lib.mdDoc '' 28 28 Paths to the disks that will be monitored. Will autodiscover 29 29 all disks if none given. 30 30 ''; ··· 33 33 type = types.str; 34 34 default = "60s"; 35 35 example = "2m"; 36 - description = '' 36 + description = lib.mdDoc '' 37 37 Interval that limits how often a disk can be queried. 38 38 ''; 39 39 };
+4 -4
nixos/modules/services/monitoring/prometheus/exporters/smokeping.nix
··· 17 17 telemetryPath = mkOption { 18 18 type = types.str; 19 19 default = "/metrics"; 20 - description = '' 20 + description = lib.mdDoc '' 21 21 Path under which to expose metrics. 22 22 ''; 23 23 }; 24 24 pingInterval = mkOption { 25 25 type = goDuration; 26 26 default = "1s"; 27 - description = '' 27 + description = lib.mdDoc '' 28 28 Interval between pings. 29 29 ''; 30 30 }; 31 31 buckets = mkOption { 32 32 type = types.commas; 33 33 default = "5e-05,0.0001,0.0002,0.0004,0.0008,0.0016,0.0032,0.0064,0.0128,0.0256,0.0512,0.1024,0.2048,0.4096,0.8192,1.6384,3.2768,6.5536,13.1072,26.2144"; 34 - description = '' 34 + description = lib.mdDoc '' 35 35 List of buckets to use for the response duration histogram. 36 36 ''; 37 37 }; 38 38 hosts = mkOption { 39 39 type = with types; listOf str; 40 - description = '' 40 + description = lib.mdDoc '' 41 41 List of endpoints to probe. 42 42 ''; 43 43 };
+4 -4
nixos/modules/services/monitoring/prometheus/exporters/snmp.nix
··· 11 11 configurationPath = mkOption { 12 12 type = types.nullOr types.path; 13 13 default = null; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Path to a snmp exporter configuration file. Mutually exclusive with 'configuration' option. 16 16 ''; 17 17 example = literalExpression "./snmp.yml"; ··· 20 20 configuration = mkOption { 21 21 type = types.nullOr types.attrs; 22 22 default = null; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 Snmp exporter configuration as nix attribute set. Mutually exclusive with 'configurationPath' option. 25 25 ''; 26 26 example = { ··· 36 36 logFormat = mkOption { 37 37 type = types.enum ["logfmt" "json"]; 38 38 default = "logfmt"; 39 - description = '' 39 + description = lib.mdDoc '' 40 40 Output format of log messages. 41 41 ''; 42 42 }; ··· 44 44 logLevel = mkOption { 45 45 type = types.enum ["debug" "info" "warn" "error"]; 46 46 default = "info"; 47 - description = '' 47 + description = lib.mdDoc '' 48 48 Only log messages with the given severity or above. 49 49 ''; 50 50 };
+12 -12
nixos/modules/services/monitoring/prometheus/exporters/sql.nix
··· 7 7 jobs = mkOption { 8 8 type = attrsOf (submodule jobOptions); 9 9 default = { }; 10 - description = "An attrset of metrics scraping jobs to run."; 10 + description = lib.mdDoc "An attrset of metrics scraping jobs to run."; 11 11 }; 12 12 }; 13 13 }; ··· 15 15 options = with types; { 16 16 interval = mkOption { 17 17 type = str; 18 - description = '' 18 + description = lib.mdDoc '' 19 19 How often to run this job, specified in 20 - <link xlink:href="https://golang.org/pkg/time/#ParseDuration">Go duration</link> format. 20 + [Go duration](https://golang.org/pkg/time/#ParseDuration) format. 21 21 ''; 22 22 }; 23 23 connections = mkOption { 24 24 type = listOf str; 25 - description = "A list of connection strings of the SQL servers to scrape metrics from"; 25 + description = lib.mdDoc "A list of connection strings of the SQL servers to scrape metrics from"; 26 26 }; 27 27 startupSql = mkOption { 28 28 type = listOf str; 29 29 default = []; 30 - description = "A list of SQL statements to execute once after making a connection."; 30 + description = lib.mdDoc "A list of SQL statements to execute once after making a connection."; 31 31 }; 32 32 queries = mkOption { 33 33 type = attrsOf (submodule queryOptions); 34 - description = "SQL queries to run."; 34 + description = lib.mdDoc "SQL queries to run."; 35 35 }; 36 36 }; 37 37 }; ··· 40 40 help = mkOption { 41 41 type = nullOr str; 42 42 default = null; 43 - description = "A human-readable description of this metric."; 43 + description = lib.mdDoc "A human-readable description of this metric."; 44 44 }; 45 45 labels = mkOption { 46 46 type = listOf str; 47 47 default = [ ]; 48 - description = "A set of columns that will be used as Prometheus labels."; 48 + description = lib.mdDoc "A set of columns that will be used as Prometheus labels."; 49 49 }; 50 50 query = mkOption { 51 51 type = str; 52 - description = "The SQL query to run."; 52 + description = lib.mdDoc "The SQL query to run."; 53 53 }; 54 54 values = mkOption { 55 55 type = listOf str; 56 - description = "A set of columns that will be used as values of this metric."; 56 + description = lib.mdDoc "A set of columns that will be used as values of this metric."; 57 57 }; 58 58 }; 59 59 }; ··· 77 77 configFile = mkOption { 78 78 type = with types; nullOr path; 79 79 default = null; 80 - description = '' 80 + description = lib.mdDoc '' 81 81 Path to configuration file. 82 82 ''; 83 83 }; 84 84 configuration = mkOption { 85 85 type = with types; nullOr (submodule cfgOptions); 86 86 default = null; 87 - description = '' 87 + description = lib.mdDoc '' 88 88 Exporter configuration as nix attribute set. Mutually exclusive with 'configFile' option. 89 89 ''; 90 90 };
+1 -1
nixos/modules/services/monitoring/prometheus/exporters/surfboard.nix
··· 11 11 modemAddress = mkOption { 12 12 type = types.str; 13 13 default = "192.168.100.1"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 The hostname or IP of the cable modem. 16 16 ''; 17 17 };
+2 -2
nixos/modules/services/monitoring/prometheus/exporters/tor.nix
··· 11 11 torControlAddress = mkOption { 12 12 type = types.str; 13 13 default = "127.0.0.1"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Tor control IP address or hostname. 16 16 ''; 17 17 }; ··· 19 19 torControlPort = mkOption { 20 20 type = types.int; 21 21 default = 9051; 22 - description = '' 22 + description = lib.mdDoc '' 23 23 Tor control port. 24 24 ''; 25 25 };
+3 -3
nixos/modules/services/monitoring/prometheus/exporters/unbound.nix
··· 12 12 # TODO: add shm when upstream implemented it 13 13 type = types.enum [ "tcp" "uds" ]; 14 14 default = "uds"; 15 - description = '' 15 + description = lib.mdDoc '' 16 16 Which methods the exporter uses to get the information from unbound. 17 17 ''; 18 18 }; ··· 20 20 telemetryPath = mkOption { 21 21 type = types.str; 22 22 default = "/metrics"; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 Path under which to expose metrics. 25 25 ''; 26 26 }; ··· 29 29 type = types.nullOr types.str; 30 30 default = null; 31 31 example = "/run/unbound/unbound.socket"; 32 - description = '' 32 + description = lib.mdDoc '' 33 33 Path to the unbound socket for uds mode or the control interface port for tcp mode. 34 34 35 35 Example:
+5 -5
nixos/modules/services/monitoring/prometheus/exporters/unifi.nix
··· 11 11 unifiAddress = mkOption { 12 12 type = types.str; 13 13 example = "https://10.0.0.1:8443"; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 URL of the UniFi Controller API. 16 16 ''; 17 17 }; ··· 19 19 unifiInsecure = mkOption { 20 20 type = types.bool; 21 21 default = false; 22 - description = '' 22 + description = lib.mdDoc '' 23 23 If enabled skip the verification of the TLS certificate of the UniFi Controller API. 24 24 Use with caution. 25 25 ''; ··· 28 28 unifiUsername = mkOption { 29 29 type = types.str; 30 30 example = "ReadOnlyUser"; 31 - description = '' 31 + description = lib.mdDoc '' 32 32 username for authentication against UniFi Controller API. 33 33 ''; 34 34 }; 35 35 36 36 unifiPassword = mkOption { 37 37 type = types.str; 38 - description = '' 38 + description = lib.mdDoc '' 39 39 Password for authentication against UniFi Controller API. 40 40 ''; 41 41 }; ··· 44 44 type = types.str; 45 45 default = "5s"; 46 46 example = "2m"; 47 - description = '' 47 + description = lib.mdDoc '' 48 48 Timeout including unit for UniFi Controller API requests. 49 49 ''; 50 50 };
+8 -8
nixos/modules/services/monitoring/prometheus/exporters/varnish.nix
··· 11 11 noExit = mkOption { 12 12 type = types.bool; 13 13 default = false; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Do not exit server on Varnish scrape errors. 16 16 ''; 17 17 }; 18 18 withGoMetrics = mkOption { 19 19 type = types.bool; 20 20 default = false; 21 - description = '' 21 + description = lib.mdDoc '' 22 22 Export go runtime and http handler metrics. 23 23 ''; 24 24 }; 25 25 verbose = mkOption { 26 26 type = types.bool; 27 27 default = false; 28 - description = '' 28 + description = lib.mdDoc '' 29 29 Enable verbose logging. 30 30 ''; 31 31 }; 32 32 raw = mkOption { 33 33 type = types.bool; 34 34 default = false; 35 - description = '' 35 + description = lib.mdDoc '' 36 36 Enable raw stdout logging without timestamps. 37 37 ''; 38 38 }; 39 39 varnishStatPath = mkOption { 40 40 type = types.str; 41 41 default = "varnishstat"; 42 - description = '' 42 + description = lib.mdDoc '' 43 43 Path to varnishstat. 44 44 ''; 45 45 }; ··· 47 47 type = types.nullOr types.str; 48 48 default = config.services.varnish.stateDir; 49 49 defaultText = lib.literalExpression "config.services.varnish.stateDir"; 50 - description = '' 50 + description = lib.mdDoc '' 51 51 varnishstat -n value. 52 52 ''; 53 53 }; 54 54 healthPath = mkOption { 55 55 type = types.nullOr types.str; 56 56 default = null; 57 - description = '' 57 + description = lib.mdDoc '' 58 58 Path under which to expose healthcheck. Disabled unless configured. 59 59 ''; 60 60 }; 61 61 telemetryPath = mkOption { 62 62 type = types.str; 63 63 default = "/metrics"; 64 - description = '' 64 + description = lib.mdDoc '' 65 65 Path under which to expose metrics. 66 66 ''; 67 67 };
+10 -10
nixos/modules/services/monitoring/prometheus/exporters/wireguard.nix
··· 17 17 type = with types; nullOr (either path str); 18 18 default = null; 19 19 20 - description = '' 20 + description = lib.mdDoc '' 21 21 Path to the Wireguard Config to 22 - <link xlink:href="https://github.com/MindFlavor/prometheus_wireguard_exporter/tree/2.0.0#usage">add the peer's name to the stats of a peer</link>. 22 + [add the peer's name to the stats of a peer](https://github.com/MindFlavor/prometheus_wireguard_exporter/tree/2.0.0#usage). 23 23 24 - Please note that <literal>networking.wg-quick</literal> is required for this feature 25 - as <literal>networking.wireguard</literal> uses 26 - <citerefentry><refentrytitle>wg</refentrytitle><manvolnum>8</manvolnum></citerefentry> 24 + Please note that `networking.wg-quick` is required for this feature 25 + as `networking.wireguard` uses 26 + {manpage}`wg(8)` 27 27 to set the peers up. 28 28 ''; 29 29 }; ··· 31 31 singleSubnetPerField = mkOption { 32 32 type = types.bool; 33 33 default = false; 34 - description = '' 34 + description = lib.mdDoc '' 35 35 By default, all allowed IPs and subnets are comma-separated in the 36 - <literal>allowed_ips</literal> field. With this option enabled, 37 - a single IP and subnet will be listed in fields like <literal>allowed_ip_0</literal>, 38 - <literal>allowed_ip_1</literal> and so on. 36 + `allowed_ips` field. With this option enabled, 37 + a single IP and subnet will be listed in fields like `allowed_ip_0`, 38 + `allowed_ip_1` and so on. 39 39 ''; 40 40 }; 41 41 42 42 withRemoteIp = mkOption { 43 43 type = types.bool; 44 44 default = false; 45 - description = '' 45 + description = lib.mdDoc '' 46 46 Whether or not the remote IP of a WireGuard peer should be exposed via prometheus. 47 47 ''; 48 48 };
+4 -4
nixos/modules/services/network-filesystems/netatalk.nix
··· 32 32 "read only" = true; 33 33 }; 34 34 }; 35 - description = '' 35 + description = lib.mdDoc '' 36 36 Configuration for Netatalk. See 37 - <citerefentry><refentrytitle>afp.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 37 + {manpage}`afp.conf(5)`. 38 38 ''; 39 39 }; 40 40 41 41 extmap = mkOption { 42 42 type = types.lines; 43 43 default = ""; 44 - description = '' 44 + description = lib.mdDoc '' 45 45 File name extension mappings. 46 - See <citerefentry><refentrytitle>extmap.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. for more information. 46 + See {manpage}`extmap.conf(5)`. for more information. 47 47 ''; 48 48 }; 49 49
+5 -5
nixos/modules/services/network-filesystems/nfsd.nix
··· 42 42 exports = mkOption { 43 43 type = types.lines; 44 44 default = ""; 45 - description = '' 45 + description = lib.mdDoc '' 46 46 Contents of the /etc/exports file. See 47 - <citerefentry><refentrytitle>exports</refentrytitle><manvolnum>5</manvolnum></citerefentry> for the format. 47 + {manpage}`exports(5)` for the format. 48 48 ''; 49 49 }; 50 50 51 51 hostName = mkOption { 52 52 type = types.nullOr types.str; 53 53 default = null; 54 - description = '' 54 + description = lib.mdDoc '' 55 55 Hostname or address on which NFS requests will be accepted. 56 - Default is all. See the <option>-H</option> option in 57 - <citerefentry><refentrytitle>nfsd</refentrytitle><manvolnum>8</manvolnum></citerefentry>. 56 + Default is all. See the {option}`-H` option in 57 + {manpage}`nfsd(8)`. 58 58 ''; 59 59 }; 60 60
+25 -25
nixos/modules/services/network-filesystems/openafs/client.nix
··· 33 33 enable = mkOption { 34 34 default = false; 35 35 type = types.bool; 36 - description = "Whether to enable the OpenAFS client."; 36 + description = lib.mdDoc "Whether to enable the OpenAFS client."; 37 37 }; 38 38 39 39 afsdb = mkOption { 40 40 default = true; 41 41 type = types.bool; 42 - description = "Resolve cells via AFSDB DNS records."; 42 + description = lib.mdDoc "Resolve cells via AFSDB DNS records."; 43 43 }; 44 44 45 45 cellName = mkOption { 46 46 default = ""; 47 47 type = types.str; 48 - description = "Cell name."; 48 + description = lib.mdDoc "Cell name."; 49 49 example = "grand.central.org"; 50 50 }; 51 51 52 52 cellServDB = mkOption { 53 53 default = []; 54 54 type = with types; listOf (submodule { options = cellServDBConfig; }); 55 - description = '' 55 + description = lib.mdDoc '' 56 56 This cell's database server records, added to the global 57 57 CellServDB. See CellServDB(5) man page for syntax. Ignored when 58 - <literal>afsdb</literal> is set to <literal>true</literal>. 58 + `afsdb` is set to `true`. 59 59 ''; 60 60 example = [ 61 61 { ip = "1.2.3.4"; dnsname = "first.afsdb.server.dns.fqdn.org"; } ··· 67 67 blocks = mkOption { 68 68 default = 100000; 69 69 type = types.int; 70 - description = "Cache size in 1KB blocks."; 70 + description = lib.mdDoc "Cache size in 1KB blocks."; 71 71 }; 72 72 73 73 chunksize = mkOption { 74 74 default = 0; 75 75 type = types.ints.between 0 30; 76 - description = '' 76 + description = lib.mdDoc '' 77 77 Size of each cache chunk given in powers of 78 - 2. <literal>0</literal> resets the chunk size to its default 78 + 2. `0` resets the chunk size to its default 79 79 values (13 (8 KB) for memcache, 18-20 (256 KB to 1 MB) for 80 80 diskcache). Maximum value is 30. Important performance 81 81 parameter. Set to higher values when dealing with large files. ··· 85 85 directory = mkOption { 86 86 default = "/var/cache/openafs"; 87 87 type = types.str; 88 - description = "Cache directory."; 88 + description = lib.mdDoc "Cache directory."; 89 89 }; 90 90 91 91 diskless = mkOption { 92 92 default = false; 93 93 type = types.bool; 94 - description = '' 94 + description = lib.mdDoc '' 95 95 Use in-memory cache for diskless machines. Has no real 96 96 performance benefit anymore. 97 97 ''; ··· 101 101 crypt = mkOption { 102 102 default = true; 103 103 type = types.bool; 104 - description = "Whether to enable (weak) protocol encryption."; 104 + description = lib.mdDoc "Whether to enable (weak) protocol encryption."; 105 105 }; 106 106 107 107 daemons = mkOption { 108 108 default = 2; 109 109 type = types.int; 110 - description = '' 110 + description = lib.mdDoc '' 111 111 Number of daemons to serve user requests. Numbers higher than 6 112 112 usually do no increase performance. Default is sufficient for up 113 113 to five concurrent users. ··· 117 117 fakestat = mkOption { 118 118 default = false; 119 119 type = types.bool; 120 - description = '' 121 - Return fake data on stat() calls. If <literal>true</literal>, 122 - always do so. If <literal>false</literal>, only do so for 120 + description = lib.mdDoc '' 121 + Return fake data on stat() calls. If `true`, 122 + always do so. If `false`, only do so for 123 123 cross-cell mounts (as these are potentially expensive). 124 124 ''; 125 125 }; ··· 127 127 inumcalc = mkOption { 128 128 default = "compat"; 129 129 type = types.strMatching "compat|md5"; 130 - description = '' 131 - Inode calculation method. <literal>compat</literal> is 132 - computationally less expensive, but <literal>md5</literal> greatly 130 + description = lib.mdDoc '' 131 + Inode calculation method. `compat` is 132 + computationally less expensive, but `md5` greatly 133 133 reduces the likelihood of inode collisions in larger scenarios 134 134 involving multiple cells mounted into one AFS space. 135 135 ''; ··· 138 138 mountPoint = mkOption { 139 139 default = "/afs"; 140 140 type = types.str; 141 - description = '' 141 + description = lib.mdDoc '' 142 142 Mountpoint of the AFS file tree, conventionally 143 - <literal>/afs</literal>. When set to a different value, only 143 + `/afs`. When set to a different value, only 144 144 cross-cells that use the same value can be accessed. 145 145 ''; 146 146 }; ··· 150 150 default = config.boot.kernelPackages.openafs; 151 151 defaultText = literalExpression "config.boot.kernelPackages.openafs"; 152 152 type = types.package; 153 - description = "OpenAFS kernel module package. MUST match the userland package!"; 153 + description = lib.mdDoc "OpenAFS kernel module package. MUST match the userland package!"; 154 154 }; 155 155 programs = mkOption { 156 156 default = getBin pkgs.openafs; 157 157 defaultText = literalExpression "getBin pkgs.openafs"; 158 158 type = types.package; 159 - description = "OpenAFS programs package. MUST match the kernel module package!"; 159 + description = lib.mdDoc "OpenAFS programs package. MUST match the kernel module package!"; 160 160 }; 161 161 }; 162 162 163 163 sparse = mkOption { 164 164 default = true; 165 165 type = types.bool; 166 - description = "Minimal cell list in /afs."; 166 + description = lib.mdDoc "Minimal cell list in /afs."; 167 167 }; 168 168 169 169 startDisconnected = mkOption { 170 170 default = false; 171 171 type = types.bool; 172 - description = '' 172 + description = lib.mdDoc '' 173 173 Start up in disconnected mode. You need to execute 174 - <literal>fs disco online</literal> (as root) to switch to 174 + `fs disco online` (as root) to switch to 175 175 connected mode. Useful for roaming devices. 176 176 ''; 177 177 };
+2 -2
nixos/modules/services/network-filesystems/openafs/lib.nix
··· 17 17 type = types.str; 18 18 default = ""; 19 19 example = "1.2.3.4"; 20 - description = "IP Address of a database server"; 20 + description = lib.mdDoc "IP Address of a database server"; 21 21 }; 22 22 dnsname = mkOption { 23 23 type = types.str; 24 24 default = ""; 25 25 example = "afs.example.org"; 26 - description = "DNS full-qualified domain name of a database server"; 26 + description = lib.mdDoc "DNS full-qualified domain name of a database server"; 27 27 }; 28 28 }; 29 29
+22 -22
nixos/modules/services/network-filesystems/openafs/server.nix
··· 49 49 enable = mkOption { 50 50 default = false; 51 51 type = types.bool; 52 - description = '' 52 + description = lib.mdDoc '' 53 53 Whether to enable the OpenAFS server. An OpenAFS server needs a 54 54 complex setup. So, be aware that enabling this service and setting 55 55 some options does not give you a turn-key-ready solution. You need 56 56 at least a running Kerberos 5 setup, as OpenAFS relies on it for 57 57 authentication. See the Guide "QuickStartUnix" coming with 58 - <literal>pkgs.openafs.doc</literal> for complete setup 58 + `pkgs.openafs.doc` for complete setup 59 59 instructions. 60 60 ''; 61 61 }; ··· 63 63 advertisedAddresses = mkOption { 64 64 type = types.listOf types.str; 65 65 default = []; 66 - description = "List of IP addresses this server is advertised under. See NetInfo(5)"; 66 + description = lib.mdDoc "List of IP addresses this server is advertised under. See NetInfo(5)"; 67 67 }; 68 68 69 69 cellName = mkOption { 70 70 default = ""; 71 71 type = types.str; 72 - description = "Cell name, this server will serve."; 72 + description = lib.mdDoc "Cell name, this server will serve."; 73 73 example = "grand.central.org"; 74 74 }; 75 75 76 76 cellServDB = mkOption { 77 77 default = []; 78 78 type = with types; listOf (submodule [ { options = cellServDBConfig;} ]); 79 - description = "Definition of all cell-local database server machines."; 79 + description = lib.mdDoc "Definition of all cell-local database server machines."; 80 80 }; 81 81 82 82 package = mkOption { 83 83 default = pkgs.openafs.server or pkgs.openafs; 84 84 defaultText = literalExpression "pkgs.openafs.server or pkgs.openafs"; 85 85 type = types.package; 86 - description = "OpenAFS package for the server binaries"; 86 + description = lib.mdDoc "OpenAFS package for the server binaries"; 87 87 }; 88 88 89 89 roles = { ··· 91 91 enable = mkOption { 92 92 default = true; 93 93 type = types.bool; 94 - description = "Fileserver role, serves files and volumes from its local storage."; 94 + description = lib.mdDoc "Fileserver role, serves files and volumes from its local storage."; 95 95 }; 96 96 97 97 fileserverArgs = mkOption { 98 98 default = "-vattachpar 128 -vhashsize 11 -L -rxpck 400 -cb 1000000"; 99 99 type = types.str; 100 - description = "Arguments to the dafileserver process. See its man page."; 100 + description = lib.mdDoc "Arguments to the dafileserver process. See its man page."; 101 101 }; 102 102 103 103 volserverArgs = mkOption { 104 104 default = ""; 105 105 type = types.str; 106 - description = "Arguments to the davolserver process. See its man page."; 106 + description = lib.mdDoc "Arguments to the davolserver process. See its man page."; 107 107 example = "-sync never"; 108 108 }; 109 109 110 110 salvageserverArgs = mkOption { 111 111 default = ""; 112 112 type = types.str; 113 - description = "Arguments to the salvageserver process. See its man page."; 113 + description = lib.mdDoc "Arguments to the salvageserver process. See its man page."; 114 114 example = "-showlog"; 115 115 }; 116 116 117 117 salvagerArgs = mkOption { 118 118 default = ""; 119 119 type = types.str; 120 - description = "Arguments to the dasalvager process. See its man page."; 120 + description = lib.mdDoc "Arguments to the dasalvager process. See its man page."; 121 121 example = "-showlog -showmounts"; 122 122 }; 123 123 }; ··· 126 126 enable = mkOption { 127 127 default = true; 128 128 type = types.bool; 129 - description = '' 129 + description = lib.mdDoc '' 130 130 Database server role, maintains the Volume Location Database, 131 131 Protection Database (and Backup Database, see 132 - <literal>backup</literal> role). There can be multiple 132 + `backup` role). There can be multiple 133 133 servers in the database role for replication, which then need 134 134 reliable network connection to each other. 135 135 ··· 141 141 vlserverArgs = mkOption { 142 142 default = ""; 143 143 type = types.str; 144 - description = "Arguments to the vlserver process. See its man page."; 144 + description = lib.mdDoc "Arguments to the vlserver process. See its man page."; 145 145 example = "-rxbind"; 146 146 }; 147 147 148 148 ptserverArgs = mkOption { 149 149 default = ""; 150 150 type = types.str; 151 - description = "Arguments to the ptserver process. See its man page."; 151 + description = lib.mdDoc "Arguments to the ptserver process. See its man page."; 152 152 example = "-restricted -default_access S---- S-M---"; 153 153 }; 154 154 }; ··· 157 157 enable = mkOption { 158 158 default = false; 159 159 type = types.bool; 160 - description = '' 160 + description = lib.mdDoc '' 161 161 Backup server role. Use in conjunction with the 162 - <literal>database</literal> role to maintain the Backup 162 + `database` role to maintain the Backup 163 163 Database. Normally only used in conjunction with tape storage 164 164 or IBM's Tivoli Storage Manager. 165 165 ''; ··· 168 168 buserverArgs = mkOption { 169 169 default = ""; 170 170 type = types.str; 171 - description = "Arguments to the buserver process. See its man page."; 171 + description = lib.mdDoc "Arguments to the buserver process. See its man page."; 172 172 example = "-p 8"; 173 173 }; 174 174 175 175 cellServDB = mkOption { 176 176 default = []; 177 177 type = with types; listOf (submodule [ { options = cellServDBConfig;} ]); 178 - description = '' 178 + description = lib.mdDoc '' 179 179 Definition of all cell-local backup database server machines. 180 180 Use this when your cell uses less backup database servers than 181 181 other database server machines. ··· 187 187 dottedPrincipals= mkOption { 188 188 default = false; 189 189 type = types.bool; 190 - description = '' 190 + description = lib.mdDoc '' 191 191 If enabled, allow principal names containing (.) dots. Enabling 192 192 this has security implications! 193 193 ''; ··· 196 196 udpPacketSize = mkOption { 197 197 default = 1310720; 198 198 type = types.int; 199 - description = '' 199 + description = lib.mdDoc '' 200 200 UDP packet size to use in Bytes. Higher values can speed up 201 201 communications. The default of 1 MB is a sufficient in most 202 202 cases. Make sure to increase the kernel's UDP buffer size 203 - accordingly via <literal>net.core(w|r|opt)mem_max</literal> 203 + accordingly via `net.core(w|r|opt)mem_max` 204 204 sysctl. 205 205 ''; 206 206 };
+2 -2
nixos/modules/services/network-filesystems/rsyncd.nix
··· 39 39 "secrets file" = "/etc/rsyncd.secrets"; 40 40 }; 41 41 }; 42 - description = '' 42 + description = lib.mdDoc '' 43 43 Configuration for rsyncd. See 44 - <citerefentry><refentrytitle>rsyncd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 44 + {manpage}`rsyncd.conf(5)`. 45 45 ''; 46 46 }; 47 47
+2 -2
nixos/modules/services/network-filesystems/webdav.nix
··· 67 67 environmentFile = mkOption { 68 68 type = types.nullOr types.path; 69 69 default = null; 70 - description = '' 71 - Environment file as defined in <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 70 + description = lib.mdDoc '' 71 + Environment file as defined in {manpage}`systemd.exec(5)`. 72 72 ''; 73 73 }; 74 74 };
+2 -2
nixos/modules/services/networking/avahi-daemon.nix
··· 150 150 '''; 151 151 } 152 152 ''; 153 - description = '' 153 + description = lib.mdDoc '' 154 154 Specify custom service definitions which are placed in the avahi service directory. 155 - See the <citerefentry><refentrytitle>avahi.service</refentrytitle><manvolnum>5</manvolnum></citerefentry> manpage for detailed information. 155 + See the {manpage}`avahi.service(5)` manpage for detailed information. 156 156 ''; 157 157 }; 158 158
+14 -14
nixos/modules/services/networking/keepalived/default.nix
··· 147 147 enable = mkOption { 148 148 type = types.bool; 149 149 default = false; 150 - description = '' 150 + description = lib.mdDoc '' 151 151 Whether to enable Keepalived. 152 152 ''; 153 153 }; ··· 155 155 enableScriptSecurity = mkOption { 156 156 type = types.bool; 157 157 default = false; 158 - description = '' 158 + description = lib.mdDoc '' 159 159 Don't run scripts configured to be run as root if any part of the path is writable by a non-root user. 160 160 ''; 161 161 }; ··· 165 165 enable = mkOption { 166 166 type = types.bool; 167 167 default = false; 168 - description = '' 168 + description = lib.mdDoc '' 169 169 Whether to enable the builtin AgentX subagent. 170 170 ''; 171 171 }; ··· 173 173 socket = mkOption { 174 174 type = types.nullOr types.str; 175 175 default = null; 176 - description = '' 176 + description = lib.mdDoc '' 177 177 Socket to use for connecting to SNMP master agent. If this value is 178 178 set to null, keepalived's default will be used, which is 179 179 unix:/var/agentx/master, unless using a network namespace, when the ··· 184 184 enableKeepalived = mkOption { 185 185 type = types.bool; 186 186 default = false; 187 - description = '' 187 + description = lib.mdDoc '' 188 188 Enable SNMP handling of vrrp element of KEEPALIVED MIB. 189 189 ''; 190 190 }; ··· 192 192 enableChecker = mkOption { 193 193 type = types.bool; 194 194 default = false; 195 - description = '' 195 + description = lib.mdDoc '' 196 196 Enable SNMP handling of checker element of KEEPALIVED MIB. 197 197 ''; 198 198 }; ··· 200 200 enableRfc = mkOption { 201 201 type = types.bool; 202 202 default = false; 203 - description = '' 203 + description = lib.mdDoc '' 204 204 Enable SNMP handling of RFC2787 and RFC6527 VRRP MIBs. 205 205 ''; 206 206 }; ··· 208 208 enableRfcV2 = mkOption { 209 209 type = types.bool; 210 210 default = false; 211 - description = '' 211 + description = lib.mdDoc '' 212 212 Enable SNMP handling of RFC2787 VRRP MIB. 213 213 ''; 214 214 }; ··· 216 216 enableRfcV3 = mkOption { 217 217 type = types.bool; 218 218 default = false; 219 - description = '' 219 + description = lib.mdDoc '' 220 220 Enable SNMP handling of RFC6527 VRRP MIB. 221 221 ''; 222 222 }; ··· 224 224 enableTraps = mkOption { 225 225 type = types.bool; 226 226 default = false; 227 - description = '' 227 + description = lib.mdDoc '' 228 228 Enable SNMP traps. 229 229 ''; 230 230 }; ··· 236 236 inherit lib; 237 237 })); 238 238 default = {}; 239 - description = "Declarative vrrp script config"; 239 + description = lib.mdDoc "Declarative vrrp script config"; 240 240 }; 241 241 242 242 vrrpInstances = mkOption { ··· 244 244 inherit lib; 245 245 })); 246 246 default = {}; 247 - description = "Declarative vhost config"; 247 + description = lib.mdDoc "Declarative vhost config"; 248 248 }; 249 249 250 250 extraGlobalDefs = mkOption { 251 251 type = types.lines; 252 252 default = ""; 253 - description = '' 253 + description = lib.mdDoc '' 254 254 Extra lines to be added verbatim to the 'global_defs' block of the 255 255 configuration file 256 256 ''; ··· 259 259 extraConfig = mkOption { 260 260 type = types.lines; 261 261 default = ""; 262 - description = '' 262 + description = lib.mdDoc '' 263 263 Extra lines to be added verbatim to the configuration file. 264 264 ''; 265 265 };
+5 -5
nixos/modules/services/networking/keepalived/virtual-ip-options.nix
··· 6 6 7 7 addr = mkOption { 8 8 type = types.str; 9 - description = '' 9 + description = lib.mdDoc '' 10 10 IP address, optionally with a netmask: IPADDR[/MASK] 11 11 ''; 12 12 }; ··· 14 14 brd = mkOption { 15 15 type = types.nullOr types.str; 16 16 default = null; 17 - description = '' 17 + description = lib.mdDoc '' 18 18 The broadcast address on the interface. 19 19 ''; 20 20 }; ··· 22 22 dev = mkOption { 23 23 type = types.nullOr types.str; 24 24 default = null; 25 - description = '' 25 + description = lib.mdDoc '' 26 26 The name of the device to add the address to. 27 27 ''; 28 28 }; ··· 30 30 scope = mkOption { 31 31 type = types.nullOr types.str; 32 32 default = null; 33 - description = '' 33 + description = lib.mdDoc '' 34 34 The scope of the area where this address is valid. 35 35 ''; 36 36 }; ··· 38 38 label = mkOption { 39 39 type = types.nullOr types.str; 40 40 default = null; 41 - description = '' 41 + description = lib.mdDoc '' 42 42 Each address may be tagged with a label string. In order to preserve 43 43 compatibility with Linux-2.0 net aliases, this string must coincide with 44 44 the name of the device or must be prefixed with the device name followed
+14 -14
nixos/modules/services/networking/keepalived/vrrp-instance-options.nix
··· 6 6 7 7 interface = mkOption { 8 8 type = types.str; 9 - description = '' 9 + description = lib.mdDoc '' 10 10 Interface for inside_network, bound by vrrp. 11 11 ''; 12 12 }; ··· 14 14 state = mkOption { 15 15 type = types.enum [ "MASTER" "BACKUP" ]; 16 16 default = "BACKUP"; 17 - description = '' 17 + description = lib.mdDoc '' 18 18 Initial state. As soon as the other machine(s) come up, an election will 19 19 be held and the machine with the highest "priority" will become MASTER. 20 20 So the entry here doesn't matter a whole lot. ··· 23 23 24 24 virtualRouterId = mkOption { 25 25 type = types.int; 26 - description = '' 26 + description = lib.mdDoc '' 27 27 Arbitrary unique number 0..255. Used to differentiate multiple instances 28 28 of vrrpd running on the same NIC (and hence same socket). 29 29 ''; ··· 32 32 priority = mkOption { 33 33 type = types.int; 34 34 default = 100; 35 - description = '' 35 + description = lib.mdDoc '' 36 36 For electing MASTER, highest priority wins. To be MASTER, make 50 more 37 37 than other machines. 38 38 ''; ··· 41 41 noPreempt = mkOption { 42 42 type = types.bool; 43 43 default = false; 44 - description = '' 44 + description = lib.mdDoc '' 45 45 VRRP will normally preempt a lower priority machine when a higher 46 46 priority machine comes online. "nopreempt" allows the lower priority 47 47 machine to maintain the master role, even when a higher priority machine ··· 53 53 useVmac = mkOption { 54 54 type = types.bool; 55 55 default = false; 56 - description = '' 56 + description = lib.mdDoc '' 57 57 Use VRRP Virtual MAC. 58 58 ''; 59 59 }; ··· 61 61 vmacInterface = mkOption { 62 62 type = types.nullOr types.str; 63 63 default = null; 64 - description = '' 64 + description = lib.mdDoc '' 65 65 Name of the vmac interface to use. keepalived will come up with a name 66 66 if you don't specify one. 67 67 ''; ··· 70 70 vmacXmitBase = mkOption { 71 71 type = types.bool; 72 72 default = false; 73 - description = '' 73 + description = lib.mdDoc '' 74 74 Send/Recv VRRP messages from base interface instead of VMAC interface. 75 75 ''; 76 76 }; ··· 78 78 unicastSrcIp = mkOption { 79 79 type = types.nullOr types.str; 80 80 default = null; 81 - description = '' 81 + description = lib.mdDoc '' 82 82 Default IP for binding vrrpd is the primary IP on interface. If you 83 83 want to hide location of vrrpd, use this IP as src_addr for unicast 84 84 vrrp packets. ··· 88 88 unicastPeers = mkOption { 89 89 type = types.listOf types.str; 90 90 default = []; 91 - description = '' 91 + description = lib.mdDoc '' 92 92 Do not send VRRP adverts over VRRP multicast group. Instead it sends 93 93 adverts to the following list of ip addresses using unicast design 94 94 fashion. It can be cool to use VRRP FSM and features in a networking ··· 103 103 })); 104 104 default = []; 105 105 # TODO: example 106 - description = "Declarative vhost config"; 106 + description = lib.mdDoc "Declarative vhost config"; 107 107 }; 108 108 109 109 trackScripts = mkOption { 110 110 type = types.listOf types.str; 111 111 default = []; 112 112 example = [ "chk_cmd1" "chk_cmd2" ]; 113 - description = "List of script names to invoke for health tracking."; 113 + description = lib.mdDoc "List of script names to invoke for health tracking."; 114 114 }; 115 115 116 116 trackInterfaces = mkOption { 117 117 type = types.listOf types.str; 118 118 default = []; 119 119 example = [ "eth0" "eth1" ]; 120 - description = "List of network interfaces to monitor for health tracking."; 120 + description = lib.mdDoc "List of network interfaces to monitor for health tracking."; 121 121 }; 122 122 123 123 extraConfig = mkOption { 124 124 type = types.lines; 125 125 default = ""; 126 - description = '' 126 + description = lib.mdDoc '' 127 127 Extra lines to be added verbatim to the vrrp_instance section. 128 128 ''; 129 129 };
+9 -9
nixos/modules/services/networking/keepalived/vrrp-script-options.nix
··· 8 8 script = mkOption { 9 9 type = str; 10 10 example = literalExpression ''"''${pkgs.curl} -f http://localhost:80"''; 11 - description = "(Path of) Script command to execute followed by args, i.e. cmd [args]..."; 11 + description = lib.mdDoc "(Path of) Script command to execute followed by args, i.e. cmd [args]..."; 12 12 }; 13 13 14 14 interval = mkOption { 15 15 type = int; 16 16 default = 1; 17 - description = "Seconds between script invocations."; 17 + description = lib.mdDoc "Seconds between script invocations."; 18 18 }; 19 19 20 20 timeout = mkOption { 21 21 type = int; 22 22 default = 5; 23 - description = "Seconds after which script is considered to have failed."; 23 + description = lib.mdDoc "Seconds after which script is considered to have failed."; 24 24 }; 25 25 26 26 weight = mkOption { 27 27 type = int; 28 28 default = 0; 29 - description = "Following a failure, adjust the priority by this weight."; 29 + description = lib.mdDoc "Following a failure, adjust the priority by this weight."; 30 30 }; 31 31 32 32 rise = mkOption { 33 33 type = int; 34 34 default = 5; 35 - description = "Required number of successes for OK transition."; 35 + description = lib.mdDoc "Required number of successes for OK transition."; 36 36 }; 37 37 38 38 fall = mkOption { 39 39 type = int; 40 40 default = 3; 41 - description = "Required number of failures for KO transition."; 41 + description = lib.mdDoc "Required number of failures for KO transition."; 42 42 }; 43 43 44 44 user = mkOption { 45 45 type = str; 46 46 default = "keepalived_script"; 47 - description = "Name of user to run the script under."; 47 + description = lib.mdDoc "Name of user to run the script under."; 48 48 }; 49 49 50 50 group = mkOption { 51 51 type = nullOr str; 52 52 default = null; 53 - description = "Name of group to run the script under. Defaults to user group."; 53 + description = lib.mdDoc "Name of group to run the script under. Defaults to user group."; 54 54 }; 55 55 56 56 extraConfig = mkOption { 57 57 type = lines; 58 58 default = ""; 59 - description = "Extra lines to be added verbatim to the vrrp_script section."; 59 + description = lib.mdDoc "Extra lines to be added verbatim to the vrrp_script section."; 60 60 }; 61 61 62 62 };
+4 -4
nixos/modules/services/networking/nbd.nix
··· 56 56 default = { 57 57 allowlist = false; 58 58 }; 59 - description = '' 59 + description = lib.mdDoc '' 60 60 Extra options for the server. See 61 - <citerefentry><refentrytitle>nbd-server</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 61 + {manpage}`nbd-server(5)`. 62 62 ''; 63 63 }; 64 64 ··· 87 87 flush = true; 88 88 fua = true; 89 89 }; 90 - description = '' 90 + description = lib.mdDoc '' 91 91 Extra options for this export. See 92 - <citerefentry><refentrytitle>nbd-server</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 92 + {manpage}`nbd-server(5)`. 93 93 ''; 94 94 }; 95 95 };
+17 -17
nixos/modules/services/networking/networkmanager.nix
··· 173 173 str 174 174 ])); 175 175 default = {}; 176 - description = '' 176 + description = lib.mdDoc '' 177 177 Configuration for the [connection] section of NetworkManager.conf. 178 178 Refer to 179 - <link xlink:href="https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html"> 179 + [ 180 180 https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html#id-1.2.3.11 181 - </link> 181 + ](https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html) 182 182 or 183 - <citerefentry><refentrytitle>NetworkManager.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 183 + {manpage}`NetworkManager.conf(5)` 184 184 for more information. 185 185 ''; 186 186 }; ··· 188 188 extraConfig = mkOption { 189 189 type = types.lines; 190 190 default = ""; 191 - description = '' 191 + description = lib.mdDoc '' 192 192 Configuration appended to the generated NetworkManager.conf. 193 193 Refer to 194 - <link xlink:href="https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html"> 194 + [ 195 195 https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html 196 - </link> 196 + ](https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html) 197 197 or 198 - <citerefentry><refentrytitle>NetworkManager.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 198 + {manpage}`NetworkManager.conf(5)` 199 199 for more information. 200 200 ''; 201 201 }; ··· 203 203 unmanaged = mkOption { 204 204 type = types.listOf types.str; 205 205 default = []; 206 - description = '' 206 + description = lib.mdDoc '' 207 207 List of interfaces that will not be managed by NetworkManager. 208 208 Interface name can be specified here, but if you need more fidelity, 209 209 refer to 210 - <link xlink:href="https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html#device-spec"> 210 + [ 211 211 https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html#device-spec 212 - </link> 212 + ](https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html#device-spec) 213 213 or the "Device List Format" Appendix of 214 - <citerefentry><refentrytitle>NetworkManager.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 214 + {manpage}`NetworkManager.conf(5)`. 215 215 ''; 216 216 }; 217 217 ··· 318 318 dns = mkOption { 319 319 type = types.enum [ "default" "dnsmasq" "unbound" "systemd-resolved" "none" ]; 320 320 default = "default"; 321 - description = '' 322 - Set the DNS (<literal>resolv.conf</literal>) processing mode. 321 + description = lib.mdDoc '' 322 + Set the DNS (`resolv.conf`) processing mode. 323 323 324 324 A description of these modes can be found in the main section of 325 - <link xlink:href="https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html"> 325 + [ 326 326 https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html 327 - </link> 327 + ](https://developer.gnome.org/NetworkManager/stable/NetworkManager.conf.html) 328 328 or in 329 - <citerefentry><refentrytitle>NetworkManager.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 329 + {manpage}`NetworkManager.conf(5)`. 330 330 ''; 331 331 }; 332 332
+3 -3
nixos/modules/services/networking/nghttpx/backend-submodule.nix
··· 13 13 host = "127.0.0.1"; 14 14 port = 80; 15 15 }; 16 - description = '' 16 + description = lib.mdDoc '' 17 17 Backend server location specified as either a host:port pair 18 18 or a unix domain docket. 19 19 ''; ··· 27 27 "/somepath" 28 28 ]; 29 29 default = []; 30 - description = '' 30 + description = lib.mdDoc '' 31 31 List of nghttpx backend patterns. 32 32 33 33 Please see https://nghttp2.org/documentation/nghttpx.1.html#cmdoption-nghttpx-b ··· 42 42 tls = true; 43 43 }; 44 44 default = null; 45 - description = '' 45 + description = lib.mdDoc '' 46 46 Parameters to configure a backend. 47 47 ''; 48 48 };
+2 -2
nixos/modules/services/networking/nghttpx/frontend-submodule.nix
··· 13 13 host = "127.0.0.1"; 14 14 port = 80; 15 15 }; 16 - description = '' 16 + description = lib.mdDoc '' 17 17 Frontend server interface binding specification as either a 18 18 host:port pair or a unix domain docket. 19 19 ··· 28 28 tls = "tls"; 29 29 }; 30 30 default = null; 31 - description = '' 31 + description = lib.mdDoc '' 32 32 Parameters to configure a backend. 33 33 ''; 34 34 };
+10 -10
nixos/modules/services/networking/nghttpx/nghttpx-options.nix
··· 4 4 5 5 frontends = lib.mkOption { 6 6 type = lib.types.listOf (lib.types.submodule (import ./frontend-submodule.nix)); 7 - description = '' 7 + description = lib.mdDoc '' 8 8 A list of frontend listener specifications. 9 9 ''; 10 10 example = [ ··· 22 22 23 23 backends = lib.mkOption { 24 24 type = lib.types.listOf (lib.types.submodule (import ./backend-submodule.nix)); 25 - description = '' 25 + description = lib.mdDoc '' 26 26 A list of backend specifications. 27 27 ''; 28 28 example = [ ··· 42 42 tls = lib.mkOption { 43 43 type = lib.types.nullOr (lib.types.submodule (import ./tls-submodule.nix)); 44 44 default = null; 45 - description = '' 45 + description = lib.mdDoc '' 46 46 TLS certificate and key paths. Note that this does not enable 47 47 TLS for a frontend listener, to do so, a frontend 48 - specification must set <literal>params.tls</literal> to true. 48 + specification must set `params.tls` to true. 49 49 ''; 50 50 example = { 51 51 key = "/etc/ssl/keys/server.key"; ··· 56 56 extraConfig = lib.mkOption { 57 57 type = lib.types.lines; 58 58 default = ""; 59 - description = '' 59 + description = lib.mdDoc '' 60 60 Extra configuration options to be appended to the generated 61 61 configuration file. 62 62 ''; ··· 65 65 single-process = lib.mkOption { 66 66 type = lib.types.bool; 67 67 default = false; 68 - description = '' 68 + description = lib.mdDoc '' 69 69 Run this program in a single process mode for debugging 70 70 purpose. Without this option, nghttpx creates at least 2 71 71 processes: master and worker processes. If this option is ··· 81 81 backlog = lib.mkOption { 82 82 type = lib.types.int; 83 83 default = 65536; 84 - description = '' 84 + description = lib.mdDoc '' 85 85 Listen backlog size. 86 86 87 87 Please see https://nghttp2.org/documentation/nghttpx.1.html#cmdoption-nghttpx--backlog ··· 95 95 "IPv6" 96 96 ]; 97 97 default = "auto"; 98 - description = '' 98 + description = lib.mdDoc '' 99 99 Specify address family of backend connections. If "auto" is 100 100 given, both IPv4 and IPv6 are considered. If "IPv4" is given, 101 101 only IPv4 address is considered. If "IPv6" is given, only IPv6 ··· 108 108 workers = lib.mkOption { 109 109 type = lib.types.int; 110 110 default = 1; 111 - description = '' 111 + description = lib.mdDoc '' 112 112 Set the number of worker threads. 113 113 114 114 Please see https://nghttp2.org/documentation/nghttpx.1.html#cmdoption-nghttpx-n ··· 118 118 single-thread = lib.mkOption { 119 119 type = lib.types.bool; 120 120 default = false; 121 - description = '' 121 + description = lib.mdDoc '' 122 122 Run everything in one thread inside the worker process. This 123 123 feature is provided for better debugging experience, or for 124 124 the platforms which lack thread support. If threading is
+5 -5
nixos/modules/services/networking/soju.nix
··· 32 32 listen = mkOption { 33 33 type = types.listOf types.str; 34 34 default = [ ":6697" ]; 35 - description = '' 35 + description = lib.mdDoc '' 36 36 Where soju should listen for incoming connections. See the 37 - <literal>listen</literal> directive in 38 - <citerefentry><refentrytitle>soju</refentrytitle><manvolnum>1</manvolnum></citerefentry>. 37 + `listen` directive in 38 + {manpage}`soju(1)`. 39 39 ''; 40 40 }; 41 41 ··· 69 69 httpOrigins = mkOption { 70 70 type = types.listOf types.str; 71 71 default = []; 72 - description = '' 72 + description = lib.mdDoc '' 73 73 List of allowed HTTP origins for WebSocket listeners. The parameters are 74 74 interpreted as shell patterns, see 75 - <citerefentry><refentrytitle>glob</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 75 + {manpage}`glob(7)`. 76 76 ''; 77 77 }; 78 78
+4 -4
nixos/modules/services/networking/ssh/sshd.nix
··· 156 156 gatewayPorts = mkOption { 157 157 type = types.str; 158 158 default = "no"; 159 - description = '' 159 + description = lib.mdDoc '' 160 160 Specifies whether remote hosts are allowed to connect to 161 161 ports forwarded for the client. See 162 - <citerefentry><refentrytitle>sshd_config</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 162 + {manpage}`sshd_config(5)`. 163 163 ''; 164 164 }; 165 165 ··· 236 236 [ { type = "rsa"; bits = 4096; path = "/etc/ssh/ssh_host_rsa_key"; rounds = 100; openSSHFormat = true; } 237 237 { type = "ed25519"; path = "/etc/ssh/ssh_host_ed25519_key"; rounds = 100; comment = "key comment"; } 238 238 ]; 239 - description = '' 239 + description = lib.mdDoc '' 240 240 NixOS can automatically generate SSH host keys. This option 241 241 specifies the path, type and size of each key. See 242 - <citerefentry><refentrytitle>ssh-keygen</refentrytitle><manvolnum>1</manvolnum></citerefentry> for supported types 242 + {manpage}`ssh-keygen(1)` for supported types 243 243 and sizes. 244 244 ''; 245 245 };
+3 -3
nixos/modules/services/networking/strongswan-swanctl/module.nix
··· 14 14 type = types.package; 15 15 default = pkgs.strongswan; 16 16 defaultText = literalExpression "pkgs.strongswan"; 17 - description = '' 17 + description = lib.mdDoc '' 18 18 The strongswan derivation to use. 19 19 ''; 20 20 }; ··· 22 22 strongswan.extraConfig = mkOption { 23 23 type = types.str; 24 24 default = ""; 25 - description = '' 26 - Contents of the <literal>strongswan.conf</literal> file. 25 + description = lib.mdDoc '' 26 + Contents of the `strongswan.conf` file. 27 27 ''; 28 28 }; 29 29
+4 -4
nixos/modules/services/networking/stunnel.nix
··· 77 77 78 78 79 79 servers = mkOption { 80 - description = '' 80 + description = lib.mdDoc '' 81 81 Define the server configuations. 82 82 83 - See "SERVICE-LEVEL OPTIONS" in <citerefentry><refentrytitle>stunnel</refentrytitle><manvolnum>8</manvolnum></citerefentry>. 83 + See "SERVICE-LEVEL OPTIONS" in {manpage}`stunnel(8)`. 84 84 ''; 85 85 type = with types; attrsOf (attrsOf (nullOr (oneOf [bool int str]))); 86 86 example = { ··· 94 94 }; 95 95 96 96 clients = mkOption { 97 - description = '' 97 + description = lib.mdDoc '' 98 98 Define the client configurations. 99 99 100 100 By default, verifyChain and OCSPaia are enabled and a CAFile is provided from pkgs.cacert. 101 101 102 - See "SERVICE-LEVEL OPTIONS" in <citerefentry><refentrytitle>stunnel</refentrytitle><manvolnum>8</manvolnum></citerefentry>. 102 + See "SERVICE-LEVEL OPTIONS" in {manpage}`stunnel(8)`. 103 103 ''; 104 104 type = with types; attrsOf (attrsOf (nullOr (oneOf [bool int str]))); 105 105
+2 -2
nixos/modules/services/networking/unbound.nix
··· 150 150 remote-control.control-enable = true; 151 151 }; 152 152 ''; 153 - description = '' 153 + description = lib.mdDoc '' 154 154 Declarative Unbound configuration 155 - See the <citerefentry><refentrytitle>unbound.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> manpage for a list of 155 + See the {manpage}`unbound.conf(5)` manpage for a list of 156 156 available options. 157 157 ''; 158 158 };
+4 -4
nixos/modules/services/networking/wpa_supplicant.nix
··· 396 396 example = '' 397 397 bssid_blacklist=02:11:22:33:44:55 02:22:aa:44:55:66 398 398 ''; 399 - description = '' 399 + description = lib.mdDoc '' 400 400 Extra configuration lines appended to the network block. 401 401 See 402 - <citerefentry><refentrytitle>wpa_supplicant.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 402 + {manpage}`wpa_supplicant.conf(5)` 403 403 for available options. 404 404 ''; 405 405 }; ··· 470 470 example = '' 471 471 p2p_disabled=1 472 472 ''; 473 - description = '' 473 + description = lib.mdDoc '' 474 474 Extra lines appended to the configuration file. 475 475 See 476 - <citerefentry><refentrytitle>wpa_supplicant.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> 476 + {manpage}`wpa_supplicant.conf(5)` 477 477 for available options. 478 478 ''; 479 479 };
+12 -12
nixos/modules/services/networking/znc/default.nix
··· 87 87 default = "znc"; 88 88 example = "john"; 89 89 type = types.str; 90 - description = '' 90 + description = lib.mdDoc '' 91 91 The name of an existing user account to use to own the ZNC server 92 92 process. If not specified, a default user will be created. 93 93 ''; ··· 97 97 default = defaultUser; 98 98 example = "users"; 99 99 type = types.str; 100 - description = '' 100 + description = lib.mdDoc '' 101 101 Group to own the ZNC process. 102 102 ''; 103 103 }; ··· 106 106 default = "/var/lib/znc"; 107 107 example = "/home/john/.znc"; 108 108 type = types.path; 109 - description = '' 109 + description = lib.mdDoc '' 110 110 The state directory for ZNC. The config and the modules will be linked 111 111 to from this directory as well. 112 112 ''; ··· 115 115 openFirewall = mkOption { 116 116 type = types.bool; 117 117 default = false; 118 - description = '' 118 + description = lib.mdDoc '' 119 119 Whether to open ports in the firewall for ZNC. Does work with 120 120 ports for listeners specified in 121 - <option>services.znc.config.Listener</option>. 121 + {option}`services.znc.config.Listener`. 122 122 ''; 123 123 }; 124 124 ··· 177 177 configFile = mkOption { 178 178 type = types.path; 179 179 example = literalExpression "~/.znc/configs/znc.conf"; 180 - description = '' 180 + description = lib.mdDoc '' 181 181 Configuration file for ZNC. It is recommended to use the 182 - <option>config</option> option instead. 182 + {option}`config` option instead. 183 183 184 184 Setting this option will override any auto-generated config file 185 - through the <option>confOptions</option> or <option>config</option> 185 + through the {option}`confOptions` or {option}`config` 186 186 options. 187 187 ''; 188 188 }; ··· 191 191 type = types.listOf types.package; 192 192 default = [ ]; 193 193 example = literalExpression "[ pkgs.zncModules.fish pkgs.zncModules.push ]"; 194 - description = '' 194 + description = lib.mdDoc '' 195 195 A list of global znc module packages to add to znc. 196 196 ''; 197 197 }; ··· 199 199 mutable = mkOption { 200 200 default = true; # TODO: Default to true when config is set, make sure to not delete the old config if present 201 201 type = types.bool; 202 - description = '' 202 + description = lib.mdDoc '' 203 203 Indicates whether to allow the contents of the 204 - <literal>dataDir</literal> directory to be changed by the user at 204 + `dataDir` directory to be changed by the user at 205 205 run-time. 206 206 207 207 If enabled, modifications to the ZNC configuration after its initial ··· 217 217 default = [ ]; 218 218 example = [ "--debug" ]; 219 219 type = types.listOf types.str; 220 - description = '' 220 + description = lib.mdDoc '' 221 221 Extra arguments to use for executing znc. 222 222 ''; 223 223 };
+4 -4
nixos/modules/services/security/usbguard.nix
··· 57 57 example = '' 58 58 allow with-interface equals { 08:*:* } 59 59 ''; 60 - description = '' 60 + description = lib.mdDoc '' 61 61 The USBGuard daemon will load this as the policy rule set. 62 62 As these rules are NixOS managed they are immutable and can't 63 63 be changed by the IPC interface. 64 64 65 65 If you do not set this option, the USBGuard daemon will load 66 - it's policy rule set from <literal>${defaultRuleFile}</literal>. 66 + it's policy rule set from `${defaultRuleFile}`. 67 67 This file can be changed manually or via the IPC interface. 68 68 69 - Running <literal>usbguard generate-policy</literal> as root will 69 + Running `usbguard generate-policy` as root will 70 70 generate a config for your currently plugged in devices. 71 71 72 - For more details see <citerefentry><refentrytitle>usbguard-rules.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 72 + For more details see {manpage}`usbguard-rules.conf(5)`. 73 73 ''; 74 74 }; 75 75
+5 -5
nixos/modules/services/system/kerberos/default.nix
··· 9 9 options = { 10 10 principal = mkOption { 11 11 type = types.str; 12 - description = "Which principal the rule applies to"; 12 + description = lib.mdDoc "Which principal the rule applies to"; 13 13 }; 14 14 access = mkOption { 15 15 type = types.either 16 16 (types.listOf (types.enum ["add" "cpw" "delete" "get" "list" "modify"])) 17 17 (types.enum ["all"]); 18 18 default = "all"; 19 - description = "The changes the principal is allowed to make."; 19 + description = lib.mdDoc "The changes the principal is allowed to make."; 20 20 }; 21 21 target = mkOption { 22 22 type = types.str; 23 23 default = "*"; 24 - description = "The principals that 'access' applies to."; 24 + description = lib.mdDoc "The principals that 'access' applies to."; 25 25 }; 26 26 }; 27 27 }; ··· 34 34 { principal = "*/admin"; access = "all"; } 35 35 { principal = "admin"; access = "all"; } 36 36 ]; 37 - description = '' 37 + description = lib.mdDoc '' 38 38 The privileges granted to a user. 39 39 ''; 40 40 }; ··· 55 55 56 56 realms = mkOption { 57 57 type = types.attrsOf (types.submodule realm); 58 - description = '' 58 + description = lib.mdDoc '' 59 59 The realm(s) to serve keys for. 60 60 ''; 61 61 };
+3 -3
nixos/modules/services/system/nscd.nix
··· 20 20 enable = mkOption { 21 21 type = types.bool; 22 22 default = true; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 Whether to enable the Name Service Cache Daemon. 25 25 Disabling this is strongly discouraged, as this effectively disables NSS Lookups 26 26 from all non-glibc NSS modules, including the ones provided by systemd. ··· 30 30 config = mkOption { 31 31 type = types.lines; 32 32 default = builtins.readFile ./nscd.conf; 33 - description = "Configuration to use for Name Service Cache Daemon."; 33 + description = lib.mdDoc "Configuration to use for Name Service Cache Daemon."; 34 34 }; 35 35 36 36 package = mkOption { ··· 43 43 then pkgs.stdenv.cc.libc.bin 44 44 else pkgs.glibc.bin; 45 45 ''; 46 - description = "package containing the nscd binary to be used by the service"; 46 + description = lib.mdDoc "package containing the nscd binary to be used by the service"; 47 47 }; 48 48 49 49 };
+4 -4
nixos/modules/services/ttys/getty.nix
··· 52 52 loginOptions = mkOption { 53 53 type = types.nullOr types.str; 54 54 default = null; 55 - description = '' 55 + description = lib.mdDoc '' 56 56 Template for arguments to be passed to 57 - <citerefentry><refentrytitle>login</refentrytitle><manvolnum>1</manvolnum></citerefentry>. 57 + {manpage}`login(1)`. 58 58 59 - See <citerefentry><refentrytitle>agetty</refentrytitle><manvolnum>1</manvolnum></citerefentry> for details, 59 + See {manpage}`agetty(1)` for details, 60 60 including security considerations. If unspecified, agetty 61 - will not be invoked with a <option>--login-options</option> 61 + will not be invoked with a {option}`--login-options` 62 62 option. 63 63 ''; 64 64 example = "-h darkstar -- \\u";
+35 -35
nixos/modules/services/web-apps/bookstack.nix
··· 38 38 39 39 user = mkOption { 40 40 default = "bookstack"; 41 - description = "User bookstack runs as."; 41 + description = lib.mdDoc "User bookstack runs as."; 42 42 type = types.str; 43 43 }; 44 44 45 45 group = mkOption { 46 46 default = "bookstack"; 47 - description = "Group bookstack runs as."; 47 + description = lib.mdDoc "Group bookstack runs as."; 48 48 type = types.str; 49 49 }; 50 50 51 51 appKeyFile = mkOption { 52 - description = '' 52 + description = lib.mdDoc '' 53 53 A file containing the Laravel APP_KEY - a 32 character long, 54 54 base64 encoded key used for encryption where needed. Can be 55 - generated with <literal>head -c 32 /dev/urandom | base64</literal>. 55 + generated with `head -c 32 /dev/urandom | base64`. 56 56 ''; 57 57 example = "/run/keys/bookstack-appkey"; 58 58 type = types.path; ··· 66 66 config.networking.hostName; 67 67 defaultText = lib.literalExpression "config.networking.fqdn"; 68 68 example = "bookstack.example.com"; 69 - description = '' 69 + description = lib.mdDoc '' 70 70 The hostname to serve BookStack on. 71 71 ''; 72 72 }; 73 73 74 74 appURL = mkOption { 75 - description = '' 75 + description = lib.mdDoc '' 76 76 The root URL that you want to host BookStack on. All URLs in BookStack will be generated using this value. 77 - If you change this in the future you may need to run a command to update stored URLs in the database. Command example: <literal>php artisan bookstack:update-url https://old.example.com https://new.example.com</literal> 77 + If you change this in the future you may need to run a command to update stored URLs in the database. Command example: `php artisan bookstack:update-url https://old.example.com https://new.example.com` 78 78 ''; 79 79 default = "http${lib.optionalString tlsEnabled "s"}://${cfg.hostname}"; 80 80 defaultText = ''http''${lib.optionalString tlsEnabled "s"}://''${cfg.hostname}''; ··· 83 83 }; 84 84 85 85 dataDir = mkOption { 86 - description = "BookStack data directory"; 86 + description = lib.mdDoc "BookStack data directory"; 87 87 default = "/var/lib/bookstack"; 88 88 type = types.path; 89 89 }; ··· 92 92 host = mkOption { 93 93 type = types.str; 94 94 default = "localhost"; 95 - description = "Database host address."; 95 + description = lib.mdDoc "Database host address."; 96 96 }; 97 97 port = mkOption { 98 98 type = types.port; 99 99 default = 3306; 100 - description = "Database host port."; 100 + description = lib.mdDoc "Database host port."; 101 101 }; 102 102 name = mkOption { 103 103 type = types.str; 104 104 default = "bookstack"; 105 - description = "Database name."; 105 + description = lib.mdDoc "Database name."; 106 106 }; 107 107 user = mkOption { 108 108 type = types.str; 109 109 default = user; 110 110 defaultText = literalExpression "user"; 111 - description = "Database username."; 111 + description = lib.mdDoc "Database username."; 112 112 }; 113 113 passwordFile = mkOption { 114 114 type = with types; nullOr path; 115 115 default = null; 116 116 example = "/run/keys/bookstack-dbpassword"; 117 - description = '' 117 + description = lib.mdDoc '' 118 118 A file containing the password corresponding to 119 - <option>database.user</option>. 119 + {option}`database.user`. 120 120 ''; 121 121 }; 122 122 createLocally = mkOption { 123 123 type = types.bool; 124 124 default = false; 125 - description = "Create the database and database user locally."; 125 + description = lib.mdDoc "Create the database and database user locally."; 126 126 }; 127 127 }; 128 128 ··· 130 130 driver = mkOption { 131 131 type = types.enum [ "smtp" "sendmail" ]; 132 132 default = "smtp"; 133 - description = "Mail driver to use."; 133 + description = lib.mdDoc "Mail driver to use."; 134 134 }; 135 135 host = mkOption { 136 136 type = types.str; 137 137 default = "localhost"; 138 - description = "Mail host address."; 138 + description = lib.mdDoc "Mail host address."; 139 139 }; 140 140 port = mkOption { 141 141 type = types.port; 142 142 default = 1025; 143 - description = "Mail host port."; 143 + description = lib.mdDoc "Mail host port."; 144 144 }; 145 145 fromName = mkOption { 146 146 type = types.str; 147 147 default = "BookStack"; 148 - description = "Mail \"from\" name."; 148 + description = lib.mdDoc "Mail \"from\" name."; 149 149 }; 150 150 from = mkOption { 151 151 type = types.str; 152 152 default = "mail@bookstackapp.com"; 153 - description = "Mail \"from\" email."; 153 + description = lib.mdDoc "Mail \"from\" email."; 154 154 }; 155 155 user = mkOption { 156 156 type = with types; nullOr str; 157 157 default = null; 158 158 example = "bookstack"; 159 - description = "Mail username."; 159 + description = lib.mdDoc "Mail username."; 160 160 }; 161 161 passwordFile = mkOption { 162 162 type = with types; nullOr path; 163 163 default = null; 164 164 example = "/run/keys/bookstack-mailpassword"; 165 - description = '' 165 + description = lib.mdDoc '' 166 166 A file containing the password corresponding to 167 - <option>mail.user</option>. 167 + {option}`mail.user`. 168 168 ''; 169 169 }; 170 170 encryption = mkOption { 171 171 type = with types; nullOr (enum [ "tls" ]); 172 172 default = null; 173 - description = "SMTP encryption mechanism to use."; 173 + description = lib.mdDoc "SMTP encryption mechanism to use."; 174 174 }; 175 175 }; 176 176 ··· 178 178 type = types.str; 179 179 default = "18M"; 180 180 example = "1G"; 181 - description = "The maximum size for uploads (e.g. images)."; 181 + description = lib.mdDoc "The maximum size for uploads (e.g. images)."; 182 182 }; 183 183 184 184 poolConfig = mkOption { ··· 191 191 "pm.max_spare_servers" = 4; 192 192 "pm.max_requests" = 500; 193 193 }; 194 - description = '' 195 - Options for the bookstack PHP pool. See the documentation on <literal>php-fpm.conf</literal> 194 + description = lib.mdDoc '' 195 + Options for the bookstack PHP pool. See the documentation on `php-fpm.conf` 196 196 for details on configuration directives. 197 197 ''; 198 198 }; ··· 213 213 enableACME = true; 214 214 } 215 215 ''; 216 - description = '' 216 + description = lib.mdDoc '' 217 217 With this option, you can customize the nginx virtualHost settings. 218 218 ''; 219 219 }; ··· 256 256 OIDC_ISSUER_DISCOVER = true; 257 257 } 258 258 ''; 259 - description = '' 259 + description = lib.mdDoc '' 260 260 BookStack configuration options to set in the 261 - <filename>.env</filename> file. 261 + {file}`.env` file. 262 262 263 - Refer to <link xlink:href="https://www.bookstackapp.com/docs/"/> 263 + Refer to <https://www.bookstackapp.com/docs/> 264 264 for details on supported values. 265 265 266 266 Settings containing secret data should be set to an attribute 267 - set containing the attribute <literal>_secret</literal> - a 267 + set containing the attribute `_secret` - a 268 268 string pointing to a file containing the value the option 269 269 should be set to. See the example to get a better picture of 270 - this: in the resulting <filename>.env</filename> file, the 271 - <literal>OIDC_CLIENT_SECRET</literal> key will be set to the 272 - contents of the <filename>/run/keys/oidc_secret</filename> 270 + this: in the resulting {file}`.env` file, the 271 + `OIDC_CLIENT_SECRET` key will be set to the 272 + contents of the {file}`/run/keys/oidc_secret` 273 273 file. 274 274 ''; 275 275 };
+3 -3
nixos/modules/services/web-apps/fluidd.nix
··· 10 10 11 11 package = mkOption { 12 12 type = types.package; 13 - description = "Fluidd package to be used in the module"; 13 + description = lib.mdDoc "Fluidd package to be used in the module"; 14 14 default = pkgs.fluidd; 15 15 defaultText = literalExpression "pkgs.fluidd"; 16 16 }; ··· 18 18 hostName = mkOption { 19 19 type = types.str; 20 20 default = "localhost"; 21 - description = "Hostname to serve fluidd on"; 21 + description = lib.mdDoc "Hostname to serve fluidd on"; 22 22 }; 23 23 24 24 nginx = mkOption { ··· 30 30 serverAliases = [ "fluidd.''${config.networking.domain}" ]; 31 31 } 32 32 ''; 33 - description = "Extra configuration for the nginx virtual host of fluidd."; 33 + description = lib.mdDoc "Extra configuration for the nginx virtual host of fluidd."; 34 34 }; 35 35 }; 36 36
+8 -8
nixos/modules/services/web-apps/jirafeau.nix
··· 25 25 adminPasswordSha256 = mkOption { 26 26 type = types.str; 27 27 default = ""; 28 - description = '' 28 + description = lib.mdDoc '' 29 29 SHA-256 of the desired administration password. Leave blank/unset for no password. 30 30 ''; 31 31 }; ··· 33 33 dataDir = mkOption { 34 34 type = types.path; 35 35 default = "/var/lib/jirafeau/data/"; 36 - description = "Location of Jirafeau storage directory."; 36 + description = lib.mdDoc "Location of Jirafeau storage directory."; 37 37 }; 38 38 39 39 enable = mkEnableOption "Jirafeau file upload application."; ··· 58 58 hostName = mkOption { 59 59 type = types.str; 60 60 default = "localhost"; 61 - description = "URL of instance. Must have trailing slash."; 61 + description = lib.mdDoc "URL of instance. Must have trailing slash."; 62 62 }; 63 63 64 64 maxUploadSizeMegabytes = mkOption { 65 65 type = types.int; 66 66 default = 0; 67 - description = "Maximum upload size of accepted files."; 67 + description = lib.mdDoc "Maximum upload size of accepted files."; 68 68 }; 69 69 70 70 maxUploadTimeout = mkOption { ··· 89 89 serverAliases = [ "wiki.''${config.networking.domain}" ]; 90 90 } 91 91 ''; 92 - description = "Extra configuration for the nginx virtual host of Jirafeau."; 92 + description = lib.mdDoc "Extra configuration for the nginx virtual host of Jirafeau."; 93 93 }; 94 94 95 95 package = mkOption { 96 96 type = types.package; 97 97 default = pkgs.jirafeau; 98 98 defaultText = literalExpression "pkgs.jirafeau"; 99 - description = "Jirafeau package to use"; 99 + description = lib.mdDoc "Jirafeau package to use"; 100 100 }; 101 101 102 102 poolConfig = mkOption { ··· 109 109 "pm.max_spare_servers" = 4; 110 110 "pm.max_requests" = 500; 111 111 }; 112 - description = '' 113 - Options for Jirafeau PHP pool. See documentation on <literal>php-fpm.conf</literal> for 112 + description = lib.mdDoc '' 113 + Options for Jirafeau PHP pool. See documentation on `php-fpm.conf` for 114 114 details on configuration directives. 115 115 ''; 116 116 };
+16 -16
nixos/modules/services/web-apps/limesurvey.nix
··· 39 39 type = types.enum [ "mysql" "pgsql" "odbc" "mssql" ]; 40 40 example = "pgsql"; 41 41 default = "mysql"; 42 - description = "Database engine to use."; 42 + description = lib.mdDoc "Database engine to use."; 43 43 }; 44 44 45 45 host = mkOption { 46 46 type = types.str; 47 47 default = "localhost"; 48 - description = "Database host address."; 48 + description = lib.mdDoc "Database host address."; 49 49 }; 50 50 51 51 port = mkOption { 52 52 type = types.int; 53 53 default = if cfg.database.type == "pgsql" then 5442 else 3306; 54 54 defaultText = literalExpression "3306"; 55 - description = "Database host port."; 55 + description = lib.mdDoc "Database host port."; 56 56 }; 57 57 58 58 name = mkOption { 59 59 type = types.str; 60 60 default = "limesurvey"; 61 - description = "Database name."; 61 + description = lib.mdDoc "Database name."; 62 62 }; 63 63 64 64 user = mkOption { 65 65 type = types.str; 66 66 default = "limesurvey"; 67 - description = "Database user."; 67 + description = lib.mdDoc "Database user."; 68 68 }; 69 69 70 70 passwordFile = mkOption { 71 71 type = types.nullOr types.path; 72 72 default = null; 73 73 example = "/run/keys/limesurvey-dbpassword"; 74 - description = '' 74 + description = lib.mdDoc '' 75 75 A file containing the password corresponding to 76 - <option>database.user</option>. 76 + {option}`database.user`. 77 77 ''; 78 78 }; 79 79 ··· 85 85 else null 86 86 ; 87 87 defaultText = literalExpression "/run/mysqld/mysqld.sock"; 88 - description = "Path to the unix socket file to use for authentication."; 88 + description = lib.mdDoc "Path to the unix socket file to use for authentication."; 89 89 }; 90 90 91 91 createLocally = mkOption { 92 92 type = types.bool; 93 93 default = cfg.database.type == "mysql"; 94 94 defaultText = literalExpression "true"; 95 - description = '' 95 + description = lib.mdDoc '' 96 96 Create the database and database user locally. 97 97 This currently only applies if database type "mysql" is selected. 98 98 ''; ··· 109 109 enableACME = true; 110 110 } 111 111 ''; 112 - description = '' 113 - Apache configuration can be done by adapting <literal>services.httpd.virtualHosts.&lt;name&gt;</literal>. 114 - See <xref linkend="opt-services.httpd.virtualHosts"/> for further information. 112 + description = lib.mdDoc '' 113 + Apache configuration can be done by adapting `services.httpd.virtualHosts.<name>`. 114 + See [](#opt-services.httpd.virtualHosts) for further information. 115 115 ''; 116 116 }; 117 117 ··· 125 125 "pm.max_spare_servers" = 4; 126 126 "pm.max_requests" = 500; 127 127 }; 128 - description = '' 129 - Options for the LimeSurvey PHP pool. See the documentation on <literal>php-fpm.conf</literal> 128 + description = lib.mdDoc '' 129 + Options for the LimeSurvey PHP pool. See the documentation on `php-fpm.conf` 130 130 for details on configuration directives. 131 131 ''; 132 132 }; ··· 134 134 config = mkOption { 135 135 type = configType; 136 136 default = {}; 137 - description = '' 137 + description = lib.mdDoc '' 138 138 LimeSurvey configuration. Refer to 139 - <link xlink:href="https://manual.limesurvey.org/Optional_settings"/> 139 + <https://manual.limesurvey.org/Optional_settings> 140 140 for details on supported values. 141 141 ''; 142 142 };
+8 -8
nixos/modules/services/web-apps/matomo.nix
··· 32 32 enable = mkOption { 33 33 type = types.bool; 34 34 default = false; 35 - description = '' 35 + description = lib.mdDoc '' 36 36 Enable Matomo web analytics with php-fpm backend. 37 37 Either the nginx option or the webServerUser option is mandatory. 38 38 ''; ··· 40 40 41 41 package = mkOption { 42 42 type = types.package; 43 - description = '' 43 + description = lib.mdDoc '' 44 44 Matomo package for the service to use. 45 45 This can be used to point to newer releases from nixos-unstable, 46 46 as they don't get backported if they are not security-relevant. ··· 64 64 periodicArchiveProcessing = mkOption { 65 65 type = types.bool; 66 66 default = true; 67 - description = '' 67 + description = lib.mdDoc '' 68 68 Enable periodic archive processing, which generates aggregated reports from the visits. 69 69 70 70 This means that you can safely disable browser triggers for Matomo archiving, 71 71 and safely enable to delete old visitor logs. 72 72 Before deleting visitor logs, 73 - make sure though that you run <literal>systemctl start matomo-archive-processing.service</literal> 73 + make sure though that you run `systemctl start matomo-archive-processing.service` 74 74 at least once without errors if you have already collected data before. 75 75 ''; 76 76 }; ··· 84 84 else "${user}.''${config.${options.networking.hostName}}" 85 85 ''; 86 86 example = "matomo.yourdomain.org"; 87 - description = '' 87 + description = lib.mdDoc '' 88 88 URL of the host, without https prefix. You may want to change it if you 89 89 run Matomo on a different URL than matomo.yourdomain. 90 90 ''; ··· 112 112 enableACME = false; 113 113 } 114 114 ''; 115 - description = '' 115 + description = lib.mdDoc '' 116 116 With this option, you can customize an nginx virtualHost which already has sensible defaults for Matomo. 117 117 Either this option or the webServerUser option is mandatory. 118 118 Set this to {} to just enable the virtualHost if you don't need any customization. 119 - If enabled, then by default, the <option>serverName</option> is 120 - <literal>''${user}.''${config.networking.hostName}.''${config.networking.domain}</literal>, 119 + If enabled, then by default, the {option}`serverName` is 120 + `''${user}.''${config.networking.hostName}.''${config.networking.domain}`, 121 121 SSL is active, and certificates are acquired via ACME. 122 122 If this is set to null (the default), no nginx virtualHost will be configured. 123 123 '';
+27 -27
nixos/modules/services/web-apps/mediawiki.nix
··· 177 177 type = types.package; 178 178 default = pkgs.mediawiki; 179 179 defaultText = literalExpression "pkgs.mediawiki"; 180 - description = "Which MediaWiki package to use."; 180 + description = lib.mdDoc "Which MediaWiki package to use."; 181 181 }; 182 182 183 183 name = mkOption { 184 184 type = types.str; 185 185 default = "MediaWiki"; 186 186 example = "Foobar Wiki"; 187 - description = "Name of the wiki."; 187 + description = lib.mdDoc "Name of the wiki."; 188 188 }; 189 189 190 190 uploadsDir = mkOption { 191 191 type = types.nullOr types.path; 192 192 default = "${stateDir}/uploads"; 193 - description = '' 193 + description = lib.mdDoc '' 194 194 This directory is used for uploads of pictures. The directory passed here is automatically 195 195 created and permissions adjusted as required. 196 196 ''; ··· 198 198 199 199 passwordFile = mkOption { 200 200 type = types.path; 201 - description = "A file containing the initial password for the admin user."; 201 + description = lib.mdDoc "A file containing the initial password for the admin user."; 202 202 example = "/run/keys/mediawiki-password"; 203 203 }; 204 204 205 205 skins = mkOption { 206 206 default = {}; 207 207 type = types.attrsOf types.path; 208 - description = '' 209 - Attribute set of paths whose content is copied to the <filename>skins</filename> 208 + description = lib.mdDoc '' 209 + Attribute set of paths whose content is copied to the {file}`skins` 210 210 subdirectory of the MediaWiki installation in addition to the default skins. 211 211 ''; 212 212 }; ··· 214 214 extensions = mkOption { 215 215 default = {}; 216 216 type = types.attrsOf (types.nullOr types.path); 217 - description = '' 218 - Attribute set of paths whose content is copied to the <filename>extensions</filename> 217 + description = lib.mdDoc '' 218 + Attribute set of paths whose content is copied to the {file}`extensions` 219 219 subdirectory of the MediaWiki installation and enabled in configuration. 220 220 221 - Use <literal>null</literal> instead of path to enable extensions that are part of MediaWiki. 221 + Use `null` instead of path to enable extensions that are part of MediaWiki. 222 222 ''; 223 223 example = literalExpression '' 224 224 { ··· 235 235 type = mkOption { 236 236 type = types.enum [ "mysql" "postgres" "sqlite" "mssql" "oracle" ]; 237 237 default = "mysql"; 238 - description = "Database engine to use. MySQL/MariaDB is the database of choice by MediaWiki developers."; 238 + description = lib.mdDoc "Database engine to use. MySQL/MariaDB is the database of choice by MediaWiki developers."; 239 239 }; 240 240 241 241 host = mkOption { 242 242 type = types.str; 243 243 default = "localhost"; 244 - description = "Database host address."; 244 + description = lib.mdDoc "Database host address."; 245 245 }; 246 246 247 247 port = mkOption { 248 248 type = types.port; 249 249 default = 3306; 250 - description = "Database host port."; 250 + description = lib.mdDoc "Database host port."; 251 251 }; 252 252 253 253 name = mkOption { 254 254 type = types.str; 255 255 default = "mediawiki"; 256 - description = "Database name."; 256 + description = lib.mdDoc "Database name."; 257 257 }; 258 258 259 259 user = mkOption { 260 260 type = types.str; 261 261 default = "mediawiki"; 262 - description = "Database user."; 262 + description = lib.mdDoc "Database user."; 263 263 }; 264 264 265 265 passwordFile = mkOption { 266 266 type = types.nullOr types.path; 267 267 default = null; 268 268 example = "/run/keys/mediawiki-dbpassword"; 269 - description = '' 269 + description = lib.mdDoc '' 270 270 A file containing the password corresponding to 271 - <option>database.user</option>. 271 + {option}`database.user`. 272 272 ''; 273 273 }; 274 274 275 275 tablePrefix = mkOption { 276 276 type = types.nullOr types.str; 277 277 default = null; 278 - description = '' 278 + description = lib.mdDoc '' 279 279 If you only have access to a single database and wish to install more than 280 280 one version of MediaWiki, or have other applications that also use the 281 281 database, you can give the table names a unique prefix to stop any naming 282 282 conflicts or confusion. 283 - See <link xlink:href="https://www.mediawiki.org/wiki/Manual:$wgDBprefix"/>. 283 + See <https://www.mediawiki.org/wiki/Manual:$wgDBprefix>. 284 284 ''; 285 285 }; 286 286 ··· 288 288 type = types.nullOr types.path; 289 289 default = if cfg.database.createLocally then "/run/mysqld/mysqld.sock" else null; 290 290 defaultText = literalExpression "/run/mysqld/mysqld.sock"; 291 - description = "Path to the unix socket file to use for authentication."; 291 + description = lib.mdDoc "Path to the unix socket file to use for authentication."; 292 292 }; 293 293 294 294 createLocally = mkOption { 295 295 type = types.bool; 296 296 default = cfg.database.type == "mysql"; 297 297 defaultText = literalExpression "true"; 298 - description = '' 298 + description = lib.mdDoc '' 299 299 Create the database and database user locally. 300 300 This currently only applies if database type "mysql" is selected. 301 301 ''; ··· 312 312 enableACME = true; 313 313 } 314 314 ''; 315 - description = '' 316 - Apache configuration can be done by adapting <option>services.httpd.virtualHosts</option>. 317 - See <xref linkend="opt-services.httpd.virtualHosts"/> for further information. 315 + description = lib.mdDoc '' 316 + Apache configuration can be done by adapting {option}`services.httpd.virtualHosts`. 317 + See [](#opt-services.httpd.virtualHosts) for further information. 318 318 ''; 319 319 }; 320 320 ··· 328 328 "pm.max_spare_servers" = 4; 329 329 "pm.max_requests" = 500; 330 330 }; 331 - description = '' 332 - Options for the MediaWiki PHP pool. See the documentation on <literal>php-fpm.conf</literal> 331 + description = lib.mdDoc '' 332 + Options for the MediaWiki PHP pool. See the documentation on `php-fpm.conf` 333 333 for details on configuration directives. 334 334 ''; 335 335 }; 336 336 337 337 extraConfig = mkOption { 338 338 type = types.lines; 339 - description = '' 339 + description = lib.mdDoc '' 340 340 Any additional text to be appended to MediaWiki's 341 341 LocalSettings.php configuration file. For configuration 342 - settings, see <link xlink:href="https://www.mediawiki.org/wiki/Manual:Configuration_settings"/>. 342 + settings, see <https://www.mediawiki.org/wiki/Manual:Configuration_settings>. 343 343 ''; 344 344 default = ""; 345 345 example = ''
+17 -17
nixos/modules/services/web-apps/moodle.nix
··· 68 68 type = types.package; 69 69 default = pkgs.moodle; 70 70 defaultText = literalExpression "pkgs.moodle"; 71 - description = "The Moodle package to use."; 71 + description = lib.mdDoc "The Moodle package to use."; 72 72 }; 73 73 74 74 initialPassword = mkOption { 75 75 type = types.str; 76 76 example = "correcthorsebatterystaple"; 77 - description = '' 77 + description = lib.mdDoc '' 78 78 Specifies the initial password for the admin, i.e. the password assigned if the user does not already exist. 79 79 The password specified here is world-readable in the Nix store, so it should be changed promptly. 80 80 ''; ··· 84 84 type = mkOption { 85 85 type = types.enum [ "mysql" "pgsql" ]; 86 86 default = "mysql"; 87 - description = "Database engine to use."; 87 + description = lib.mdDoc "Database engine to use."; 88 88 }; 89 89 90 90 host = mkOption { 91 91 type = types.str; 92 92 default = "localhost"; 93 - description = "Database host address."; 93 + description = lib.mdDoc "Database host address."; 94 94 }; 95 95 96 96 port = mkOption { 97 97 type = types.int; 98 - description = "Database host port."; 98 + description = lib.mdDoc "Database host port."; 99 99 default = { 100 100 mysql = 3306; 101 101 pgsql = 5432; ··· 106 106 name = mkOption { 107 107 type = types.str; 108 108 default = "moodle"; 109 - description = "Database name."; 109 + description = lib.mdDoc "Database name."; 110 110 }; 111 111 112 112 user = mkOption { 113 113 type = types.str; 114 114 default = "moodle"; 115 - description = "Database user."; 115 + description = lib.mdDoc "Database user."; 116 116 }; 117 117 118 118 passwordFile = mkOption { 119 119 type = types.nullOr types.path; 120 120 default = null; 121 121 example = "/run/keys/moodle-dbpassword"; 122 - description = '' 122 + description = lib.mdDoc '' 123 123 A file containing the password corresponding to 124 - <option>database.user</option>. 124 + {option}`database.user`. 125 125 ''; 126 126 }; 127 127 ··· 132 132 else if pgsqlLocal then "/run/postgresql" 133 133 else null; 134 134 defaultText = literalExpression "/run/mysqld/mysqld.sock"; 135 - description = "Path to the unix socket file to use for authentication."; 135 + description = lib.mdDoc "Path to the unix socket file to use for authentication."; 136 136 }; 137 137 138 138 createLocally = mkOption { ··· 152 152 enableACME = true; 153 153 } 154 154 ''; 155 - description = '' 156 - Apache configuration can be done by adapting <option>services.httpd.virtualHosts</option>. 157 - See <xref linkend="opt-services.httpd.virtualHosts"/> for further information. 155 + description = lib.mdDoc '' 156 + Apache configuration can be done by adapting {option}`services.httpd.virtualHosts`. 157 + See [](#opt-services.httpd.virtualHosts) for further information. 158 158 ''; 159 159 }; 160 160 ··· 168 168 "pm.max_spare_servers" = 4; 169 169 "pm.max_requests" = 500; 170 170 }; 171 - description = '' 172 - Options for the Moodle PHP pool. See the documentation on <literal>php-fpm.conf</literal> 171 + description = lib.mdDoc '' 172 + Options for the Moodle PHP pool. See the documentation on `php-fpm.conf` 173 173 for details on configuration directives. 174 174 ''; 175 175 }; ··· 177 177 extraConfig = mkOption { 178 178 type = types.lines; 179 179 default = ""; 180 - description = '' 180 + description = lib.mdDoc '' 181 181 Any additional text to be appended to the config.php 182 182 configuration file. This is a PHP script. For configuration 183 - details, see <link xlink:href="https://docs.moodle.org/37/en/Configuration_file"/>. 183 + details, see <https://docs.moodle.org/37/en/Configuration_file>. 184 184 ''; 185 185 example = '' 186 186 $CFG->disableupdatenotifications = true;
+38 -38
nixos/modules/services/web-apps/snipe-it.nix
··· 32 32 33 33 user = mkOption { 34 34 default = "snipeit"; 35 - description = "User snipe-it runs as."; 35 + description = lib.mdDoc "User snipe-it runs as."; 36 36 type = types.str; 37 37 }; 38 38 39 39 group = mkOption { 40 40 default = "snipeit"; 41 - description = "Group snipe-it runs as."; 41 + description = lib.mdDoc "Group snipe-it runs as."; 42 42 type = types.str; 43 43 }; 44 44 45 45 appKeyFile = mkOption { 46 - description = '' 46 + description = lib.mdDoc '' 47 47 A file containing the Laravel APP_KEY - a 32 character long, 48 48 base64 encoded key used for encryption where needed. Can be 49 - generated with <literal>head -c 32 /dev/urandom | base64</literal>. 49 + generated with `head -c 32 /dev/urandom | base64`. 50 50 ''; 51 51 example = "/run/keys/snipe-it/appkey"; 52 52 type = types.path; ··· 60 60 config.networking.hostName; 61 61 defaultText = lib.literalExpression "config.networking.fqdn"; 62 62 example = "snipe-it.example.com"; 63 - description = '' 63 + description = lib.mdDoc '' 64 64 The hostname to serve Snipe-IT on. 65 65 ''; 66 66 }; 67 67 68 68 appURL = mkOption { 69 - description = '' 69 + description = lib.mdDoc '' 70 70 The root URL that you want to host Snipe-IT on. All URLs in Snipe-IT will be generated using this value. 71 71 If you change this in the future you may need to run a command to update stored URLs in the database. 72 - Command example: <literal>snipe-it snipe-it:update-url https://old.example.com https://new.example.com</literal> 72 + Command example: `snipe-it snipe-it:update-url https://old.example.com https://new.example.com` 73 73 ''; 74 74 default = "http${lib.optionalString tlsEnabled "s"}://${cfg.hostName}"; 75 75 defaultText = '' ··· 80 80 }; 81 81 82 82 dataDir = mkOption { 83 - description = "snipe-it data directory"; 83 + description = lib.mdDoc "snipe-it data directory"; 84 84 default = "/var/lib/snipe-it"; 85 85 type = types.path; 86 86 }; ··· 89 89 host = mkOption { 90 90 type = types.str; 91 91 default = "localhost"; 92 - description = "Database host address."; 92 + description = lib.mdDoc "Database host address."; 93 93 }; 94 94 port = mkOption { 95 95 type = types.port; 96 96 default = 3306; 97 - description = "Database host port."; 97 + description = lib.mdDoc "Database host port."; 98 98 }; 99 99 name = mkOption { 100 100 type = types.str; 101 101 default = "snipeit"; 102 - description = "Database name."; 102 + description = lib.mdDoc "Database name."; 103 103 }; 104 104 user = mkOption { 105 105 type = types.str; 106 106 default = user; 107 107 defaultText = literalExpression "user"; 108 - description = "Database username."; 108 + description = lib.mdDoc "Database username."; 109 109 }; 110 110 passwordFile = mkOption { 111 111 type = with types; nullOr path; 112 112 default = null; 113 113 example = "/run/keys/snipe-it/dbpassword"; 114 - description = '' 114 + description = lib.mdDoc '' 115 115 A file containing the password corresponding to 116 - <option>database.user</option>. 116 + {option}`database.user`. 117 117 ''; 118 118 }; 119 119 createLocally = mkOption { 120 120 type = types.bool; 121 121 default = false; 122 - description = "Create the database and database user locally."; 122 + description = lib.mdDoc "Create the database and database user locally."; 123 123 }; 124 124 }; 125 125 ··· 127 127 driver = mkOption { 128 128 type = types.enum [ "smtp" "sendmail" ]; 129 129 default = "smtp"; 130 - description = "Mail driver to use."; 130 + description = lib.mdDoc "Mail driver to use."; 131 131 }; 132 132 host = mkOption { 133 133 type = types.str; 134 134 default = "localhost"; 135 - description = "Mail host address."; 135 + description = lib.mdDoc "Mail host address."; 136 136 }; 137 137 port = mkOption { 138 138 type = types.port; 139 139 default = 1025; 140 - description = "Mail host port."; 140 + description = lib.mdDoc "Mail host port."; 141 141 }; 142 142 encryption = mkOption { 143 143 type = with types; nullOr (enum [ "tls" "ssl" ]); 144 144 default = null; 145 - description = "SMTP encryption mechanism to use."; 145 + description = lib.mdDoc "SMTP encryption mechanism to use."; 146 146 }; 147 147 user = mkOption { 148 148 type = with types; nullOr str; 149 149 default = null; 150 150 example = "snipeit"; 151 - description = "Mail username."; 151 + description = lib.mdDoc "Mail username."; 152 152 }; 153 153 passwordFile = mkOption { 154 154 type = with types; nullOr path; 155 155 default = null; 156 156 example = "/run/keys/snipe-it/mailpassword"; 157 - description = '' 157 + description = lib.mdDoc '' 158 158 A file containing the password corresponding to 159 - <option>mail.user</option>. 159 + {option}`mail.user`. 160 160 ''; 161 161 }; 162 162 backupNotificationAddress = mkOption { 163 163 type = types.str; 164 164 default = "backup@example.com"; 165 - description = "Email Address to send Backup Notifications to."; 165 + description = lib.mdDoc "Email Address to send Backup Notifications to."; 166 166 }; 167 167 from = { 168 168 name = mkOption { 169 169 type = types.str; 170 170 default = "Snipe-IT Asset Management"; 171 - description = "Mail \"from\" name."; 171 + description = lib.mdDoc "Mail \"from\" name."; 172 172 }; 173 173 address = mkOption { 174 174 type = types.str; 175 175 default = "mail@example.com"; 176 - description = "Mail \"from\" address."; 176 + description = lib.mdDoc "Mail \"from\" address."; 177 177 }; 178 178 }; 179 179 replyTo = { 180 180 name = mkOption { 181 181 type = types.str; 182 182 default = "Snipe-IT Asset Management"; 183 - description = "Mail \"reply-to\" name."; 183 + description = lib.mdDoc "Mail \"reply-to\" name."; 184 184 }; 185 185 address = mkOption { 186 186 type = types.str; 187 187 default = "mail@example.com"; 188 - description = "Mail \"reply-to\" address."; 188 + description = lib.mdDoc "Mail \"reply-to\" address."; 189 189 }; 190 190 }; 191 191 }; ··· 194 194 type = types.str; 195 195 default = "18M"; 196 196 example = "1G"; 197 - description = "The maximum size for uploads (e.g. images)."; 197 + description = lib.mdDoc "The maximum size for uploads (e.g. images)."; 198 198 }; 199 199 200 200 poolConfig = mkOption { ··· 207 207 "pm.max_spare_servers" = 4; 208 208 "pm.max_requests" = 500; 209 209 }; 210 - description = '' 211 - Options for the snipe-it PHP pool. See the documentation on <literal>php-fpm.conf</literal> 210 + description = lib.mdDoc '' 211 + Options for the snipe-it PHP pool. See the documentation on `php-fpm.conf` 212 212 for details on configuration directives. 213 213 ''; 214 214 }; ··· 229 229 enableACME = true; 230 230 } 231 231 ''; 232 - description = '' 232 + description = lib.mdDoc '' 233 233 With this option, you can customize the nginx virtualHost settings. 234 234 ''; 235 235 }; ··· 272 272 OIDC_ISSUER_DISCOVER = true; 273 273 } 274 274 ''; 275 - description = '' 275 + description = lib.mdDoc '' 276 276 Snipe-IT configuration options to set in the 277 - <filename>.env</filename> file. 278 - Refer to <link xlink:href="https://snipe-it.readme.io/docs/configuration"/> 277 + {file}`.env` file. 278 + Refer to <https://snipe-it.readme.io/docs/configuration> 279 279 for details on supported values. 280 280 281 281 Settings containing secret data should be set to an attribute 282 - set containing the attribute <literal>_secret</literal> - a 282 + set containing the attribute `_secret` - a 283 283 string pointing to a file containing the value the option 284 284 should be set to. See the example to get a better picture of 285 - this: in the resulting <filename>.env</filename> file, the 286 - <literal>OIDC_CLIENT_SECRET</literal> key will be set to the 287 - contents of the <filename>/run/keys/oidc_secret</filename> 285 + this: in the resulting {file}`.env` file, the 286 + `OIDC_CLIENT_SECRET` key will be set to the 287 + contents of the {file}`/run/keys/oidc_secret` 288 288 file. 289 289 ''; 290 290 };
+24 -24
nixos/modules/services/web-apps/wordpress.nix
··· 82 82 type = types.package; 83 83 default = pkgs.wordpress; 84 84 defaultText = literalExpression "pkgs.wordpress"; 85 - description = "Which WordPress package to use."; 85 + description = lib.mdDoc "Which WordPress package to use."; 86 86 }; 87 87 88 88 uploadsDir = mkOption { 89 89 type = types.path; 90 90 default = "/var/lib/wordpress/${name}/uploads"; 91 - description = '' 91 + description = lib.mdDoc '' 92 92 This directory is used for uploads of pictures. The directory passed here is automatically 93 93 created and permissions adjusted as required. 94 94 ''; ··· 152 152 host = mkOption { 153 153 type = types.str; 154 154 default = "localhost"; 155 - description = "Database host address."; 155 + description = lib.mdDoc "Database host address."; 156 156 }; 157 157 158 158 port = mkOption { 159 159 type = types.port; 160 160 default = 3306; 161 - description = "Database host port."; 161 + description = lib.mdDoc "Database host port."; 162 162 }; 163 163 164 164 name = mkOption { 165 165 type = types.str; 166 166 default = "wordpress"; 167 - description = "Database name."; 167 + description = lib.mdDoc "Database name."; 168 168 }; 169 169 170 170 user = mkOption { 171 171 type = types.str; 172 172 default = "wordpress"; 173 - description = "Database user."; 173 + description = lib.mdDoc "Database user."; 174 174 }; 175 175 176 176 passwordFile = mkOption { 177 177 type = types.nullOr types.path; 178 178 default = null; 179 179 example = "/run/keys/wordpress-dbpassword"; 180 - description = '' 180 + description = lib.mdDoc '' 181 181 A file containing the password corresponding to 182 - <option>database.user</option>. 182 + {option}`database.user`. 183 183 ''; 184 184 }; 185 185 186 186 tablePrefix = mkOption { 187 187 type = types.str; 188 188 default = "wp_"; 189 - description = '' 189 + description = lib.mdDoc '' 190 190 The $table_prefix is the value placed in the front of your database tables. 191 191 Change the value if you want to use something other than wp_ for your database 192 192 prefix. Typically this is changed if you are installing multiple WordPress blogs 193 193 in the same database. 194 194 195 - See <link xlink:href="https://codex.wordpress.org/Editing_wp-config.php#table_prefix"/>. 195 + See <https://codex.wordpress.org/Editing_wp-config.php#table_prefix>. 196 196 ''; 197 197 }; 198 198 ··· 200 200 type = types.nullOr types.path; 201 201 default = null; 202 202 defaultText = literalExpression "/run/mysqld/mysqld.sock"; 203 - description = "Path to the unix socket file to use for authentication."; 203 + description = lib.mdDoc "Path to the unix socket file to use for authentication."; 204 204 }; 205 205 206 206 createLocally = mkOption { 207 207 type = types.bool; 208 208 default = true; 209 - description = "Create the database and database user locally."; 209 + description = lib.mdDoc "Create the database and database user locally."; 210 210 }; 211 211 }; 212 212 ··· 219 219 enableACME = true; 220 220 } 221 221 ''; 222 - description = '' 223 - Apache configuration can be done by adapting <option>services.httpd.virtualHosts</option>. 222 + description = lib.mdDoc '' 223 + Apache configuration can be done by adapting {option}`services.httpd.virtualHosts`. 224 224 ''; 225 225 }; 226 226 ··· 234 234 "pm.max_spare_servers" = 4; 235 235 "pm.max_requests" = 500; 236 236 }; 237 - description = '' 238 - Options for the WordPress PHP pool. See the documentation on <literal>php-fpm.conf</literal> 237 + description = lib.mdDoc '' 238 + Options for the WordPress PHP pool. See the documentation on `php-fpm.conf` 239 239 for details on configuration directives. 240 240 ''; 241 241 }; ··· 243 243 extraConfig = mkOption { 244 244 type = types.lines; 245 245 default = ""; 246 - description = '' 246 + description = lib.mdDoc '' 247 247 Any additional text to be appended to the wp-config.php 248 248 configuration file. This is a PHP script. For configuration 249 - settings, see <link xlink:href="https://codex.wordpress.org/Editing_wp-config.php"/>. 249 + settings, see <https://codex.wordpress.org/Editing_wp-config.php>. 250 250 ''; 251 251 example = '' 252 252 define( 'AUTOSAVE_INTERVAL', 60 ); // Seconds ··· 265 265 sites = mkOption { 266 266 type = types.attrsOf (types.submodule siteOpts); 267 267 default = {}; 268 - description = "Specification of one or more WordPress sites to serve"; 268 + description = lib.mdDoc "Specification of one or more WordPress sites to serve"; 269 269 }; 270 270 271 271 webserver = mkOption { 272 272 type = types.enum [ "httpd" "nginx" "caddy" ]; 273 273 default = "httpd"; 274 - description = '' 274 + description = lib.mdDoc '' 275 275 Whether to use apache2 or nginx for virtual host management. 276 276 277 - Further nginx configuration can be done by adapting <literal>services.nginx.virtualHosts.&lt;name&gt;</literal>. 278 - See <xref linkend="opt-services.nginx.virtualHosts"/> for further information. 277 + Further nginx configuration can be done by adapting `services.nginx.virtualHosts.<name>`. 278 + See [](#opt-services.nginx.virtualHosts) for further information. 279 279 280 - Further apache2 configuration can be done by adapting <literal>services.httpd.virtualHosts.&lt;name&gt;</literal>. 281 - See <xref linkend="opt-services.httpd.virtualHosts"/> for further information. 280 + Further apache2 configuration can be done by adapting `services.httpd.virtualHosts.<name>`. 281 + See [](#opt-services.httpd.virtualHosts) for further information. 282 282 ''; 283 283 }; 284 284
+18 -18
nixos/modules/services/web-apps/zabbix.nix
··· 46 46 type = types.package; 47 47 default = pkgs.zabbix.web; 48 48 defaultText = literalExpression "zabbix.web"; 49 - description = "Which Zabbix package to use."; 49 + description = lib.mdDoc "Which Zabbix package to use."; 50 50 }; 51 51 52 52 server = { 53 53 port = mkOption { 54 54 type = types.int; 55 - description = "The port of the Zabbix server to connect to."; 55 + description = lib.mdDoc "The port of the Zabbix server to connect to."; 56 56 default = 10051; 57 57 }; 58 58 59 59 address = mkOption { 60 60 type = types.str; 61 - description = "The IP address or hostname of the Zabbix server to connect to."; 61 + description = lib.mdDoc "The IP address or hostname of the Zabbix server to connect to."; 62 62 default = "localhost"; 63 63 }; 64 64 }; ··· 68 68 type = types.enum [ "mysql" "pgsql" "oracle" ]; 69 69 example = "mysql"; 70 70 default = "pgsql"; 71 - description = "Database engine to use."; 71 + description = lib.mdDoc "Database engine to use."; 72 72 }; 73 73 74 74 host = mkOption { 75 75 type = types.str; 76 76 default = ""; 77 - description = "Database host address."; 77 + description = lib.mdDoc "Database host address."; 78 78 }; 79 79 80 80 port = mkOption { ··· 88 88 else if config.${opt.database.type} == "pgsql" then config.${options.services.postgresql.port} 89 89 else 1521 90 90 ''; 91 - description = "Database host port."; 91 + description = lib.mdDoc "Database host port."; 92 92 }; 93 93 94 94 name = mkOption { 95 95 type = types.str; 96 96 default = "zabbix"; 97 - description = "Database name."; 97 + description = lib.mdDoc "Database name."; 98 98 }; 99 99 100 100 user = mkOption { 101 101 type = types.str; 102 102 default = "zabbix"; 103 - description = "Database user."; 103 + description = lib.mdDoc "Database user."; 104 104 }; 105 105 106 106 passwordFile = mkOption { 107 107 type = types.nullOr types.path; 108 108 default = null; 109 109 example = "/run/keys/zabbix-dbpassword"; 110 - description = '' 110 + description = lib.mdDoc '' 111 111 A file containing the password corresponding to 112 - <option>database.user</option>. 112 + {option}`database.user`. 113 113 ''; 114 114 }; 115 115 ··· 117 117 type = types.nullOr types.path; 118 118 default = null; 119 119 example = "/run/postgresql"; 120 - description = "Path to the unix socket file to use for authentication."; 120 + description = lib.mdDoc "Path to the unix socket file to use for authentication."; 121 121 }; 122 122 }; 123 123 ··· 131 131 enableACME = true; 132 132 } 133 133 ''; 134 - description = '' 135 - Apache configuration can be done by adapting <literal>services.httpd.virtualHosts.&lt;name&gt;</literal>. 136 - See <xref linkend="opt-services.httpd.virtualHosts"/> for further information. 134 + description = lib.mdDoc '' 135 + Apache configuration can be done by adapting `services.httpd.virtualHosts.<name>`. 136 + See [](#opt-services.httpd.virtualHosts) for further information. 137 137 ''; 138 138 }; 139 139 ··· 147 147 "pm.max_spare_servers" = 4; 148 148 "pm.max_requests" = 500; 149 149 }; 150 - description = '' 151 - Options for the Zabbix PHP pool. See the documentation on <literal>php-fpm.conf</literal> for details on configuration directives. 150 + description = lib.mdDoc '' 151 + Options for the Zabbix PHP pool. See the documentation on `php-fpm.conf` for details on configuration directives. 152 152 ''; 153 153 }; 154 154 155 155 extraConfig = mkOption { 156 156 type = types.lines; 157 157 default = ""; 158 - description = '' 159 - Additional configuration to be copied verbatim into <filename>zabbix.conf.php</filename>. 158 + description = lib.mdDoc '' 159 + Additional configuration to be copied verbatim into {file}`zabbix.conf.php`. 160 160 ''; 161 161 }; 162 162
+29 -29
nixos/modules/services/web-servers/apache-httpd/default.nix
··· 410 410 type = types.package; 411 411 default = pkgs.apacheHttpd; 412 412 defaultText = literalExpression "pkgs.apacheHttpd"; 413 - description = '' 413 + description = lib.mdDoc '' 414 414 Overridable attribute of the Apache HTTP Server package to use. 415 415 ''; 416 416 }; ··· 420 420 default = confFile; 421 421 defaultText = literalExpression "confFile"; 422 422 example = literalExpression ''pkgs.writeText "httpd.conf" "# my custom config file ..."''; 423 - description = '' 423 + description = lib.mdDoc '' 424 424 Override the configuration file used by Apache. By default, 425 425 NixOS generates one automatically. 426 426 ''; ··· 429 429 extraConfig = mkOption { 430 430 type = types.lines; 431 431 default = ""; 432 - description = '' 432 + description = lib.mdDoc '' 433 433 Configuration lines appended to the generated Apache 434 434 configuration file. Note that this mechanism will not work 435 - when <option>configFile</option> is overridden. 435 + when {option}`configFile` is overridden. 436 436 ''; 437 437 }; 438 438 ··· 457 457 adminAddr = mkOption { 458 458 type = types.str; 459 459 example = "admin@example.org"; 460 - description = "E-mail address of the server administrator."; 460 + description = lib.mdDoc "E-mail address of the server administrator."; 461 461 }; 462 462 463 463 logFormat = mkOption { 464 464 type = types.str; 465 465 default = "common"; 466 466 example = "combined"; 467 - description = '' 467 + description = lib.mdDoc '' 468 468 Log format for log files. Possible values are: combined, common, referer, agent, none. 469 - See <link xlink:href="https://httpd.apache.org/docs/2.4/logs.html"/> for more details. 469 + See <https://httpd.apache.org/docs/2.4/logs.html> for more details. 470 470 ''; 471 471 }; 472 472 473 473 logPerVirtualHost = mkOption { 474 474 type = types.bool; 475 475 default = true; 476 - description = '' 476 + description = lib.mdDoc '' 477 477 If enabled, each virtual host gets its own 478 - <filename>access.log</filename> and 479 - <filename>error.log</filename>, namely suffixed by the 480 - <option>hostName</option> of the virtual host. 478 + {file}`access.log` and 479 + {file}`error.log`, namely suffixed by the 480 + {option}`hostName` of the virtual host. 481 481 ''; 482 482 }; 483 483 ··· 498 498 group = mkOption { 499 499 type = types.str; 500 500 default = "wwwrun"; 501 - description = '' 501 + description = lib.mdDoc '' 502 502 Group under which httpd children processes run. 503 503 ''; 504 504 }; ··· 506 506 logDir = mkOption { 507 507 type = types.path; 508 508 default = "/var/log/httpd"; 509 - description = '' 509 + description = lib.mdDoc '' 510 510 Directory for Apache's log files. It is created automatically. 511 511 ''; 512 512 }; ··· 537 537 }; 538 538 } 539 539 ''; 540 - description = '' 540 + description = lib.mdDoc '' 541 541 Specification of the virtual hosts served by Apache. Each 542 542 element should be an attribute set specifying the 543 543 configuration of the virtual host. ··· 547 547 enableMellon = mkOption { 548 548 type = types.bool; 549 549 default = false; 550 - description = "Whether to enable the mod_auth_mellon module."; 550 + description = lib.mdDoc "Whether to enable the mod_auth_mellon module."; 551 551 }; 552 552 553 553 enablePHP = mkOption { 554 554 type = types.bool; 555 555 default = false; 556 - description = "Whether to enable the PHP module."; 556 + description = lib.mdDoc "Whether to enable the PHP module."; 557 557 }; 558 558 559 559 phpPackage = mkOption { 560 560 type = types.package; 561 561 default = pkgs.php; 562 562 defaultText = literalExpression "pkgs.php"; 563 - description = '' 563 + description = lib.mdDoc '' 564 564 Overridable attribute of the PHP package to use. 565 565 ''; 566 566 }; ··· 568 568 enablePerl = mkOption { 569 569 type = types.bool; 570 570 default = false; 571 - description = "Whether to enable the Perl module (mod_perl)."; 571 + description = lib.mdDoc "Whether to enable the Perl module (mod_perl)."; 572 572 }; 573 573 574 574 phpOptions = mkOption { ··· 578 578 '' 579 579 date.timezone = "CET" 580 580 ''; 581 - description = '' 582 - Options appended to the PHP configuration file <filename>php.ini</filename>. 581 + description = lib.mdDoc '' 582 + Options appended to the PHP configuration file {file}`php.ini`. 583 583 ''; 584 584 }; 585 585 ··· 588 588 default = "event"; 589 589 example = "worker"; 590 590 description = 591 - '' 591 + lib.mdDoc '' 592 592 Multi-processing module to be used by Apache. Available 593 - modules are <literal>prefork</literal> (handles each 594 - request in a separate child process), <literal>worker</literal> 593 + modules are `prefork` (handles each 594 + request in a separate child process), `worker` 595 595 (hybrid approach that starts a number of child processes 596 - each running a number of threads) and <literal>event</literal> 597 - (the default; a recent variant of <literal>worker</literal> 596 + each running a number of threads) and `event` 597 + (the default; a recent variant of `worker` 598 598 that handles persistent connections more efficiently). 599 599 ''; 600 600 }; ··· 603 603 type = types.int; 604 604 default = 150; 605 605 example = 8; 606 - description = "Maximum number of httpd processes (prefork)"; 606 + description = lib.mdDoc "Maximum number of httpd processes (prefork)"; 607 607 }; 608 608 609 609 maxRequestsPerChild = mkOption { 610 610 type = types.int; 611 611 default = 0; 612 612 example = 500; 613 - description = '' 613 + description = lib.mdDoc '' 614 614 Maximum number of httpd requests answered per httpd child (prefork), 0 means unlimited. 615 615 ''; 616 616 }; ··· 618 618 sslCiphers = mkOption { 619 619 type = types.str; 620 620 default = "HIGH:!aNULL:!MD5:!EXP"; 621 - description = "Cipher Suite available for negotiation in SSL proxy handshake."; 621 + description = lib.mdDoc "Cipher Suite available for negotiation in SSL proxy handshake."; 622 622 }; 623 623 624 624 sslProtocols = mkOption { 625 625 type = types.str; 626 626 default = "All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1"; 627 627 example = "All -SSLv2 -SSLv3"; 628 - description = "Allowed SSL/TLS protocol versions."; 628 + description = lib.mdDoc "Allowed SSL/TLS protocol versions."; 629 629 }; 630 630 }; 631 631
+35 -35
nixos/modules/services/web-servers/apache-httpd/vhost-options.nix
··· 8 8 hostName = mkOption { 9 9 type = types.str; 10 10 default = name; 11 - description = "Canonical hostname for the server."; 11 + description = lib.mdDoc "Canonical hostname for the server."; 12 12 }; 13 13 14 14 serverAliases = mkOption { 15 15 type = types.listOf types.str; 16 16 default = []; 17 17 example = ["www.example.org" "www.example.org:8080" "example.org"]; 18 - description = '' 18 + description = lib.mdDoc '' 19 19 Additional names of virtual hosts served by this virtual host configuration. 20 20 ''; 21 21 }; ··· 25 25 options = { 26 26 port = mkOption { 27 27 type = types.port; 28 - description = "Port to listen on"; 28 + description = lib.mdDoc "Port to listen on"; 29 29 }; 30 30 ip = mkOption { 31 31 type = types.str; 32 32 default = "*"; 33 - description = "IP to listen on. 0.0.0.0 for IPv4 only, * for all."; 33 + description = lib.mdDoc "IP to listen on. 0.0.0.0 for IPv4 only, * for all."; 34 34 }; 35 35 ssl = mkOption { 36 36 type = types.bool; 37 37 default = false; 38 - description = "Whether to enable SSL (https) support."; 38 + description = lib.mdDoc "Whether to enable SSL (https) support."; 39 39 }; 40 40 }; 41 41 })); ··· 61 61 listenAddresses = mkOption { 62 62 type = with types; nonEmptyListOf str; 63 63 64 - description = '' 64 + description = lib.mdDoc '' 65 65 Listen addresses for this virtual host. 66 - Compared to <literal>listen</literal> this only sets the addreses 66 + Compared to `listen` this only sets the addreses 67 67 and the ports are chosen automatically. 68 68 ''; 69 69 default = [ "*" ]; ··· 79 79 addSSL = mkOption { 80 80 type = types.bool; 81 81 default = false; 82 - description = '' 82 + description = lib.mdDoc '' 83 83 Whether to enable HTTPS in addition to plain HTTP. This will set defaults for 84 - <literal>listen</literal> to listen on all interfaces on the respective default 84 + `listen` to listen on all interfaces on the respective default 85 85 ports (80, 443). 86 86 ''; 87 87 }; ··· 89 89 onlySSL = mkOption { 90 90 type = types.bool; 91 91 default = false; 92 - description = '' 92 + description = lib.mdDoc '' 93 93 Whether to enable HTTPS and reject plain HTTP connections. This will set 94 - defaults for <literal>listen</literal> to listen on all interfaces on port 443. 94 + defaults for `listen` to listen on all interfaces on port 443. 95 95 ''; 96 96 }; 97 97 98 98 forceSSL = mkOption { 99 99 type = types.bool; 100 100 default = false; 101 - description = '' 101 + description = lib.mdDoc '' 102 102 Whether to add a separate nginx server block that permanently redirects (301) 103 103 all plain HTTP traffic to HTTPS. This will set defaults for 104 - <literal>listen</literal> to listen on all interfaces on the respective default 104 + `listen` to listen on all interfaces on the respective default 105 105 ports (80, 443), where the non-SSL listens are used for the redirect vhosts. 106 106 ''; 107 107 }; ··· 109 109 enableACME = mkOption { 110 110 type = types.bool; 111 111 default = false; 112 - description = '' 112 + description = lib.mdDoc '' 113 113 Whether to ask Let's Encrypt to sign a certificate for this vhost. 114 - Alternately, you can use an existing certificate through <option>useACMEHost</option>. 114 + Alternately, you can use an existing certificate through {option}`useACMEHost`. 115 115 ''; 116 116 }; 117 117 ··· 130 130 acmeRoot = mkOption { 131 131 type = types.nullOr types.str; 132 132 default = "/var/lib/acme/acme-challenge"; 133 - description = '' 133 + description = lib.mdDoc '' 134 134 Directory for the acme challenge which is PUBLIC, don't put certs or keys in here. 135 135 Set to null to inherit from config.security.acme. 136 136 ''; ··· 139 139 sslServerCert = mkOption { 140 140 type = types.path; 141 141 example = "/var/host.cert"; 142 - description = "Path to server SSL certificate."; 142 + description = lib.mdDoc "Path to server SSL certificate."; 143 143 }; 144 144 145 145 sslServerKey = mkOption { 146 146 type = types.path; 147 147 example = "/var/host.key"; 148 - description = "Path to server SSL certificate key."; 148 + description = lib.mdDoc "Path to server SSL certificate key."; 149 149 }; 150 150 151 151 sslServerChain = mkOption { 152 152 type = types.nullOr types.path; 153 153 default = null; 154 154 example = "/var/ca.pem"; 155 - description = "Path to server SSL chain file."; 155 + description = lib.mdDoc "Path to server SSL chain file."; 156 156 }; 157 157 158 158 http2 = mkOption { 159 159 type = types.bool; 160 160 default = true; 161 - description = '' 162 - Whether to enable HTTP 2. HTTP/2 is supported in all multi-processing modules that come with httpd. <emphasis>However, if you use the prefork mpm, there will 163 - be severe restrictions.</emphasis> Refer to <link xlink:href="https://httpd.apache.org/docs/2.4/howto/http2.html#mpm-config"/> for details. 161 + description = lib.mdDoc '' 162 + Whether to enable HTTP 2. HTTP/2 is supported in all multi-processing modules that come with httpd. *However, if you use the prefork mpm, there will 163 + be severe restrictions.* Refer to <https://httpd.apache.org/docs/2.4/howto/http2.html#mpm-config> for details. 164 164 ''; 165 165 }; 166 166 ··· 168 168 type = types.nullOr types.str; 169 169 default = null; 170 170 example = "admin@example.org"; 171 - description = "E-mail address of the server administrator."; 171 + description = lib.mdDoc "E-mail address of the server administrator."; 172 172 }; 173 173 174 174 documentRoot = mkOption { 175 175 type = types.nullOr types.path; 176 176 default = null; 177 177 example = "/data/webserver/docs"; 178 - description = '' 178 + description = lib.mdDoc '' 179 179 The path of Apache's document root directory. If left undefined, 180 180 an empty directory in the Nix store will be used as root. 181 181 ''; ··· 189 189 dir = "/home/eelco/Dev/nix-homepage"; 190 190 } 191 191 ]; 192 - description = '' 192 + description = lib.mdDoc '' 193 193 This option provides a simple way to serve static directories. 194 194 ''; 195 195 }; ··· 222 222 AllowOverride All 223 223 </Directory> 224 224 ''; 225 - description = '' 225 + description = lib.mdDoc '' 226 226 These lines go to httpd.conf verbatim. They will go after 227 227 directories and directory aliases defined by default. 228 228 ''; ··· 231 231 enableUserDir = mkOption { 232 232 type = types.bool; 233 233 default = false; 234 - description = '' 235 - Whether to enable serving <filename>~/public_html</filename> as 236 - <literal>/~«username»</literal>. 234 + description = lib.mdDoc '' 235 + Whether to enable serving {file}`~/public_html` as 236 + `/~«username»`. 237 237 ''; 238 238 }; 239 239 ··· 241 241 type = types.nullOr types.str; 242 242 default = null; 243 243 example = "http://newserver.example.org/"; 244 - description = '' 244 + description = lib.mdDoc '' 245 245 If set, all requests for this host are redirected permanently to 246 246 the given URL. 247 247 ''; ··· 251 251 type = types.str; 252 252 default = "common"; 253 253 example = "combined"; 254 - description = '' 254 + description = lib.mdDoc '' 255 255 Log format for Apache's log files. Possible values are: combined, common, referer, agent. 256 256 ''; 257 257 }; ··· 260 260 type = types.lines; 261 261 default = ""; 262 262 example = "Disallow: /foo/"; 263 - description = '' 264 - Specification of pages to be ignored by web crawlers. See <link xlink:href="http://www.robotstxt.org/"/> for details. 263 + description = lib.mdDoc '' 264 + Specification of pages to be ignored by web crawlers. See <http://www.robotstxt.org/> for details. 265 265 ''; 266 266 }; 267 267 ··· 278 278 }; 279 279 }; 280 280 ''; 281 - description = '' 282 - Declarative location config. See <link xlink:href="https://httpd.apache.org/docs/2.4/mod/core.html#location"/> for details. 281 + description = lib.mdDoc '' 282 + Declarative location config. See <https://httpd.apache.org/docs/2.4/mod/core.html#location> for details. 283 283 ''; 284 284 }; 285 285
+15 -15
nixos/modules/services/web-servers/caddy/default.nix
··· 86 86 default = pkgs.caddy; 87 87 defaultText = literalExpression "pkgs.caddy"; 88 88 type = types.package; 89 - description = '' 89 + description = lib.mdDoc '' 90 90 Caddy package to use. 91 91 ''; 92 92 }; ··· 133 133 example = literalExpression '' 134 134 mkForce "level INFO"; 135 135 ''; 136 - description = '' 136 + description = lib.mdDoc '' 137 137 Configuration for the default logger. See 138 - <link xlink:href="https://caddyserver.com/docs/caddyfile/options#log"/> 138 + <https://caddyserver.com/docs/caddyfile/options#log> 139 139 for details. 140 140 ''; 141 141 }; ··· 153 153 file_server 154 154 '''; 155 155 ''; 156 - description = '' 156 + description = lib.mdDoc '' 157 157 Override the configuration file used by Caddy. By default, 158 158 NixOS generates one automatically. 159 159 ''; ··· 178 178 resume = mkOption { 179 179 default = false; 180 180 type = types.bool; 181 - description = '' 182 - Use saved config, if any (and prefer over any specified configuration passed with <literal>--config</literal>). 181 + description = lib.mdDoc '' 182 + Use saved config, if any (and prefer over any specified configuration passed with `--config`). 183 183 ''; 184 184 }; 185 185 ··· 194 194 } 195 195 } 196 196 ''; 197 - description = '' 197 + description = lib.mdDoc '' 198 198 Additional lines of configuration appended to the global config section 199 - of the <literal>Caddyfile</literal>. 199 + of the `Caddyfile`. 200 200 201 - Refer to <link xlink:href="https://caddyserver.com/docs/caddyfile/options#global-options"/> 201 + Refer to <https://caddyserver.com/docs/caddyfile/options#global-options> 202 202 for details on supported values. 203 203 ''; 204 204 }; ··· 213 213 root /srv/http 214 214 } 215 215 ''; 216 - description = '' 216 + description = lib.mdDoc '' 217 217 Additional lines of configuration appended to the automatically 218 - generated <literal>Caddyfile</literal>. 218 + generated `Caddyfile`. 219 219 ''; 220 220 }; 221 221 ··· 233 233 }; 234 234 }; 235 235 ''; 236 - description = '' 236 + description = lib.mdDoc '' 237 237 Declarative specification of virtual hosts served by Caddy. 238 238 ''; 239 239 }; ··· 242 242 default = "https://acme-v02.api.letsencrypt.org/directory"; 243 243 example = "https://acme-staging-v02.api.letsencrypt.org/directory"; 244 244 type = with types; nullOr str; 245 - description = '' 245 + description = lib.mdDoc '' 246 246 The URL to the ACME CA's directory. It is strongly recommended to set 247 247 this to Let's Encrypt's staging endpoint for testing or development. 248 248 249 - Set it to <literal>null</literal> if you want to write a more 249 + Set it to `null` if you want to write a more 250 250 fine-grained configuration manually. 251 251 ''; 252 252 }; ··· 254 254 email = mkOption { 255 255 default = null; 256 256 type = with types; nullOr str; 257 - description = '' 257 + description = lib.mdDoc '' 258 258 Your email address. Mainly used when creating an ACME account with your 259 259 CA, and is highly recommended in case there are problems with your 260 260 certificates.
+7 -7
nixos/modules/services/web-servers/caddy/vhost-options.nix
··· 9 9 hostName = mkOption { 10 10 type = types.str; 11 11 default = name; 12 - description = "Canonical hostname for the server."; 12 + description = lib.mdDoc "Canonical hostname for the server."; 13 13 }; 14 14 15 15 serverAliases = mkOption { 16 16 type = with types; listOf str; 17 17 default = [ ]; 18 18 example = [ "www.example.org" "example.org" ]; 19 - description = '' 19 + description = lib.mdDoc '' 20 20 Additional names of virtual hosts served by this virtual host configuration. 21 21 ''; 22 22 }; 23 23 24 24 listenAddresses = mkOption { 25 25 type = with types; listOf str; 26 - description = '' 26 + description = lib.mdDoc '' 27 27 A list of host interfaces to bind to for this virtual host. 28 28 ''; 29 29 default = [ ]; ··· 59 59 output discard 60 60 '''; 61 61 ''; 62 - description = '' 62 + description = lib.mdDoc '' 63 63 Configuration for HTTP request logging (also known as access logs). See 64 - <link xlink:href="https://caddyserver.com/docs/caddyfile/directives/log#log"/> 64 + <https://caddyserver.com/docs/caddyfile/directives/log#log> 65 65 for details. 66 66 ''; 67 67 }; ··· 69 69 extraConfig = mkOption { 70 70 type = types.lines; 71 71 default = ""; 72 - description = '' 72 + description = lib.mdDoc '' 73 73 Additional lines of configuration appended to this virtual host in the 74 - automatically generated <literal>Caddyfile</literal>. 74 + automatically generated `Caddyfile`. 75 75 ''; 76 76 }; 77 77
+2 -2
nixos/modules/services/web-servers/hydron.nix
··· 17 17 type = types.str; 18 18 default = "weekly"; 19 19 example = "06:00"; 20 - description = '' 20 + description = lib.mdDoc '' 21 21 How often we run hydron import and possibly fetch tags. Runs by default every week. 22 22 23 23 The format is described in 24 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 24 + {manpage}`systemd.time(7)`. 25 25 ''; 26 26 }; 27 27
+29 -29
nixos/modules/services/web-servers/nginx/default.nix
··· 464 464 default = []; 465 465 type = types.listOf (types.attrsOf types.anything); 466 466 example = literalExpression "[ pkgs.nginxModules.brotli ]"; 467 - description = '' 468 - Additional <link xlink:href="https://www.nginx.com/resources/wiki/modules/">third-party nginx modules</link> 467 + description = lib.mdDoc '' 468 + Additional [third-party nginx modules](https://www.nginx.com/resources/wiki/modules/) 469 469 to install. Packaged modules are available in 470 - <literal>pkgs.nginxModules</literal>. 470 + `pkgs.nginxModules`. 471 471 ''; 472 472 }; 473 473 ··· 520 520 appendConfig = mkOption { 521 521 type = types.lines; 522 522 default = ""; 523 - description = '' 523 + description = lib.mdDoc '' 524 524 Configuration lines appended to the generated Nginx 525 525 configuration file. Commonly used by different modules 526 - providing http snippets. <option>appendConfig</option> 526 + providing http snippets. {option}`appendConfig` 527 527 can be specified more than once and it's value will be 528 - concatenated (contrary to <option>config</option> which 528 + concatenated (contrary to {option}`config` which 529 529 can be set only once). 530 530 ''; 531 531 }; ··· 540 540 '"$request" $status $body_bytes_sent ' 541 541 '"$http_referer" "$http_user_agent"'; 542 542 ''; 543 - description = '' 543 + description = lib.mdDoc '' 544 544 With nginx you must provide common http context definitions before 545 545 they are used, e.g. log_format, resolver, etc. inside of server 546 546 or location contexts. Use this attribute to set these definitions ··· 577 577 eventsConfig = mkOption { 578 578 type = types.lines; 579 579 default = ""; 580 - description = '' 580 + description = lib.mdDoc '' 581 581 Configuration lines to be set inside the events block. 582 582 ''; 583 583 }; ··· 605 605 user = mkOption { 606 606 type = types.str; 607 607 default = "nginx"; 608 - description = "User account under which nginx runs."; 608 + description = lib.mdDoc "User account under which nginx runs."; 609 609 }; 610 610 611 611 group = mkOption { 612 612 type = types.str; 613 613 default = "nginx"; 614 - description = "Group account under which nginx runs."; 614 + description = lib.mdDoc "Group account under which nginx runs."; 615 615 }; 616 616 617 617 serverTokens = mkOption { 618 618 type = types.bool; 619 619 default = false; 620 - description = "Show nginx version in headers and error pages."; 620 + description = lib.mdDoc "Show nginx version in headers and error pages."; 621 621 }; 622 622 623 623 clientMaxBodySize = mkOption { 624 624 type = types.str; 625 625 default = "10m"; 626 - description = "Set nginx global client_max_body_size."; 626 + description = lib.mdDoc "Set nginx global client_max_body_size."; 627 627 }; 628 628 629 629 sslCiphers = mkOption { 630 630 type = types.nullOr types.str; 631 631 # Keep in sync with https://ssl-config.mozilla.org/#server=nginx&config=intermediate 632 632 default = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384"; 633 - description = "Ciphers to choose from when negotiating TLS handshakes."; 633 + description = lib.mdDoc "Ciphers to choose from when negotiating TLS handshakes."; 634 634 }; 635 635 636 636 sslProtocols = mkOption { 637 637 type = types.str; 638 638 default = "TLSv1.2 TLSv1.3"; 639 639 example = "TLSv1 TLSv1.1 TLSv1.2 TLSv1.3"; 640 - description = "Allowed TLS protocol versions."; 640 + description = lib.mdDoc "Allowed TLS protocol versions."; 641 641 }; 642 642 643 643 sslDhparam = mkOption { 644 644 type = types.nullOr types.path; 645 645 default = null; 646 646 example = "/path/to/dhparams.pem"; 647 - description = "Path to DH parameters file."; 647 + description = lib.mdDoc "Path to DH parameters file."; 648 648 }; 649 649 650 650 proxyResolveWhileRunning = mkOption { 651 651 type = types.bool; 652 652 default = false; 653 - description = '' 653 + description = lib.mdDoc '' 654 654 Resolves domains of proxyPass targets at runtime 655 655 and not only at start, you have to set 656 656 services.nginx.resolver, too. ··· 660 660 mapHashBucketSize = mkOption { 661 661 type = types.nullOr (types.enum [ 32 64 128 ]); 662 662 default = null; 663 - description = '' 663 + description = lib.mdDoc '' 664 664 Sets the bucket size for the map variables hash tables. Default 665 665 value depends on the processor’s cache line size. 666 666 ''; ··· 669 669 mapHashMaxSize = mkOption { 670 670 type = types.nullOr types.ints.positive; 671 671 default = null; 672 - description = '' 672 + description = lib.mdDoc '' 673 673 Sets the maximum size of the map variables hash tables. 674 674 ''; 675 675 }; ··· 677 677 serverNamesHashBucketSize = mkOption { 678 678 type = types.nullOr types.ints.positive; 679 679 default = null; 680 - description = '' 680 + description = lib.mdDoc '' 681 681 Sets the bucket size for the server names hash tables. Default 682 682 value depends on the processor’s cache line size. 683 683 ''; ··· 686 686 serverNamesHashMaxSize = mkOption { 687 687 type = types.nullOr types.ints.positive; 688 688 default = null; 689 - description = '' 689 + description = lib.mdDoc '' 690 690 Sets the maximum size of the server names hash tables. 691 691 ''; 692 692 }; ··· 698 698 type = types.listOf types.str; 699 699 default = []; 700 700 example = literalExpression ''[ "[::1]" "127.0.0.1:5353" ]''; 701 - description = "List of resolvers to use"; 701 + description = lib.mdDoc "List of resolvers to use"; 702 702 }; 703 703 valid = mkOption { 704 704 type = types.str; 705 705 default = ""; 706 706 example = "30s"; 707 - description = '' 707 + description = lib.mdDoc '' 708 708 By default, nginx caches answers using the TTL value of a response. 709 709 An optional valid parameter allows overriding it 710 710 ''; ··· 712 712 ipv6 = mkOption { 713 713 type = types.bool; 714 714 default = true; 715 - description = '' 715 + description = lib.mdDoc '' 716 716 By default, nginx will look up both IPv4 and IPv6 addresses while resolving. 717 717 If looking up of IPv6 addresses is not desired, the ipv6=off parameter can be 718 718 specified. ··· 720 720 }; 721 721 }; 722 722 }; 723 - description = '' 723 + description = lib.mdDoc '' 724 724 Configures name servers used to resolve names of upstream servers into addresses 725 725 ''; 726 726 default = {}; ··· 735 735 backup = mkOption { 736 736 type = types.bool; 737 737 default = false; 738 - description = '' 738 + description = lib.mdDoc '' 739 739 Marks the server as a backup server. It will be passed 740 740 requests when the primary servers are unavailable. 741 741 ''; 742 742 }; 743 743 }; 744 744 }); 745 - description = '' 745 + description = lib.mdDoc '' 746 746 Defines the address and other parameters of the upstream servers. 747 747 ''; 748 748 default = {}; ··· 751 751 extraConfig = mkOption { 752 752 type = types.lines; 753 753 default = ""; 754 - description = '' 754 + description = lib.mdDoc '' 755 755 These lines go to the end of the upstream verbatim. 756 756 ''; 757 757 }; 758 758 }; 759 759 }); 760 - description = '' 760 + description = lib.mdDoc '' 761 761 Defines a group of servers to use as proxy target. 762 762 ''; 763 763 default = {}; ··· 789 789 }; 790 790 }; 791 791 ''; 792 - description = "Declarative vhost config"; 792 + description = lib.mdDoc "Declarative vhost config"; 793 793 }; 794 794 }; 795 795 };
+13 -13
nixos/modules/services/web-servers/nginx/location-options.nix
··· 17 17 user = "password"; 18 18 }; 19 19 ''; 20 - description = '' 20 + description = lib.mdDoc '' 21 21 Basic Auth protection for a vhost. 22 22 23 23 WARNING: This is implemented to store the password in plain text in the ··· 28 28 basicAuthFile = mkOption { 29 29 type = types.nullOr types.path; 30 30 default = null; 31 - description = '' 31 + description = lib.mdDoc '' 32 32 Basic Auth password file for a vhost. 33 - Can be created via: <command>htpasswd -c &lt;filename&gt; &lt;username&gt;</command>. 33 + Can be created via: {command}`htpasswd -c <filename> <username>`. 34 34 35 35 WARNING: The generate file contains the users' passwords in a 36 36 non-cryptographically-securely hashed way. ··· 41 41 type = types.nullOr types.str; 42 42 default = null; 43 43 example = "http://www.example.org/"; 44 - description = '' 44 + description = lib.mdDoc '' 45 45 Adds proxy_pass directive and sets recommended proxy headers if 46 46 recommendedProxySettings is enabled. 47 47 ''; ··· 51 51 type = types.bool; 52 52 default = false; 53 53 example = true; 54 - description = '' 54 + description = lib.mdDoc '' 55 55 Whether to support proxying websocket connections with HTTP/1.1. 56 56 ''; 57 57 }; ··· 60 60 type = types.nullOr types.str; 61 61 default = null; 62 62 example = "index.php index.html"; 63 - description = '' 63 + description = lib.mdDoc '' 64 64 Adds index directive. 65 65 ''; 66 66 }; ··· 69 69 type = types.nullOr types.str; 70 70 default = null; 71 71 example = "$uri =404"; 72 - description = '' 72 + description = lib.mdDoc '' 73 73 Adds try_files directive. 74 74 ''; 75 75 }; ··· 78 78 type = types.nullOr types.path; 79 79 default = null; 80 80 example = "/your/root/directory"; 81 - description = '' 81 + description = lib.mdDoc '' 82 82 Root directory for requests. 83 83 ''; 84 84 }; ··· 87 87 type = types.nullOr types.path; 88 88 default = null; 89 89 example = "/your/alias/directory"; 90 - description = '' 90 + description = lib.mdDoc '' 91 91 Alias directory for requests. 92 92 ''; 93 93 }; ··· 96 96 type = types.nullOr types.str; 97 97 default = null; 98 98 example = "301 http://example.com$request_uri"; 99 - description = '' 99 + description = lib.mdDoc '' 100 100 Adds a return directive, for e.g. redirections. 101 101 ''; 102 102 }; ··· 104 104 fastcgiParams = mkOption { 105 105 type = types.attrsOf (types.either types.str types.path); 106 106 default = {}; 107 - description = '' 107 + description = lib.mdDoc '' 108 108 FastCGI parameters to override. Unlike in the Nginx 109 109 configuration file, overriding only some default parameters 110 110 won't unset the default values for other parameters. ··· 114 114 extraConfig = mkOption { 115 115 type = types.lines; 116 116 default = ""; 117 - description = '' 117 + description = lib.mdDoc '' 118 118 These lines go to the end of the location verbatim. 119 119 ''; 120 120 }; ··· 133 133 type = types.bool; 134 134 default = config.services.nginx.recommendedProxySettings; 135 135 defaultText = literalExpression "config.services.nginx.recommendedProxySettings"; 136 - description = '' 136 + description = lib.mdDoc '' 137 137 Enable recommended proxy settings. 138 138 ''; 139 139 };
+40 -40
nixos/modules/services/web-servers/nginx/vhost-options.nix
··· 11 11 serverName = mkOption { 12 12 type = types.nullOr types.str; 13 13 default = null; 14 - description = '' 14 + description = lib.mdDoc '' 15 15 Name of this virtual host. Defaults to attribute name in virtualHosts. 16 16 ''; 17 17 example = "example.org"; ··· 21 21 type = types.listOf types.str; 22 22 default = []; 23 23 example = [ "www.example.org" "example.org" ]; 24 - description = '' 24 + description = lib.mdDoc '' 25 25 Additional names of virtual hosts served by this virtual host configuration. 26 26 ''; 27 27 }; 28 28 29 29 listen = mkOption { 30 30 type = with types; listOf (submodule { options = { 31 - addr = mkOption { type = str; description = "IP address."; }; 32 - port = mkOption { type = int; description = "Port number."; default = 80; }; 33 - ssl = mkOption { type = bool; description = "Enable SSL."; default = false; }; 34 - extraParameters = mkOption { type = listOf str; description = "Extra parameters of this listen directive."; default = []; example = [ "backlog=1024" "deferred" ]; }; 31 + addr = mkOption { type = str; description = lib.mdDoc "IP address."; }; 32 + port = mkOption { type = int; description = lib.mdDoc "Port number."; default = 80; }; 33 + ssl = mkOption { type = bool; description = lib.mdDoc "Enable SSL."; default = false; }; 34 + extraParameters = mkOption { type = listOf str; description = lib.mdDoc "Extra parameters of this listen directive."; default = []; example = [ "backlog=1024" "deferred" ]; }; 35 35 }; }); 36 36 default = []; 37 37 example = [ 38 38 { addr = "195.154.1.1"; port = 443; ssl = true; } 39 39 { addr = "192.154.1.1"; port = 80; } 40 40 ]; 41 - description = '' 41 + description = lib.mdDoc '' 42 42 Listen addresses and ports for this virtual host. 43 43 IPv6 addresses must be enclosed in square brackets. 44 - Note: this option overrides <literal>addSSL</literal> 45 - and <literal>onlySSL</literal>. 44 + Note: this option overrides `addSSL` 45 + and `onlySSL`. 46 46 47 47 If you only want to set the addresses manually and not 48 - the ports, take a look at <literal>listenAddresses</literal> 48 + the ports, take a look at `listenAddresses` 49 49 ''; 50 50 }; 51 51 52 52 listenAddresses = mkOption { 53 53 type = with types; listOf str; 54 54 55 - description = '' 55 + description = lib.mdDoc '' 56 56 Listen addresses for this virtual host. 57 - Compared to <literal>listen</literal> this only sets the addreses 57 + Compared to `listen` this only sets the addreses 58 58 and the ports are choosen automatically. 59 59 60 - Note: This option overrides <literal>enableIPv6</literal> 60 + Note: This option overrides `enableIPv6` 61 61 ''; 62 62 default = []; 63 63 example = [ "127.0.0.1" "[::1]" ]; ··· 66 66 enableACME = mkOption { 67 67 type = types.bool; 68 68 default = false; 69 - description = '' 69 + description = lib.mdDoc '' 70 70 Whether to ask Let's Encrypt to sign a certificate for this vhost. 71 - Alternately, you can use an existing certificate through <option>useACMEHost</option>. 71 + Alternately, you can use an existing certificate through {option}`useACMEHost`. 72 72 ''; 73 73 }; 74 74 ··· 87 87 acmeRoot = mkOption { 88 88 type = types.nullOr types.str; 89 89 default = "/var/lib/acme/acme-challenge"; 90 - description = '' 90 + description = lib.mdDoc '' 91 91 Directory for the acme challenge which is PUBLIC, don't put certs or keys in here. 92 92 Set to null to inherit from config.security.acme. 93 93 ''; ··· 96 96 acmeFallbackHost = mkOption { 97 97 type = types.nullOr types.str; 98 98 default = null; 99 - description = '' 99 + description = lib.mdDoc '' 100 100 Host which to proxy requests to if acme challenge is not found. Useful 101 101 if you want multiple hosts to be able to verify the same domain name. 102 102 ''; ··· 105 105 addSSL = mkOption { 106 106 type = types.bool; 107 107 default = false; 108 - description = '' 108 + description = lib.mdDoc '' 109 109 Whether to enable HTTPS in addition to plain HTTP. This will set defaults for 110 - <literal>listen</literal> to listen on all interfaces on the respective default 110 + `listen` to listen on all interfaces on the respective default 111 111 ports (80, 443). 112 112 ''; 113 113 }; ··· 115 115 onlySSL = mkOption { 116 116 type = types.bool; 117 117 default = false; 118 - description = '' 118 + description = lib.mdDoc '' 119 119 Whether to enable HTTPS and reject plain HTTP connections. This will set 120 - defaults for <literal>listen</literal> to listen on all interfaces on port 443. 120 + defaults for `listen` to listen on all interfaces on port 443. 121 121 ''; 122 122 }; 123 123 ··· 130 130 forceSSL = mkOption { 131 131 type = types.bool; 132 132 default = false; 133 - description = '' 133 + description = lib.mdDoc '' 134 134 Whether to add a separate nginx server block that permanently redirects (301) 135 135 all plain HTTP traffic to HTTPS. This will set defaults for 136 - <literal>listen</literal> to listen on all interfaces on the respective default 136 + `listen` to listen on all interfaces on the respective default 137 137 ports (80, 443), where the non-SSL listens are used for the redirect vhosts. 138 138 ''; 139 139 }; ··· 141 141 rejectSSL = mkOption { 142 142 type = types.bool; 143 143 default = false; 144 - description = '' 144 + description = lib.mdDoc '' 145 145 Whether to listen for and reject all HTTPS connections to this vhost. Useful in 146 - <link linkend="opt-services.nginx.virtualHosts._name_.default">default</link> 146 + [default](#opt-services.nginx.virtualHosts._name_.default) 147 147 server blocks to avoid serving the certificate for another vhost. Uses the 148 - <literal>ssl_reject_handshake</literal> directive available in nginx versions 148 + `ssl_reject_handshake` directive available in nginx versions 149 149 1.19.4 and above. 150 150 ''; 151 151 }; ··· 153 153 kTLS = mkOption { 154 154 type = types.bool; 155 155 default = false; 156 - description = '' 156 + description = lib.mdDoc '' 157 157 Whether to enable kTLS support. 158 158 Implementing TLS in the kernel (kTLS) improves performance by significantly 159 159 reducing the need for copying operations between user space and the kernel. ··· 164 164 sslCertificate = mkOption { 165 165 type = types.path; 166 166 example = "/var/host.cert"; 167 - description = "Path to server SSL certificate."; 167 + description = lib.mdDoc "Path to server SSL certificate."; 168 168 }; 169 169 170 170 sslCertificateKey = mkOption { 171 171 type = types.path; 172 172 example = "/var/host.key"; 173 - description = "Path to server SSL certificate key."; 173 + description = lib.mdDoc "Path to server SSL certificate key."; 174 174 }; 175 175 176 176 sslTrustedCertificate = mkOption { 177 177 type = types.nullOr types.path; 178 178 default = null; 179 179 example = literalExpression ''"''${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"''; 180 - description = "Path to root SSL certificate for stapling and client certificates."; 180 + description = lib.mdDoc "Path to root SSL certificate for stapling and client certificates."; 181 181 }; 182 182 183 183 http2 = mkOption { 184 184 type = types.bool; 185 185 default = true; 186 - description = '' 186 + description = lib.mdDoc '' 187 187 Whether to enable HTTP 2. 188 188 Note that (as of writing) due to nginx's implementation, to disable 189 189 HTTP 2 you have to disable it on all vhosts that use a given ··· 210 210 reuseport = mkOption { 211 211 type = types.bool; 212 212 default = false; 213 - description = '' 213 + description = lib.mdDoc '' 214 214 Create an individual listening socket . 215 215 It is required to specify only once on one of the hosts. 216 216 ''; ··· 220 220 type = types.nullOr types.path; 221 221 default = null; 222 222 example = "/data/webserver/docs"; 223 - description = '' 223 + description = lib.mdDoc '' 224 224 The path of the web root directory. 225 225 ''; 226 226 }; ··· 228 228 default = mkOption { 229 229 type = types.bool; 230 230 default = false; 231 - description = '' 231 + description = lib.mdDoc '' 232 232 Makes this vhost the default. 233 233 ''; 234 234 }; ··· 236 236 extraConfig = mkOption { 237 237 type = types.lines; 238 238 default = ""; 239 - description = '' 239 + description = lib.mdDoc '' 240 240 These lines go to the end of the vhost verbatim. 241 241 ''; 242 242 }; ··· 245 245 type = types.nullOr types.str; 246 246 default = null; 247 247 example = "newserver.example.org"; 248 - description = '' 248 + description = lib.mdDoc '' 249 249 If set, all requests for this host are redirected permanently to 250 250 the given hostname. 251 251 ''; ··· 259 259 user = "password"; 260 260 }; 261 261 ''; 262 - description = '' 262 + description = lib.mdDoc '' 263 263 Basic Auth protection for a vhost. 264 264 265 265 WARNING: This is implemented to store the password in plain text in the ··· 270 270 basicAuthFile = mkOption { 271 271 type = types.nullOr types.path; 272 272 default = null; 273 - description = '' 273 + description = lib.mdDoc '' 274 274 Basic Auth password file for a vhost. 275 - Can be created via: <command>htpasswd -c &lt;filename&gt; &lt;username&gt;</command>. 275 + Can be created via: {command}`htpasswd -c <filename> <username>`. 276 276 277 277 WARNING: The generate file contains the users' passwords in a 278 278 non-cryptographically-securely hashed way. ··· 291 291 }; 292 292 }; 293 293 ''; 294 - description = "Declarative location config"; 294 + description = lib.mdDoc "Declarative location config"; 295 295 }; 296 296 }; 297 297 }
+10 -10
nixos/modules/services/x11/desktop-managers/default.nix
··· 33 33 type = types.enum [ "center" "fill" "max" "scale" "tile" ]; 34 34 default = "scale"; 35 35 example = "fill"; 36 - description = '' 37 - The file <filename>~/.background-image</filename> is used as a background image. 36 + description = lib.mdDoc '' 37 + The file {file}`~/.background-image` is used as a background image. 38 38 This option specifies the placement of this image onto your desktop. 39 39 40 40 Possible values: 41 - <literal>center</literal>: Center the image on the background. If it is too small, it will be surrounded by a black border. 42 - <literal>fill</literal>: Like <literal>scale</literal>, but preserves aspect ratio by zooming the image until it fits. Either a horizontal or a vertical part of the image will be cut off. 43 - <literal>max</literal>: Like <literal>fill</literal>, but scale the image to the maximum size that fits the screen with black borders on one side. 44 - <literal>scale</literal>: Fit the file into the background without repeating it, cutting off stuff or using borders. But the aspect ratio is not preserved either. 45 - <literal>tile</literal>: Tile (repeat) the image in case it is too small for the screen. 41 + `center`: Center the image on the background. If it is too small, it will be surrounded by a black border. 42 + `fill`: Like `scale`, but preserves aspect ratio by zooming the image until it fits. Either a horizontal or a vertical part of the image will be cut off. 43 + `max`: Like `fill`, but scale the image to the maximum size that fits the screen with black borders on one side. 44 + `scale`: Fit the file into the background without repeating it, cutting off stuff or using borders. But the aspect ratio is not preserved either. 45 + `tile`: Tile (repeat) the image in case it is too small for the screen. 46 46 ''; 47 47 }; 48 48 49 49 combineScreens = mkOption { 50 50 type = types.bool; 51 51 default = false; 52 - description = '' 53 - When set to <literal>true</literal> the wallpaper will stretch across all screens. 54 - When set to <literal>false</literal> the wallpaper is duplicated to all screens. 52 + description = lib.mdDoc '' 53 + When set to `true` the wallpaper will stretch across all screens. 54 + When set to `false` the wallpaper is duplicated to all screens. 55 55 ''; 56 56 }; 57 57 };
+8 -8
nixos/modules/services/x11/display-managers/lightdm.nix
··· 105 105 enable = mkOption { 106 106 type = types.bool; 107 107 default = false; 108 - description = '' 108 + description = lib.mdDoc '' 109 109 Whether to enable lightdm as the display manager. 110 110 ''; 111 111 }; ··· 114 114 enable = mkOption { 115 115 type = types.bool; 116 116 default = true; 117 - description = '' 117 + description = lib.mdDoc '' 118 118 If set to false, run lightdm in greeterless mode. This only works if autologin 119 119 is enabled and autoLogin.timeout is zero. 120 120 ''; 121 121 }; 122 122 package = mkOption { 123 123 type = types.package; 124 - description = '' 124 + description = lib.mdDoc '' 125 125 The LightDM greeter to login via. The package should be a directory 126 126 containing a .desktop file matching the name in the 'name' option. 127 127 ''; ··· 129 129 }; 130 130 name = mkOption { 131 131 type = types.str; 132 - description = '' 132 + description = lib.mdDoc '' 133 133 The name of a .desktop file in the directory specified 134 134 in the 'package' option. 135 135 ''; ··· 142 142 example = '' 143 143 user-authority-in-system-dir = true 144 144 ''; 145 - description = "Extra lines to append to LightDM section."; 145 + description = lib.mdDoc "Extra lines to append to LightDM section."; 146 146 }; 147 147 148 148 background = mkOption { 149 149 type = types.either types.path (types.strMatching "^#[0-9]\{6\}$"); 150 150 # Manual cannot depend on packages, we are actually setting the default in config below. 151 151 defaultText = literalExpression "pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom.gnomeFilePath"; 152 - description = '' 152 + description = lib.mdDoc '' 153 153 The background image or color to use. 154 154 ''; 155 155 }; ··· 160 160 example = '' 161 161 greeter-show-manual-login=true 162 162 ''; 163 - description = "Extra lines to append to SeatDefaults section."; 163 + description = lib.mdDoc "Extra lines to append to SeatDefaults section."; 164 164 }; 165 165 166 166 # Configuration for automatic login specific to LightDM 167 167 autoLogin.timeout = mkOption { 168 168 type = types.int; 169 169 default = 0; 170 - description = '' 170 + description = lib.mdDoc '' 171 171 Show the greeter for this many seconds before automatic login occurs. 172 172 ''; 173 173 };
+52 -52
nixos/modules/services/x11/xserver.nix
··· 37 37 output = mkOption { 38 38 type = types.str; 39 39 example = "DVI-0"; 40 - description = '' 40 + description = lib.mdDoc '' 41 41 The output name of the monitor, as shown by 42 - <citerefentry><refentrytitle>xrandr</refentrytitle><manvolnum>1</manvolnum></citerefentry> invoked without arguments. 42 + {manpage}`xrandr(1)` invoked without arguments. 43 43 ''; 44 44 }; 45 45 46 46 primary = mkOption { 47 47 type = types.bool; 48 48 default = false; 49 - description = '' 49 + description = lib.mdDoc '' 50 50 Whether this head is treated as the primary monitor, 51 51 ''; 52 52 }; ··· 58 58 DisplaySize 408 306 59 59 Option "DPMS" "false" 60 60 ''; 61 - description = '' 62 - Extra lines to append to the <literal>Monitor</literal> section 61 + description = lib.mdDoc '' 62 + Extra lines to append to the `Monitor` section 63 63 verbatim. Available options are documented in the MONITOR section in 64 - <citerefentry><refentrytitle>xorg.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 64 + {manpage}`xorg.conf(5)`. 65 65 ''; 66 66 }; 67 67 }; ··· 165 165 enable = mkOption { 166 166 type = types.bool; 167 167 default = false; 168 - description = '' 168 + description = lib.mdDoc '' 169 169 Whether to enable the X server. 170 170 ''; 171 171 }; ··· 173 173 autorun = mkOption { 174 174 type = types.bool; 175 175 default = true; 176 - description = '' 176 + description = lib.mdDoc '' 177 177 Whether to start the X server automatically. 178 178 ''; 179 179 }; ··· 182 182 default = []; 183 183 example = literalExpression "[ pkgs.xterm ]"; 184 184 type = types.listOf types.package; 185 - description = "Which X11 packages to exclude from the default environment"; 185 + description = lib.mdDoc "Which X11 packages to exclude from the default environment"; 186 186 }; 187 187 188 188 exportConfiguration = mkOption { 189 189 type = types.bool; 190 190 default = false; 191 - description = '' 191 + description = lib.mdDoc '' 192 192 Whether to symlink the X server configuration under 193 - <filename>/etc/X11/xorg.conf</filename>. 193 + {file}`/etc/X11/xorg.conf`. 194 194 ''; 195 195 }; 196 196 197 197 enableTCP = mkOption { 198 198 type = types.bool; 199 199 default = false; 200 - description = '' 200 + description = lib.mdDoc '' 201 201 Whether to allow the X server to accept TCP connections. 202 202 ''; 203 203 }; ··· 205 205 autoRepeatDelay = mkOption { 206 206 type = types.nullOr types.int; 207 207 default = null; 208 - description = '' 208 + description = lib.mdDoc '' 209 209 Sets the autorepeat delay (length of time in milliseconds that a key must be depressed before autorepeat starts). 210 210 ''; 211 211 }; ··· 213 213 autoRepeatInterval = mkOption { 214 214 type = types.nullOr types.int; 215 215 default = null; 216 - description = '' 216 + description = lib.mdDoc '' 217 217 Sets the autorepeat interval (length of time in milliseconds that should elapse between autorepeat-generated keystrokes). 218 218 ''; 219 219 }; ··· 231 231 ''' 232 232 ] 233 233 ''; 234 - description = "Content of additional InputClass sections of the X server configuration file."; 234 + description = lib.mdDoc "Content of additional InputClass sections of the X server configuration file."; 235 235 }; 236 236 237 237 modules = mkOption { 238 238 type = types.listOf types.path; 239 239 default = []; 240 240 example = literalExpression "[ pkgs.xf86_input_wacom ]"; 241 - description = "Packages to be added to the module search path of the X server."; 241 + description = lib.mdDoc "Packages to be added to the module search path of the X server."; 242 242 }; 243 243 244 244 resolutions = mkOption { 245 245 type = types.listOf types.attrs; 246 246 default = []; 247 247 example = [ { x = 1600; y = 1200; } { x = 1024; y = 786; } ]; 248 - description = '' 248 + description = lib.mdDoc '' 249 249 The screen resolutions for the X server. The first element 250 250 is the default resolution. If this list is empty, the X 251 251 server will automatically configure the resolution. ··· 266 266 path = [ "xorg" n ]; 267 267 title = removePrefix "xf86video" n; 268 268 }) pkgs.xorg); 269 - description = '' 269 + description = lib.mdDoc '' 270 270 The names of the video drivers the configuration 271 271 supports. They will be tried in order until one that 272 272 supports your card is found. ··· 282 282 type = types.nullOr types.str; 283 283 default = null; 284 284 example = "i810"; 285 - description = '' 285 + description = lib.mdDoc '' 286 286 The name of the video driver for your graphics card. This 287 287 option is obsolete; please set the 288 - <option>services.xserver.videoDrivers</option> instead. 288 + {option}`services.xserver.videoDrivers` instead. 289 289 ''; 290 290 }; 291 291 ··· 301 301 dpi = mkOption { 302 302 type = types.nullOr types.int; 303 303 default = null; 304 - description = '' 304 + description = lib.mdDoc '' 305 305 Force global DPI resolution to use for X server. It's recommended to 306 306 use this only when DPI is detected incorrectly; also consider using 307 - <literal>Monitor</literal> section in configuration file instead. 307 + `Monitor` section in configuration file instead. 308 308 ''; 309 309 }; 310 310 311 311 updateDbusEnvironment = mkOption { 312 312 type = types.bool; 313 313 default = false; 314 - description = '' 314 + description = lib.mdDoc '' 315 315 Whether to update the DBus activation environment after launching the 316 316 desktop manager. 317 317 ''; ··· 320 320 layout = mkOption { 321 321 type = types.str; 322 322 default = "us"; 323 - description = '' 323 + description = lib.mdDoc '' 324 324 Keyboard layout, or multiple keyboard layouts separated by commas. 325 325 ''; 326 326 }; ··· 329 329 type = types.str; 330 330 default = "pc104"; 331 331 example = "presario"; 332 - description = '' 332 + description = lib.mdDoc '' 333 333 Keyboard model. 334 334 ''; 335 335 }; ··· 338 338 type = types.commas; 339 339 default = "terminate:ctrl_alt_bksp"; 340 340 example = "grp:caps_toggle,grp_led:scroll"; 341 - description = '' 341 + description = lib.mdDoc '' 342 342 X keyboard options; layout switching goes here. 343 343 ''; 344 344 }; ··· 347 347 type = types.str; 348 348 default = ""; 349 349 example = "colemak"; 350 - description = '' 350 + description = lib.mdDoc '' 351 351 X keyboard variant. 352 352 ''; 353 353 }; ··· 356 356 type = types.path; 357 357 default = "${pkgs.xkeyboard_config}/etc/X11/xkb"; 358 358 defaultText = literalExpression ''"''${pkgs.xkeyboard_config}/etc/X11/xkb"''; 359 - description = '' 359 + description = lib.mdDoc '' 360 360 Path used for -xkbdir xserver parameter. 361 361 ''; 362 362 }; 363 363 364 364 config = mkOption { 365 365 type = types.lines; 366 - description = '' 366 + description = lib.mdDoc '' 367 367 The contents of the configuration file of the X server 368 - (<filename>xorg.conf</filename>). 368 + ({file}`xorg.conf`). 369 369 370 370 This option is set by multiple modules, and the configs are 371 371 concatenated together. 372 372 373 373 In Xorg configs the last config entries take precedence, 374 - so you may want to use <literal>lib.mkAfter</literal> on this option 374 + so you may want to use `lib.mkAfter` on this option 375 375 to override NixOS's defaults. 376 376 ''; 377 377 }; ··· 380 380 type = types.lines; 381 381 default = ""; 382 382 example = ''FontPath "/path/to/my/fonts"''; 383 - description = "Contents of the first <literal>Files</literal> section of the X server configuration file."; 383 + description = lib.mdDoc "Contents of the first `Files` section of the X server configuration file."; 384 384 }; 385 385 386 386 deviceSection = mkOption { 387 387 type = types.lines; 388 388 default = ""; 389 389 example = "VideoRAM 131072"; 390 - description = "Contents of the first Device section of the X server configuration file."; 390 + description = lib.mdDoc "Contents of the first Device section of the X server configuration file."; 391 391 }; 392 392 393 393 screenSection = mkOption { ··· 396 396 example = '' 397 397 Option "RandRRotation" "on" 398 398 ''; 399 - description = "Contents of the first Screen section of the X server configuration file."; 399 + description = lib.mdDoc "Contents of the first Screen section of the X server configuration file."; 400 400 }; 401 401 402 402 monitorSection = mkOption { 403 403 type = types.lines; 404 404 default = ""; 405 405 example = "HorizSync 28-49"; 406 - description = "Contents of the first Monitor section of the X server configuration file."; 406 + description = lib.mdDoc "Contents of the first Monitor section of the X server configuration file."; 407 407 }; 408 408 409 409 extraConfig = mkOption { 410 410 type = types.lines; 411 411 default = ""; 412 - description = "Additional contents (sections) included in the X server configuration file"; 412 + description = lib.mdDoc "Additional contents (sections) included in the X server configuration file"; 413 413 }; 414 414 415 415 xrandrHeads = mkOption { ··· 463 463 Option "SuspendTime" "0" 464 464 Option "OffTime" "0" 465 465 ''; 466 - description = "Contents of the ServerFlags section of the X server configuration file."; 466 + description = lib.mdDoc "Contents of the ServerFlags section of the X server configuration file."; 467 467 }; 468 468 469 469 moduleSection = mkOption { ··· 474 474 SubSection "extmod" 475 475 EndSubsection 476 476 ''; 477 - description = "Contents of the Module section of the X server configuration file."; 477 + description = lib.mdDoc "Contents of the Module section of the X server configuration file."; 478 478 }; 479 479 480 480 serverLayoutSection = mkOption { ··· 484 484 '' 485 485 Option "AIGLX" "true" 486 486 ''; 487 - description = "Contents of the ServerLayout section of the X server configuration file."; 487 + description = lib.mdDoc "Contents of the ServerLayout section of the X server configuration file."; 488 488 }; 489 489 490 490 extraDisplaySettings = mkOption { 491 491 type = types.lines; 492 492 default = ""; 493 493 example = "Virtual 2048 2048"; 494 - description = "Lines to be added to every Display subsection of the Screen section."; 494 + description = lib.mdDoc "Lines to be added to every Display subsection of the Screen section."; 495 495 }; 496 496 497 497 defaultDepth = mkOption { 498 498 type = types.int; 499 499 default = 0; 500 500 example = 8; 501 - description = "Default colour depth."; 501 + description = lib.mdDoc "Default colour depth."; 502 502 }; 503 503 504 504 fontPath = mkOption { 505 505 type = types.nullOr types.str; 506 506 default = null; 507 507 example = "unix/:7100"; 508 - description = '' 508 + description = lib.mdDoc '' 509 509 Set the X server FontPath. Defaults to null, which 510 510 means the compiled in defaults will be used. See 511 511 man xorg.conf for details. ··· 515 515 tty = mkOption { 516 516 type = types.nullOr types.int; 517 517 default = 7; 518 - description = "Virtual console for the X server."; 518 + description = lib.mdDoc "Virtual console for the X server."; 519 519 }; 520 520 521 521 display = mkOption { 522 522 type = types.nullOr types.int; 523 523 default = 0; 524 - description = "Display number for the X server."; 524 + description = lib.mdDoc "Display number for the X server."; 525 525 }; 526 526 527 527 virtualScreen = mkOption { 528 528 type = types.nullOr types.attrs; 529 529 default = null; 530 530 example = { x = 2048; y = 2048; }; 531 - description = '' 531 + description = lib.mdDoc '' 532 532 Virtual screen size for Xrandr. 533 533 ''; 534 534 }; ··· 537 537 type = types.nullOr types.str; 538 538 default = "/dev/null"; 539 539 example = "/var/log/Xorg.0.log"; 540 - description = '' 540 + description = lib.mdDoc '' 541 541 Controls the file Xorg logs to. 542 542 543 - The default of <literal>/dev/null</literal> is set so that systemd services (like <literal>displayManagers</literal>) only log to the journal and don't create their own log files. 543 + The default of `/dev/null` is set so that systemd services (like `displayManagers`) only log to the journal and don't create their own log files. 544 544 545 - Setting this to <literal>null</literal> will not pass the <literal>-logfile</literal> argument to Xorg which allows it to log to its default logfile locations instead (see <literal>man Xorg</literal>). You probably only want this behaviour when running Xorg manually (e.g. via <literal>startx</literal>). 545 + Setting this to `null` will not pass the `-logfile` argument to Xorg which allows it to log to its default logfile locations instead (see `man Xorg`). You probably only want this behaviour when running Xorg manually (e.g. via `startx`). 546 546 ''; 547 547 }; 548 548 ··· 550 550 type = types.nullOr types.int; 551 551 default = 3; 552 552 example = 7; 553 - description = '' 553 + description = lib.mdDoc '' 554 554 Controls verbosity of X logging. 555 555 ''; 556 556 }; ··· 558 558 useGlamor = mkOption { 559 559 type = types.bool; 560 560 default = false; 561 - description = '' 561 + description = lib.mdDoc '' 562 562 Whether to use the Glamor module for 2D acceleration, 563 563 if possible. 564 564 ''; ··· 567 567 enableCtrlAltBackspace = mkOption { 568 568 type = types.bool; 569 569 default = false; 570 - description = '' 570 + description = lib.mdDoc '' 571 571 Whether to enable the DontZap option, which binds Ctrl+Alt+Backspace 572 572 to forcefully kill X. This can lead to data loss and is disabled 573 573 by default. ··· 577 577 terminateOnReset = mkOption { 578 578 type = types.bool; 579 579 default = true; 580 - description = '' 580 + description = lib.mdDoc '' 581 581 Whether to terminate X upon server reset. 582 582 ''; 583 583 };
+13 -13
nixos/modules/system/activation/top-level.nix
··· 185 185 options.inheritParentConfig = mkOption { 186 186 type = types.bool; 187 187 default = true; 188 - description = "Include the entire system's configuration. Set to false to make a completely differently configured system."; 188 + description = lib.mdDoc "Include the entire system's configuration. Set to false to make a completely differently configured system."; 189 189 }; 190 190 191 191 options.configuration = mkOption { 192 192 default = {}; 193 - description = '' 193 + description = lib.mdDoc '' 194 194 Arbitrary NixOS configuration. 195 195 196 196 Anything you can add to a normal NixOS configuration, you can add ··· 255 255 toplevel = mkOption { 256 256 type = types.package; 257 257 readOnly = true; 258 - description = '' 258 + description = lib.mdDoc '' 259 259 This option contains the store path that typically represents a NixOS system. 260 260 261 261 You can read this path in a custom deployment tool for example. ··· 267 267 system.copySystemConfiguration = mkOption { 268 268 type = types.bool; 269 269 default = false; 270 - description = '' 270 + description = lib.mdDoc '' 271 271 If enabled, copies the NixOS configuration file 272 - (usually <filename>/etc/nixos/configuration.nix</filename>) 272 + (usually {file}`/etc/nixos/configuration.nix`) 273 273 and links it from the resulting system 274 - (getting to <filename>/run/current-system/configuration.nix</filename>). 274 + (getting to {file}`/run/current-system/configuration.nix`). 275 275 Note that only this single file is copied, even if it imports others. 276 276 ''; 277 277 }; ··· 288 288 system.extraDependencies = mkOption { 289 289 type = types.listOf types.package; 290 290 default = []; 291 - description = '' 291 + description = lib.mdDoc '' 292 292 A list of packages that should be included in the system 293 293 closure but not otherwise made available to users. This is 294 294 primarily used by the installation tests. ··· 302 302 { ... }: { 303 303 options.original = mkOption { 304 304 type = types.package; 305 - description = "The original package to override."; 305 + description = lib.mdDoc "The original package to override."; 306 306 }; 307 307 308 308 options.replacement = mkOption { 309 309 type = types.package; 310 - description = "The replacement package."; 310 + description = lib.mdDoc "The replacement package."; 311 311 }; 312 312 }) 313 313 ); ··· 315 315 oldDependency = original; 316 316 newDependency = replacement; 317 317 }); 318 - description = '' 318 + description = lib.mdDoc '' 319 319 List of packages to override without doing a full rebuild. 320 320 The original derivation and replacement derivation must have the same 321 321 name length, and ideally should have close-to-identical directory layout. ··· 333 333 then "unnamed" 334 334 else config.networking.hostName; 335 335 ''; 336 - description = '' 337 - The name of the system used in the <option>system.build.toplevel</option> derivation. 336 + description = lib.mdDoc '' 337 + The name of the system used in the {option}`system.build.toplevel` derivation. 338 338 339 339 That derivation has the following name: 340 - <literal>"nixos-system-''${config.system.name}-''${config.system.nixos.label}"</literal> 340 + `"nixos-system-''${config.system.name}-''${config.system.nixos.label}"` 341 341 ''; 342 342 }; 343 343
+7 -7
nixos/modules/system/boot/loader/generic-extlinux-compatible/default.nix
··· 20 20 enable = mkOption { 21 21 default = false; 22 22 type = types.bool; 23 - description = '' 23 + description = lib.mdDoc '' 24 24 Whether to generate an extlinux-compatible configuration file 25 - under <literal>/boot/extlinux.conf</literal>. For instance, 25 + under `/boot/extlinux.conf`. For instance, 26 26 U-Boot's generic distro boot support uses this file format. 27 27 28 - See <link xlink:href="http://git.denx.de/?p=u-boot.git;a=blob;f=doc/README.distro;hb=refs/heads/master">U-boot's documentation</link> 28 + See [U-boot's documentation](http://git.denx.de/?p=u-boot.git;a=blob;f=doc/README.distro;hb=refs/heads/master) 29 29 for more information. 30 30 ''; 31 31 }; ··· 33 33 useGenerationDeviceTree = mkOption { 34 34 default = true; 35 35 type = types.bool; 36 - description = '' 36 + description = lib.mdDoc '' 37 37 Whether to generate Device Tree-related directives in the 38 38 extlinux configuration. 39 39 ··· 49 49 default = 20; 50 50 example = 10; 51 51 type = types.int; 52 - description = '' 52 + description = lib.mdDoc '' 53 53 Maximum number of configurations in the boot menu. 54 54 ''; 55 55 }; ··· 57 57 populateCmd = mkOption { 58 58 type = types.str; 59 59 readOnly = true; 60 - description = '' 60 + description = lib.mdDoc '' 61 61 Contains the builder command used to populate an image, 62 - honoring all options except the <literal>-c &lt;path-to-default-configuration&gt;</literal> 62 + honoring all options except the `-c <path-to-default-configuration>` 63 63 argument. 64 64 Useful to have for sdImage.populateRootCommands 65 65 '';
+3 -3
nixos/modules/system/boot/modprobe.nix
··· 24 24 '' 25 25 options parport_pc io=0x378 irq=7 dma=1 26 26 ''; 27 - description = '' 27 + description = lib.mdDoc '' 28 28 Any additional configuration to be appended to the generated 29 - <filename>modprobe.conf</filename>. This is typically used to 29 + {file}`modprobe.conf`. This is typically used to 30 30 specify module options. See 31 - <citerefentry><refentrytitle>modprobe.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 31 + {manpage}`modprobe.d(5)` for details. 32 32 ''; 33 33 type = types.lines; 34 34 };
+141 -141
nixos/modules/system/boot/networkd.nix
··· 916 916 default = {}; 917 917 example = { SpeedMeter = true; ManageForeignRoutingPolicyRules = false; }; 918 918 type = types.addCheck (types.attrsOf unitOption) check.global.sectionNetwork; 919 - description = '' 919 + description = lib.mdDoc '' 920 920 Each attribute in this set specifies an option in the 921 - <literal>[Network]</literal> section of the networkd config. 922 - See <citerefentry><refentrytitle>networkd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 921 + `[Network]` section of the networkd config. 922 + See {manpage}`networkd.conf(5)` for details. 923 923 ''; 924 924 }; 925 925 ··· 927 927 default = {}; 928 928 example = { DUIDType = "vendor"; }; 929 929 type = types.addCheck (types.attrsOf unitOption) check.global.sectionDHCPv4; 930 - description = '' 930 + description = lib.mdDoc '' 931 931 Each attribute in this set specifies an option in the 932 - <literal>[DHCPv4]</literal> section of the networkd config. 933 - See <citerefentry><refentrytitle>networkd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 932 + `[DHCPv4]` section of the networkd config. 933 + See {manpage}`networkd.conf(5)` for details. 934 934 ''; 935 935 }; 936 936 ··· 938 938 default = {}; 939 939 example = { DUIDType = "vendor"; }; 940 940 type = types.addCheck (types.attrsOf unitOption) check.global.sectionDHCPv6; 941 - description = '' 941 + description = lib.mdDoc '' 942 942 Each attribute in this set specifies an option in the 943 - <literal>[DHCPv6]</literal> section of the networkd config. 944 - See <citerefentry><refentrytitle>networkd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 943 + `[DHCPv6]` section of the networkd config. 944 + See {manpage}`networkd.conf(5)` for details. 945 945 ''; 946 946 }; 947 947 }; ··· 960 960 default = {}; 961 961 example = { MACAddress = "00:ff:ee:aa:cc:dd"; }; 962 962 type = types.addCheck (types.attrsOf unitOption) check.link.sectionLink; 963 - description = '' 963 + description = lib.mdDoc '' 964 964 Each attribute in this set specifies an option in the 965 - <literal>[Link]</literal> section of the unit. See 966 - <citerefentry><refentrytitle>systemd.link</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 965 + `[Link]` section of the unit. See 966 + {manpage}`systemd.link(5)` for details. 967 967 ''; 968 968 }; 969 969 ··· 974 974 wireguardPeerConfig = mkOption { 975 975 default = {}; 976 976 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionWireGuardPeer; 977 - description = '' 977 + description = lib.mdDoc '' 978 978 Each attribute in this set specifies an option in the 979 - <literal>[WireGuardPeer]</literal> section of the unit. See 980 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 979 + `[WireGuardPeer]` section of the unit. See 980 + {manpage}`systemd.network(5)` for details. 981 981 ''; 982 982 }; 983 983 }; ··· 988 988 netdevConfig = mkOption { 989 989 example = { Name = "mybridge"; Kind = "bridge"; }; 990 990 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionNetdev; 991 - description = '' 991 + description = lib.mdDoc '' 992 992 Each attribute in this set specifies an option in the 993 - <literal>[Netdev]</literal> section of the unit. See 994 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 993 + `[Netdev]` section of the unit. See 994 + {manpage}`systemd.netdev(5)` for details. 995 995 ''; 996 996 }; 997 997 ··· 999 999 default = {}; 1000 1000 example = { Id = 4; }; 1001 1001 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionVLAN; 1002 - description = '' 1002 + description = lib.mdDoc '' 1003 1003 Each attribute in this set specifies an option in the 1004 - <literal>[VLAN]</literal> section of the unit. See 1005 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1004 + `[VLAN]` section of the unit. See 1005 + {manpage}`systemd.netdev(5)` for details. 1006 1006 ''; 1007 1007 }; 1008 1008 ··· 1010 1010 default = {}; 1011 1011 example = { Mode = "private"; }; 1012 1012 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionMACVLAN; 1013 - description = '' 1013 + description = lib.mdDoc '' 1014 1014 Each attribute in this set specifies an option in the 1015 - <literal>[MACVLAN]</literal> section of the unit. See 1016 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1015 + `[MACVLAN]` section of the unit. See 1016 + {manpage}`systemd.netdev(5)` for details. 1017 1017 ''; 1018 1018 }; 1019 1019 1020 1020 vxlanConfig = mkOption { 1021 1021 default = {}; 1022 1022 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionVXLAN; 1023 - description = '' 1023 + description = lib.mdDoc '' 1024 1024 Each attribute in this set specifies an option in the 1025 - <literal>[VXLAN]</literal> section of the unit. See 1026 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1025 + `[VXLAN]` section of the unit. See 1026 + {manpage}`systemd.netdev(5)` for details. 1027 1027 ''; 1028 1028 }; 1029 1029 ··· 1031 1031 default = {}; 1032 1032 example = { Remote = "192.168.1.1"; }; 1033 1033 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionTunnel; 1034 - description = '' 1034 + description = lib.mdDoc '' 1035 1035 Each attribute in this set specifies an option in the 1036 - <literal>[Tunnel]</literal> section of the unit. See 1037 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1036 + `[Tunnel]` section of the unit. See 1037 + {manpage}`systemd.netdev(5)` for details. 1038 1038 ''; 1039 1039 }; 1040 1040 ··· 1042 1042 default = { }; 1043 1043 example = { Port = 9001; }; 1044 1044 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionFooOverUDP; 1045 - description = '' 1045 + description = lib.mdDoc '' 1046 1046 Each attribute in this set specifies an option in the 1047 - <literal>[FooOverUDP]</literal> section of the unit. See 1048 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1047 + `[FooOverUDP]` section of the unit. See 1048 + {manpage}`systemd.netdev(5)` for details. 1049 1049 ''; 1050 1050 }; 1051 1051 ··· 1053 1053 default = {}; 1054 1054 example = { Name = "veth2"; }; 1055 1055 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionPeer; 1056 - description = '' 1056 + description = lib.mdDoc '' 1057 1057 Each attribute in this set specifies an option in the 1058 - <literal>[Peer]</literal> section of the unit. See 1059 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1058 + `[Peer]` section of the unit. See 1059 + {manpage}`systemd.netdev(5)` for details. 1060 1060 ''; 1061 1061 }; 1062 1062 ··· 1064 1064 default = {}; 1065 1065 example = { User = "openvpn"; }; 1066 1066 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionTun; 1067 - description = '' 1067 + description = lib.mdDoc '' 1068 1068 Each attribute in this set specifies an option in the 1069 - <literal>[Tun]</literal> section of the unit. See 1070 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1069 + `[Tun]` section of the unit. See 1070 + {manpage}`systemd.netdev(5)` for details. 1071 1071 ''; 1072 1072 }; 1073 1073 ··· 1075 1075 default = {}; 1076 1076 example = { User = "openvpn"; }; 1077 1077 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionTap; 1078 - description = '' 1078 + description = lib.mdDoc '' 1079 1079 Each attribute in this set specifies an option in the 1080 - <literal>[Tap]</literal> section of the unit. See 1081 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1080 + `[Tap]` section of the unit. See 1081 + {manpage}`systemd.netdev(5)` for details. 1082 1082 ''; 1083 1083 }; 1084 1084 ··· 1090 1090 FirewallMark = 42; 1091 1091 }; 1092 1092 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionWireGuard; 1093 - description = '' 1093 + description = lib.mdDoc '' 1094 1094 Each attribute in this set specifies an option in the 1095 - <literal>[WireGuard]</literal> section of the unit. See 1096 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1097 - Use <literal>PrivateKeyFile</literal> instead of 1098 - <literal>PrivateKey</literal>: the nix store is 1095 + `[WireGuard]` section of the unit. See 1096 + {manpage}`systemd.netdev(5)` for details. 1097 + Use `PrivateKeyFile` instead of 1098 + `PrivateKey`: the nix store is 1099 1099 world-readable. 1100 1100 ''; 1101 1101 }; ··· 1110 1110 PersistentKeepalive = 15; 1111 1111 };}]; 1112 1112 type = with types; listOf (submodule wireguardPeerOptions); 1113 - description = '' 1113 + description = lib.mdDoc '' 1114 1114 Each item in this array specifies an option in the 1115 - <literal>[WireGuardPeer]</literal> section of the unit. See 1116 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1117 - Use <literal>PresharedKeyFile</literal> instead of 1118 - <literal>PresharedKey</literal>: the nix store is 1115 + `[WireGuardPeer]` section of the unit. See 1116 + {manpage}`systemd.netdev(5)` for details. 1117 + Use `PresharedKeyFile` instead of 1118 + `PresharedKey`: the nix store is 1119 1119 world-readable. 1120 1120 ''; 1121 1121 }; ··· 1124 1124 default = {}; 1125 1125 example = { Mode = "802.3ad"; }; 1126 1126 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionBond; 1127 - description = '' 1127 + description = lib.mdDoc '' 1128 1128 Each attribute in this set specifies an option in the 1129 - <literal>[Bond]</literal> section of the unit. See 1130 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1129 + `[Bond]` section of the unit. See 1130 + {manpage}`systemd.netdev(5)` for details. 1131 1131 ''; 1132 1132 }; 1133 1133 ··· 1135 1135 default = {}; 1136 1136 example = { InterfaceId = 1; }; 1137 1137 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionXfrm; 1138 - description = '' 1138 + description = lib.mdDoc '' 1139 1139 Each attribute in this set specifies an option in the 1140 - <literal>[Xfrm]</literal> section of the unit. See 1141 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1140 + `[Xfrm]` section of the unit. See 1141 + {manpage}`systemd.netdev(5)` for details. 1142 1142 ''; 1143 1143 }; 1144 1144 ··· 1146 1146 default = {}; 1147 1147 example = { Table = 2342; }; 1148 1148 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionVRF; 1149 - description = '' 1149 + description = lib.mdDoc '' 1150 1150 Each attribute in this set specifies an option in the 1151 - <literal>[VRF]</literal> section of the unit. See 1152 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1151 + `[VRF]` section of the unit. See 1152 + {manpage}`systemd.netdev(5)` for details. 1153 1153 A detailed explanation about how VRFs work can be found in the 1154 - <link xlink:href="https://www.kernel.org/doc/Documentation/networking/vrf.txt">kernel docs</link>. 1154 + [kernel docs](https://www.kernel.org/doc/Documentation/networking/vrf.txt). 1155 1155 ''; 1156 1156 }; 1157 1157 ··· 1162 1162 RoutingAlgorithm = "batman-v"; 1163 1163 }; 1164 1164 type = types.addCheck (types.attrsOf unitOption) check.netdev.sectionBatmanAdvanced; 1165 - description = '' 1165 + description = lib.mdDoc '' 1166 1166 Each attribute in this set specifies an option in the 1167 - <literal>[BatmanAdvanced]</literal> section of the unit. See 1168 - <citerefentry><refentrytitle>systemd.netdev</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1167 + `[BatmanAdvanced]` section of the unit. See 1168 + {manpage}`systemd.netdev(5)` for details. 1169 1169 ''; 1170 1170 }; 1171 1171 ··· 1176 1176 addressConfig = mkOption { 1177 1177 example = { Address = "192.168.0.100/24"; }; 1178 1178 type = types.addCheck (types.attrsOf unitOption) check.network.sectionAddress; 1179 - description = '' 1179 + description = lib.mdDoc '' 1180 1180 Each attribute in this set specifies an option in the 1181 - <literal>[Address]</literal> section of the unit. See 1182 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1181 + `[Address]` section of the unit. See 1182 + {manpage}`systemd.network(5)` for details. 1183 1183 ''; 1184 1184 }; 1185 1185 }; ··· 1191 1191 default = { }; 1192 1192 example = { Table = 10; IncomingInterface = "eth1"; Family = "both"; }; 1193 1193 type = types.addCheck (types.attrsOf unitOption) check.network.sectionRoutingPolicyRule; 1194 - description = '' 1194 + description = lib.mdDoc '' 1195 1195 Each attribute in this set specifies an option in the 1196 - <literal>[RoutingPolicyRule]</literal> section of the unit. See 1197 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1196 + `[RoutingPolicyRule]` section of the unit. See 1197 + {manpage}`systemd.network(5)` for details. 1198 1198 ''; 1199 1199 }; 1200 1200 }; ··· 1206 1206 default = {}; 1207 1207 example = { Gateway = "192.168.0.1"; }; 1208 1208 type = types.addCheck (types.attrsOf unitOption) check.network.sectionRoute; 1209 - description = '' 1209 + description = lib.mdDoc '' 1210 1210 Each attribute in this set specifies an option in the 1211 - <literal>[Route]</literal> section of the unit. See 1212 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1211 + `[Route]` section of the unit. See 1212 + {manpage}`systemd.network(5)` for details. 1213 1213 ''; 1214 1214 }; 1215 1215 }; ··· 1221 1221 default = {}; 1222 1222 example = { Prefix = "fd00::/64"; }; 1223 1223 type = types.addCheck (types.attrsOf unitOption) check.network.sectionIPv6Prefix; 1224 - description = '' 1224 + description = lib.mdDoc '' 1225 1225 Each attribute in this set specifies an option in the 1226 - <literal>[IPv6Prefix]</literal> section of the unit. See 1227 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1226 + `[IPv6Prefix]` section of the unit. See 1227 + {manpage}`systemd.network(5)` for details. 1228 1228 ''; 1229 1229 }; 1230 1230 }; ··· 1236 1236 default = {}; 1237 1237 example = { MACAddress = "65:43:4a:5b:d8:5f"; Address = "192.168.1.42"; }; 1238 1238 type = types.addCheck (types.attrsOf unitOption) check.network.sectionDHCPServerStaticLease; 1239 - description = '' 1239 + description = lib.mdDoc '' 1240 1240 Each attribute in this set specifies an option in the 1241 - <literal>[DHCPServerStaticLease]</literal> section of the unit. See 1242 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1241 + `[DHCPServerStaticLease]` section of the unit. See 1242 + {manpage}`systemd.network(5)` for details. 1243 1243 1244 1244 Make sure to configure the corresponding client interface to use 1245 - <literal>ClientIdentifier=mac</literal>. 1245 + `ClientIdentifier=mac`. 1246 1246 ''; 1247 1247 }; 1248 1248 }; ··· 1254 1254 default = {}; 1255 1255 example = { Unmanaged = true; }; 1256 1256 type = types.addCheck (types.attrsOf unitOption) check.network.sectionLink; 1257 - description = '' 1257 + description = lib.mdDoc '' 1258 1258 Each attribute in this set specifies an option in the 1259 - <literal>[Link]</literal> section of the unit. See 1260 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1259 + `[Link]` section of the unit. See 1260 + {manpage}`systemd.network(5)` for details. 1261 1261 ''; 1262 1262 }; 1263 1263 ··· 1265 1265 default = {}; 1266 1266 example = { Description = "My Network"; }; 1267 1267 type = types.addCheck (types.attrsOf unitOption) check.network.sectionNetwork; 1268 - description = '' 1268 + description = lib.mdDoc '' 1269 1269 Each attribute in this set specifies an option in the 1270 - <literal>[Network]</literal> section of the unit. See 1271 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1270 + `[Network]` section of the unit. See 1271 + {manpage}`systemd.network(5)` for details. 1272 1272 ''; 1273 1273 }; 1274 1274 ··· 1283 1283 default = {}; 1284 1284 example = { UseDNS = true; UseRoutes = true; }; 1285 1285 type = types.addCheck (types.attrsOf unitOption) check.network.sectionDHCPv4; 1286 - description = '' 1286 + description = lib.mdDoc '' 1287 1287 Each attribute in this set specifies an option in the 1288 - <literal>[DHCPv4]</literal> section of the unit. See 1289 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1288 + `[DHCPv4]` section of the unit. See 1289 + {manpage}`systemd.network(5)` for details. 1290 1290 ''; 1291 1291 }; 1292 1292 ··· 1294 1294 default = {}; 1295 1295 example = { UseDNS = true; }; 1296 1296 type = types.addCheck (types.attrsOf unitOption) check.network.sectionDHCPv6; 1297 - description = '' 1297 + description = lib.mdDoc '' 1298 1298 Each attribute in this set specifies an option in the 1299 - <literal>[DHCPv6]</literal> section of the unit. See 1300 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1299 + `[DHCPv6]` section of the unit. See 1300 + {manpage}`systemd.network(5)` for details. 1301 1301 ''; 1302 1302 }; 1303 1303 ··· 1305 1305 default = {}; 1306 1306 example = { SubnetId = "auto"; Announce = true; }; 1307 1307 type = types.addCheck (types.attrsOf unitOption) check.network.sectionDHCPv6PrefixDelegation; 1308 - description = '' 1308 + description = lib.mdDoc '' 1309 1309 Each attribute in this set specifies an option in the 1310 - <literal>[DHCPv6PrefixDelegation]</literal> section of the unit. See 1311 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1310 + `[DHCPv6PrefixDelegation]` section of the unit. See 1311 + {manpage}`systemd.network(5)` for details. 1312 1312 ''; 1313 1313 }; 1314 1314 ··· 1316 1316 default = {}; 1317 1317 example = { UseDNS = true; DHCPv6Client = "always"; }; 1318 1318 type = types.addCheck (types.attrsOf unitOption) check.network.sectionIPv6AcceptRA; 1319 - description = '' 1319 + description = lib.mdDoc '' 1320 1320 Each attribute in this set specifies an option in the 1321 - <literal>[IPv6AcceptRA]</literal> section of the unit. See 1322 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1321 + `[IPv6AcceptRA]` section of the unit. See 1322 + {manpage}`systemd.network(5)` for details. 1323 1323 ''; 1324 1324 }; 1325 1325 ··· 1327 1327 default = {}; 1328 1328 example = { PoolOffset = 50; EmitDNS = false; }; 1329 1329 type = types.addCheck (types.attrsOf unitOption) check.network.sectionDHCPServer; 1330 - description = '' 1330 + description = lib.mdDoc '' 1331 1331 Each attribute in this set specifies an option in the 1332 - <literal>[DHCPServer]</literal> section of the unit. See 1333 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1332 + `[DHCPServer]` section of the unit. See 1333 + {manpage}`systemd.network(5)` for details. 1334 1334 ''; 1335 1335 }; 1336 1336 ··· 1345 1345 default = {}; 1346 1346 example = { EmitDNS = true; Managed = true; OtherInformation = true; }; 1347 1347 type = types.addCheck (types.attrsOf unitOption) check.network.sectionIPv6SendRA; 1348 - description = '' 1348 + description = lib.mdDoc '' 1349 1349 Each attribute in this set specifies an option in the 1350 - <literal>[IPv6SendRA]</literal> section of the unit. See 1351 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1350 + `[IPv6SendRA]` section of the unit. See 1351 + {manpage}`systemd.network(5)` for details. 1352 1352 ''; 1353 1353 }; 1354 1354 ··· 1356 1356 default = []; 1357 1357 example = [ { dhcpServerStaticLeaseConfig = { MACAddress = "65:43:4a:5b:d8:5f"; Address = "192.168.1.42"; }; } ]; 1358 1358 type = with types; listOf (submodule dhcpServerStaticLeaseOptions); 1359 - description = '' 1359 + description = lib.mdDoc '' 1360 1360 A list of DHCPServerStaticLease sections to be added to the unit. See 1361 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1361 + {manpage}`systemd.network(5)` for details. 1362 1362 ''; 1363 1363 }; 1364 1364 ··· 1366 1366 default = []; 1367 1367 example = [ { ipv6PrefixConfig = { AddressAutoconfiguration = true; OnLink = true; }; } ]; 1368 1368 type = with types; listOf (submodule ipv6PrefixOptions); 1369 - description = '' 1369 + description = lib.mdDoc '' 1370 1370 A list of ipv6Prefix sections to be added to the unit. See 1371 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1371 + {manpage}`systemd.network(5)` for details. 1372 1372 ''; 1373 1373 }; 1374 1374 ··· 1399 1399 address = mkOption { 1400 1400 default = [ ]; 1401 1401 type = types.listOf types.str; 1402 - description = '' 1402 + description = lib.mdDoc '' 1403 1403 A list of addresses to be added to the network section of the 1404 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1404 + unit. See {manpage}`systemd.network(5)` for details. 1405 1405 ''; 1406 1406 }; 1407 1407 1408 1408 gateway = mkOption { 1409 1409 default = [ ]; 1410 1410 type = types.listOf types.str; 1411 - description = '' 1411 + description = lib.mdDoc '' 1412 1412 A list of gateways to be added to the network section of the 1413 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1413 + unit. See {manpage}`systemd.network(5)` for details. 1414 1414 ''; 1415 1415 }; 1416 1416 1417 1417 dns = mkOption { 1418 1418 default = [ ]; 1419 1419 type = types.listOf types.str; 1420 - description = '' 1420 + description = lib.mdDoc '' 1421 1421 A list of dns servers to be added to the network section of the 1422 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1422 + unit. See {manpage}`systemd.network(5)` for details. 1423 1423 ''; 1424 1424 }; 1425 1425 1426 1426 ntp = mkOption { 1427 1427 default = [ ]; 1428 1428 type = types.listOf types.str; 1429 - description = '' 1429 + description = lib.mdDoc '' 1430 1430 A list of ntp servers to be added to the network section of the 1431 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1431 + unit. See {manpage}`systemd.network(5)` for details. 1432 1432 ''; 1433 1433 }; 1434 1434 1435 1435 bridge = mkOption { 1436 1436 default = [ ]; 1437 1437 type = types.listOf types.str; 1438 - description = '' 1438 + description = lib.mdDoc '' 1439 1439 A list of bridge interfaces to be added to the network section of the 1440 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1440 + unit. See {manpage}`systemd.network(5)` for details. 1441 1441 ''; 1442 1442 }; 1443 1443 1444 1444 bond = mkOption { 1445 1445 default = [ ]; 1446 1446 type = types.listOf types.str; 1447 - description = '' 1447 + description = lib.mdDoc '' 1448 1448 A list of bond interfaces to be added to the network section of the 1449 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1449 + unit. See {manpage}`systemd.network(5)` for details. 1450 1450 ''; 1451 1451 }; 1452 1452 1453 1453 vrf = mkOption { 1454 1454 default = [ ]; 1455 1455 type = types.listOf types.str; 1456 - description = '' 1456 + description = lib.mdDoc '' 1457 1457 A list of vrf interfaces to be added to the network section of the 1458 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1458 + unit. See {manpage}`systemd.network(5)` for details. 1459 1459 ''; 1460 1460 }; 1461 1461 1462 1462 vlan = mkOption { 1463 1463 default = [ ]; 1464 1464 type = types.listOf types.str; 1465 - description = '' 1465 + description = lib.mdDoc '' 1466 1466 A list of vlan interfaces to be added to the network section of the 1467 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1467 + unit. See {manpage}`systemd.network(5)` for details. 1468 1468 ''; 1469 1469 }; 1470 1470 1471 1471 macvlan = mkOption { 1472 1472 default = [ ]; 1473 1473 type = types.listOf types.str; 1474 - description = '' 1474 + description = lib.mdDoc '' 1475 1475 A list of macvlan interfaces to be added to the network section of the 1476 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1476 + unit. See {manpage}`systemd.network(5)` for details. 1477 1477 ''; 1478 1478 }; 1479 1479 1480 1480 vxlan = mkOption { 1481 1481 default = [ ]; 1482 1482 type = types.listOf types.str; 1483 - description = '' 1483 + description = lib.mdDoc '' 1484 1484 A list of vxlan interfaces to be added to the network section of the 1485 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1485 + unit. See {manpage}`systemd.network(5)` for details. 1486 1486 ''; 1487 1487 }; 1488 1488 1489 1489 tunnel = mkOption { 1490 1490 default = [ ]; 1491 1491 type = types.listOf types.str; 1492 - description = '' 1492 + description = lib.mdDoc '' 1493 1493 A list of tunnel interfaces to be added to the network section of the 1494 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1494 + unit. See {manpage}`systemd.network(5)` for details. 1495 1495 ''; 1496 1496 }; 1497 1497 1498 1498 xfrm = mkOption { 1499 1499 default = [ ]; 1500 1500 type = types.listOf types.str; 1501 - description = '' 1501 + description = lib.mdDoc '' 1502 1502 A list of xfrm interfaces to be added to the network section of the 1503 - unit. See <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1503 + unit. See {manpage}`systemd.network(5)` for details. 1504 1504 ''; 1505 1505 }; 1506 1506 1507 1507 addresses = mkOption { 1508 1508 default = [ ]; 1509 1509 type = with types; listOf (submodule addressOptions); 1510 - description = '' 1510 + description = lib.mdDoc '' 1511 1511 A list of address sections to be added to the unit. See 1512 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1512 + {manpage}`systemd.network(5)` for details. 1513 1513 ''; 1514 1514 }; 1515 1515 1516 1516 routingPolicyRules = mkOption { 1517 1517 default = [ ]; 1518 1518 type = with types; listOf (submodule routingPolicyRulesOptions); 1519 - description = '' 1519 + description = lib.mdDoc '' 1520 1520 A list of routing policy rules sections to be added to the unit. See 1521 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1521 + {manpage}`systemd.network(5)` for details. 1522 1522 ''; 1523 1523 }; 1524 1524 1525 1525 routes = mkOption { 1526 1526 default = [ ]; 1527 1527 type = with types; listOf (submodule routeOptions); 1528 - description = '' 1528 + description = lib.mdDoc '' 1529 1529 A list of route sections to be added to the unit. See 1530 - <citerefentry><refentrytitle>systemd.network</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1530 + {manpage}`systemd.network(5)` for details. 1531 1531 ''; 1532 1532 }; 1533 1533 ··· 1552 1552 default = {}; 1553 1553 example = { foo = 27; }; 1554 1554 type = with types; attrsOf int; 1555 - description = '' 1555 + description = lib.mdDoc '' 1556 1556 Defines route table names as an attrset of name to number. 1557 - See <citerefentry><refentrytitle>networkd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 1557 + See {manpage}`networkd.conf(5)` for details. 1558 1558 ''; 1559 1559 }; 1560 1560
+9 -9
nixos/modules/system/boot/systemd/nspawn.nix
··· 50 50 default = {}; 51 51 example = { Parameters = "/bin/sh"; }; 52 52 type = types.addCheck (types.attrsOf unitOption) checkExec; 53 - description = '' 53 + description = lib.mdDoc '' 54 54 Each attribute in this set specifies an option in the 55 - <literal>[Exec]</literal> section of this unit. See 56 - <citerefentry><refentrytitle>systemd.nspawn</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 55 + `[Exec]` section of this unit. See 56 + {manpage}`systemd.nspawn(5)` for details. 57 57 ''; 58 58 }; 59 59 ··· 61 61 default = {}; 62 62 example = { Bind = [ "/home/alice" ]; }; 63 63 type = types.addCheck (types.attrsOf unitOption) checkFiles; 64 - description = '' 64 + description = lib.mdDoc '' 65 65 Each attribute in this set specifies an option in the 66 - <literal>[Files]</literal> section of this unit. See 67 - <citerefentry><refentrytitle>systemd.nspawn</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 66 + `[Files]` section of this unit. See 67 + {manpage}`systemd.nspawn(5)` for details. 68 68 ''; 69 69 }; 70 70 ··· 72 72 default = {}; 73 73 example = { Private = false; }; 74 74 type = types.addCheck (types.attrsOf unitOption) checkNetwork; 75 - description = '' 75 + description = lib.mdDoc '' 76 76 Each attribute in this set specifies an option in the 77 - <literal>[Network]</literal> section of this unit. See 78 - <citerefentry><refentrytitle>systemd.nspawn</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details. 77 + `[Network]` section of this unit. See 78 + {manpage}`systemd.nspawn(5)` for details. 79 79 ''; 80 80 }; 81 81 };
+4 -4
nixos/modules/tasks/auto-upgrade.nix
··· 77 77 type = types.str; 78 78 default = "04:40"; 79 79 example = "daily"; 80 - description = '' 80 + description = lib.mdDoc '' 81 81 How often or when upgrade occurs. For most desktop and server systems 82 82 a sufficient upgrade frequency is once a day. 83 83 84 84 The format is described in 85 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 85 + {manpage}`systemd.time(7)`. 86 86 ''; 87 87 }; 88 88 ··· 101 101 default = "0"; 102 102 type = types.str; 103 103 example = "45min"; 104 - description = '' 104 + description = lib.mdDoc '' 105 105 Add a randomized delay before each automatic upgrade. 106 106 The delay will be chosen between zero and this value. 107 107 This value must be a time span in the format specified by 108 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry> 108 + {manpage}`systemd.time(7)` 109 109 ''; 110 110 }; 111 111
+3 -3
nixos/modules/tasks/filesystems/btrfs.nix
··· 36 36 default = "monthly"; 37 37 type = types.str; 38 38 example = "weekly"; 39 - description = '' 39 + description = lib.mdDoc '' 40 40 Systemd calendar expression for when to scrub btrfs filesystems. 41 41 The recommended period is a month but could be less 42 - (<citerefentry><refentrytitle>btrfs-scrub</refentrytitle><manvolnum>8</manvolnum></citerefentry>). 42 + ({manpage}`btrfs-scrub(8)`). 43 43 See 44 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry> 44 + {manpage}`systemd.time(7)` 45 45 for more information on the syntax. 46 46 ''; 47 47 };
+4 -4
nixos/modules/tasks/filesystems/zfs.nix
··· 388 388 default = "weekly"; 389 389 type = types.str; 390 390 example = "daily"; 391 - description = '' 391 + description = lib.mdDoc '' 392 392 How often we run trim. For most desktop and server systems 393 393 a sufficient trimming frequency is once a week. 394 394 395 395 The format is described in 396 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 396 + {manpage}`systemd.time(7)`. 397 397 ''; 398 398 }; 399 399 }; ··· 405 405 default = "Sun, 02:00"; 406 406 type = types.str; 407 407 example = "daily"; 408 - description = '' 408 + description = lib.mdDoc '' 409 409 Systemd calendar expression when to scrub ZFS pools. See 410 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>. 410 + {manpage}`systemd.time(7)`. 411 411 ''; 412 412 }; 413 413
+4 -4
nixos/modules/tasks/network-interfaces.nix
··· 876 876 primary = { port = 9001; local = { address = "192.0.2.1"; dev = "eth0"; }; }; 877 877 backup = { port = 9002; }; 878 878 }; 879 - description = '' 879 + description = lib.mdDoc '' 880 880 This option allows you to configure Foo Over UDP and Generic UDP Encapsulation 881 - endpoints. See <citerefentry><refentrytitle>ip-fou</refentrytitle><manvolnum>8</manvolnum></citerefentry> for details. 881 + endpoints. See {manpage}`ip-fou(8)` for details. 882 882 ''; 883 883 type = with types; attrsOf (submodule { 884 884 options = { ··· 997 997 options = { 998 998 type = mkOption { 999 999 type = enum [ "fou" "gue" ]; 1000 - description = '' 1000 + description = lib.mdDoc '' 1001 1001 Selects encapsulation type. See 1002 - <citerefentry><refentrytitle>ip-link</refentrytitle><manvolnum>8</manvolnum></citerefentry> for details. 1002 + {manpage}`ip-link(8)` for details. 1003 1003 ''; 1004 1004 }; 1005 1005
+3 -3
nixos/modules/virtualisation/azure-agent.nix
··· 60 60 options.virtualisation.azure.agent = { 61 61 enable = mkOption { 62 62 default = false; 63 - description = "Whether to enable the Windows Azure Linux Agent."; 63 + description = lib.mdDoc "Whether to enable the Windows Azure Linux Agent."; 64 64 }; 65 65 verboseLogging = mkOption { 66 66 default = false; 67 - description = "Whether to enable verbose logging."; 67 + description = lib.mdDoc "Whether to enable verbose logging."; 68 68 }; 69 69 mountResourceDisk = mkOption { 70 70 default = true; 71 - description = "Whether the agent should format (ext4) and mount the resource disk to /mnt/resource."; 71 + description = lib.mdDoc "Whether the agent should format (ext4) and mount the resource disk to /mnt/resource."; 72 72 }; 73 73 }; 74 74
+2 -2
nixos/modules/virtualisation/docker.nix
··· 142 142 dates = mkOption { 143 143 default = "weekly"; 144 144 type = types.str; 145 - description = '' 145 + description = lib.mdDoc '' 146 146 Specification (in the format described by 147 - <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry>) of the time at 147 + {manpage}`systemd.time(7)`) of the time at 148 148 which the prune will occur. 149 149 ''; 150 150 };
+4 -4
nixos/modules/virtualisation/lxc.nix
··· 31 31 type = types.lines; 32 32 default = ""; 33 33 description = 34 - '' 34 + lib.mdDoc '' 35 35 This is the system-wide LXC config. See 36 - <citerefentry><refentrytitle>lxc.system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 36 + {manpage}`lxc.system.conf(5)`. 37 37 ''; 38 38 }; 39 39 ··· 42 42 type = types.lines; 43 43 default = ""; 44 44 description = 45 - '' 45 + lib.mdDoc '' 46 46 Default config (default.conf) for new containers, i.e. for 47 - network config. See <citerefentry><refentrytitle>lxc.container.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. 47 + network config. See {manpage}`lxc.container.conf(5)`. 48 48 ''; 49 49 }; 50 50
+2 -2
nixos/modules/virtualisation/nixos-containers.nix
··· 629 629 timeoutStartSec = mkOption { 630 630 type = types.str; 631 631 default = "1min"; 632 - description = '' 632 + description = lib.mdDoc '' 633 633 Time for the container to start. In case of a timeout, 634 634 the container processes get killed. 635 - See <citerefentry><refentrytitle>systemd.time</refentrytitle><manvolnum>7</manvolnum></citerefentry> 635 + See {manpage}`systemd.time(7)` 636 636 for more information about the format. 637 637 ''; 638 638 };
+9 -9
nixos/modules/virtualisation/podman/default.nix
··· 57 57 mkOption { 58 58 type = types.bool; 59 59 default = false; 60 - description = '' 60 + description = lib.mdDoc '' 61 61 This option enables Podman, a daemonless container engine for 62 62 developing, managing, and running OCI Containers on your Linux System. 63 63 64 - It is a drop-in replacement for the <command>docker</command> command. 64 + It is a drop-in replacement for the {command}`docker` command. 65 65 ''; 66 66 }; 67 67 68 68 dockerSocket.enable = mkOption { 69 69 type = types.bool; 70 70 default = false; 71 - description = '' 71 + description = lib.mdDoc '' 72 72 Make the Podman socket available in place of the Docker socket, so 73 73 Docker tools can find the Podman socket. 74 74 75 75 Podman implements the Docker API. 76 76 77 - Users must be in the <literal>podman</literal> group in order to connect. As 77 + Users must be in the `podman` group in order to connect. As 78 78 with Docker, members of this group can gain root access. 79 79 ''; 80 80 }; ··· 82 82 dockerCompat = mkOption { 83 83 type = types.bool; 84 84 default = false; 85 - description = '' 86 - Create an alias mapping <command>docker</command> to <command>podman</command>. 85 + description = lib.mdDoc '' 86 + Create an alias mapping {command}`docker` to {command}`podman`. 87 87 ''; 88 88 }; 89 89 90 90 enableNvidia = mkOption { 91 91 type = types.bool; 92 92 default = false; 93 - description = '' 93 + description = lib.mdDoc '' 94 94 Enable use of NVidia GPUs from within podman containers. 95 95 ''; 96 96 }; ··· 103 103 pkgs.gvisor 104 104 ] 105 105 ''; 106 - description = '' 106 + description = lib.mdDoc '' 107 107 Extra packages to be installed in the Podman wrapper. 108 108 ''; 109 109 }; ··· 120 120 defaultNetwork.extraPlugins = lib.mkOption { 121 121 type = types.listOf json.type; 122 122 default = []; 123 - description = '' 123 + description = lib.mdDoc '' 124 124 Extra CNI plugin configurations to add to podman's default network. 125 125 ''; 126 126 };
+7 -7
nixos/modules/virtualisation/podman/network-socket.nix
··· 32 32 33 33 server = mkOption { 34 34 type = types.enum []; 35 - description = '' 35 + description = lib.mdDoc '' 36 36 Choice of TLS proxy server. 37 37 ''; 38 38 example = "ghostunnel"; ··· 41 41 openFirewall = mkOption { 42 42 type = types.bool; 43 43 default = false; 44 - description = '' 44 + description = lib.mdDoc '' 45 45 Whether to open the port in the firewall. 46 46 ''; 47 47 }; 48 48 49 49 tls.cacert = mkOption { 50 50 type = types.path; 51 - description = '' 51 + description = lib.mdDoc '' 52 52 Path to CA certificate to use for client authentication. 53 53 ''; 54 54 }; 55 55 56 56 tls.cert = mkOption { 57 57 type = types.path; 58 - description = '' 58 + description = lib.mdDoc '' 59 59 Path to certificate describing the server. 60 60 ''; 61 61 }; 62 62 63 63 tls.key = mkOption { 64 64 type = types.path; 65 - description = '' 65 + description = lib.mdDoc '' 66 66 Path to the private key corresponding to the server certificate. 67 67 68 68 Use a string for this setting. Otherwise it will be copied to the Nix ··· 73 73 port = mkOption { 74 74 type = types.port; 75 75 default = 2376; 76 - description = '' 76 + description = lib.mdDoc '' 77 77 TCP port number for receiving TLS connections. 78 78 ''; 79 79 }; 80 80 listenAddress = mkOption { 81 81 type = types.str; 82 82 default = "0.0.0.0"; 83 - description = '' 83 + description = lib.mdDoc '' 84 84 Interface address for receiving TLS connections. 85 85 ''; 86 86 };
+43 -43
nixos/modules/virtualisation/qemu-vm.nix
··· 27 27 28 28 file = mkOption { 29 29 type = types.str; 30 - description = "The file image used for this drive."; 30 + description = lib.mdDoc "The file image used for this drive."; 31 31 }; 32 32 33 33 driveExtraOpts = mkOption { 34 34 type = types.attrsOf types.str; 35 35 default = {}; 36 - description = "Extra options passed to drive flag."; 36 + description = lib.mdDoc "Extra options passed to drive flag."; 37 37 }; 38 38 39 39 deviceExtraOpts = mkOption { 40 40 type = types.attrsOf types.str; 41 41 default = {}; 42 - description = "Extra options passed to device flag."; 42 + description = lib.mdDoc "Extra options passed to device flag."; 43 43 }; 44 44 45 45 name = mkOption { 46 46 type = types.nullOr types.str; 47 47 default = null; 48 48 description = 49 - "A name for the drive. Must be unique in the drives list. Not passed to qemu."; 49 + lib.mdDoc "A name for the drive. Must be unique in the drives list. Not passed to qemu."; 50 50 }; 51 51 52 52 }; ··· 298 298 type = types.ints.positive; 299 299 default = 1024; 300 300 description = 301 - '' 301 + lib.mdDoc '' 302 302 The memory size in megabytes of the virtual machine. 303 303 ''; 304 304 }; ··· 308 308 type = types.ints.positive; 309 309 default = 16384; 310 310 description = 311 - '' 311 + lib.mdDoc '' 312 312 The msize (maximum packet size) option passed to 9p file systems, in 313 313 bytes. Increasing this should increase performance significantly, 314 314 at the cost of higher RAM usage. ··· 320 320 type = types.nullOr types.ints.positive; 321 321 default = 1024; 322 322 description = 323 - '' 323 + lib.mdDoc '' 324 324 The disk size in megabytes of the virtual machine. 325 325 ''; 326 326 }; ··· 331 331 default = "./${config.system.name}.qcow2"; 332 332 defaultText = literalExpression ''"./''${config.system.name}.qcow2"''; 333 333 description = 334 - '' 334 + lib.mdDoc '' 335 335 Path to the disk image containing the root filesystem. 336 336 The image will be created on startup if it does not 337 337 exist. ··· 343 343 type = types.path; 344 344 example = "/dev/vda"; 345 345 description = 346 - '' 346 + lib.mdDoc '' 347 347 The disk to be used for the root filesystem. 348 348 ''; 349 349 }; ··· 353 353 type = types.listOf types.ints.positive; 354 354 default = []; 355 355 description = 356 - '' 356 + lib.mdDoc '' 357 357 Additional disk images to provide to the VM. The value is 358 358 a list of size in megabytes of each disk. These disks are 359 359 writeable by the VM. ··· 365 365 type = types.bool; 366 366 default = true; 367 367 description = 368 - '' 368 + lib.mdDoc '' 369 369 Whether to run QEMU with a graphics window, or in nographic mode. 370 370 Serial console will be enabled on both settings, but this will 371 371 change the preferred console. ··· 377 377 type = options.services.xserver.resolutions.type.nestedTypes.elemType; 378 378 default = { x = 1024; y = 768; }; 379 379 description = 380 - '' 380 + lib.mdDoc '' 381 381 The resolution of the virtual machine display. 382 382 ''; 383 383 }; ··· 387 387 type = types.ints.positive; 388 388 default = 1; 389 389 description = 390 - '' 390 + lib.mdDoc '' 391 391 Specify the number of cores the guest is permitted to use. 392 392 The number can be higher than the available cores on the 393 393 host system. ··· 400 400 (types.submodule { 401 401 options.source = mkOption { 402 402 type = types.str; 403 - description = "The path of the directory to share, can be a shell variable"; 403 + description = lib.mdDoc "The path of the directory to share, can be a shell variable"; 404 404 }; 405 405 options.target = mkOption { 406 406 type = types.path; 407 - description = "The mount point of the directory inside the virtual machine"; 407 + description = lib.mdDoc "The mount point of the directory inside the virtual machine"; 408 408 }; 409 409 }); 410 410 default = { }; ··· 412 412 my-share = { source = "/path/to/be/shared"; target = "/mnt/shared"; }; 413 413 }; 414 414 description = 415 - '' 415 + lib.mdDoc '' 416 416 An attributes set of directories that will be shared with the 417 417 virtual machine using VirtFS (9P filesystem over VirtIO). 418 418 The attribute name will be used as the 9P mount tag. ··· 424 424 type = types.listOf types.path; 425 425 default = []; 426 426 description = 427 - '' 427 + lib.mdDoc '' 428 428 A list of paths whose closure should be made available to 429 429 the VM. 430 430 ··· 434 434 garbage (because they are not registered in the Nix 435 435 database of the guest). 436 436 437 - When <option>virtualisation.useNixStoreImage</option> is 437 + When {option}`virtualisation.useNixStoreImage` is 438 438 set, the closure is copied to the Nix store image. 439 439 ''; 440 440 }; ··· 459 459 options.proto = mkOption { 460 460 type = types.enum [ "tcp" "udp" ]; 461 461 default = "tcp"; 462 - description = "The protocol to forward."; 462 + description = lib.mdDoc "The protocol to forward."; 463 463 }; 464 464 options.host.address = mkOption { 465 465 type = types.str; 466 466 default = ""; 467 - description = "The IPv4 address of the host."; 467 + description = lib.mdDoc "The IPv4 address of the host."; 468 468 }; 469 469 options.host.port = mkOption { 470 470 type = types.port; 471 - description = "The host port to be mapped."; 471 + description = lib.mdDoc "The host port to be mapped."; 472 472 }; 473 473 options.guest.address = mkOption { 474 474 type = types.str; 475 475 default = ""; 476 - description = "The IPv4 address on the guest VLAN."; 476 + description = lib.mdDoc "The IPv4 address on the guest VLAN."; 477 477 }; 478 478 options.guest.port = mkOption { 479 479 type = types.port; 480 - description = "The guest port to be mapped."; 480 + description = lib.mdDoc "The guest port to be mapped."; 481 481 }; 482 482 }); 483 483 default = []; ··· 514 514 default = [ 1 ]; 515 515 example = [ 1 2 ]; 516 516 description = 517 - '' 517 + lib.mdDoc '' 518 518 Virtual networks to which the VM is connected. Each 519 519 number «N» in this list causes 520 520 the VM to have a virtual Ethernet interface attached to a 521 521 separate virtual network on which it will be assigned IP 522 522 address 523 - <literal>192.168.«N».«M»</literal>, 523 + `192.168.«N».«M»`, 524 524 where «M» is the index of this VM 525 525 in the list of VMs. 526 526 ''; ··· 531 531 type = types.bool; 532 532 default = true; # FIXME 533 533 description = 534 - '' 534 + lib.mdDoc '' 535 535 If enabled, the Nix store in the VM is made writable by 536 536 layering an overlay filesystem on top of the host's Nix 537 537 store. ··· 543 543 type = types.bool; 544 544 default = true; 545 545 description = 546 - '' 546 + lib.mdDoc '' 547 547 Use a tmpfs for the writable store instead of writing to the VM's 548 548 own filesystem. 549 549 ''; ··· 563 563 type = types.package; 564 564 default = pkgs.qemu_kvm; 565 565 example = "pkgs.qemu_test"; 566 - description = "QEMU package to use."; 566 + description = lib.mdDoc "QEMU package to use."; 567 567 }; 568 568 569 569 options = ··· 571 571 type = types.listOf types.str; 572 572 default = []; 573 573 example = [ "-vga std" ]; 574 - description = "Options passed to QEMU."; 574 + description = lib.mdDoc "Options passed to QEMU."; 575 575 }; 576 576 577 577 consoles = mkOption { ··· 580 580 consoles = [ "${qemu-common.qemuSerialDevice},115200n8" "tty0" ]; 581 581 in if cfg.graphics then consoles else reverseList consoles; 582 582 example = [ "console=tty1" ]; 583 - description = '' 583 + description = lib.mdDoc '' 584 584 The output console devices to pass to the kernel command line via the 585 - <literal>console</literal> parameter, the primary console is the last 585 + `console` parameter, the primary console is the last 586 586 item of this list. 587 587 588 588 By default it enables both serial console and 589 - <literal>tty0</literal>. The preferred console (last one) is based on 590 - the value of <option>virtualisation.graphics</option>. 589 + `tty0`. The preferred console (last one) is based on 590 + the value of {option}`virtualisation.graphics`. 591 591 ''; 592 592 }; 593 593 ··· 599 599 "-net nic,netdev=user.0,model=virtio" 600 600 "-netdev user,id=user.0,\${QEMU_NET_OPTS:+,$QEMU_NET_OPTS}" 601 601 ]; 602 - description = '' 602 + description = lib.mdDoc '' 603 603 Networking-related command-line options that should be passed to qemu. 604 604 The default is to use userspace networking (SLiRP). 605 605 ··· 612 612 drives = 613 613 mkOption { 614 614 type = types.listOf (types.submodule driveOpts); 615 - description = "Drives passed to qemu."; 615 + description = lib.mdDoc "Drives passed to qemu."; 616 616 apply = addDeviceNames; 617 617 }; 618 618 ··· 621 621 type = types.enum [ "virtio" "scsi" "ide" ]; 622 622 default = "virtio"; 623 623 example = "scsi"; 624 - description = "The interface used for the virtual hard disks."; 624 + description = lib.mdDoc "The interface used for the virtual hard disks."; 625 625 }; 626 626 627 627 guestAgent.enable = 628 628 mkOption { 629 629 type = types.bool; 630 630 default = true; 631 - description = '' 631 + description = lib.mdDoc '' 632 632 Enable the Qemu guest agent. 633 633 ''; 634 634 }; ··· 637 637 mkOption { 638 638 type = types.bool; 639 639 default = true; 640 - description = '' 640 + description = lib.mdDoc '' 641 641 Enable the virtio-keyboard device. 642 642 ''; 643 643 }; ··· 647 647 mkOption { 648 648 type = types.bool; 649 649 default = false; 650 - description = '' 650 + description = lib.mdDoc '' 651 651 Build and use a disk image for the Nix store, instead of 652 652 accessing the host's one through 9p. 653 653 ··· 662 662 type = types.bool; 663 663 default = false; 664 664 description = 665 - '' 665 + lib.mdDoc '' 666 666 If enabled, the virtual machine will be booted using the 667 667 regular boot loader (i.e., GRUB 1 or 2). This allows 668 668 testing of the boot loader. If ··· 677 677 type = types.bool; 678 678 default = false; 679 679 description = 680 - '' 680 + lib.mdDoc '' 681 681 If enabled, the virtual machine will provide a EFI boot 682 682 manager. 683 683 useEFIBoot is ignored if useBootLoader == false. ··· 689 689 type = types.bool; 690 690 default = true; 691 691 description = 692 - '' 692 + lib.mdDoc '' 693 693 If enabled, the boot disk of the virtual machine will be 694 694 formatted and mounted with the default filesystems for 695 695 testing. Swap devices and LUKS will be disabled. ··· 705 705 default = "./${config.system.name}-efi-vars.fd"; 706 706 defaultText = literalExpression ''"./''${config.system.name}-efi-vars.fd"''; 707 707 description = 708 - '' 708 + lib.mdDoc '' 709 709 Path to nvram image containing UEFI variables. The will be created 710 710 on startup if it does not exist. 711 711 '';