NixOS Options List Table of Contents Option List _module.args basement.enableAgenix basement.healthchecks.enable basement.healthchecks.exclude basement.healthchecks.providerFunctions basement.healthchecks.providers.healthchecks-io.enable basement.healthchecks.providers.healthchecks-io.services basement.healthchecks.providers.prometheus.address basement.healthchecks.providers.prometheus.enable basement.healthchecks.providers.prometheus.stateDir basement.healthchecks.services basement.netboot basement.netboot.enable basement.netboot.isRpi basement.netboot.uid basement.presets.common basement.presets.darwinvm basement.presets.server basement.services.docker.enable basement.services.gitlab-runner.commonFlags basement.services.gitlab-runner.commonTags basement.services.gitlab-runner.concurrentJobs basement.services.gitlab-runner.configs basement.services.gitlab-runner.configs.<name>.addNixRunner basement.services.gitlab-runner.configs.<name>.forwardDockerSocket basement.services.gitlab-runner.configs.<name>.registrationConfigFile basement.services.gitlab-runner.configs.<name>.tags basement.services.gitlab-runner.configs.<name>.useLocalCache basement.services.gitlab-runner.enable basement.services.gitlab-runner.namePrefix basement.services.k3s.clusterCIDR basement.services.k3s.clusterDNS basement.services.k3s.dns.nameservers basement.services.k3s.dns.searchPath basement.services.k3s.docker basement.services.k3s.enable basement.services.k3s.extraFlags basement.services.k3s.maxPods basement.services.k3s.nodeIp basement.services.k3s.role basement.services.k3s.serverAddr basement.services.k3s.serviceCIDR basement.services.netboot-host basement.services.netboot-host.configurations basement.services.netboot-host.enable basement.services.netboot-host.nfsRanges basement.services.ssh.enable basement.services.ssh.users basement.services.ssh.users.<name>.authorizedKeys basement.services.ssh.users.<name>.authorizedUsers basement.services.weblate.address basement.services.weblate.backup.enable basement.services.weblate.backup.startAt basement.services.weblate.backup.target basement.services.weblate.domain basement.services.weblate.enable basement.services.weblate.envFile basement.services.weblate.path basement.services.weblate.port secrets Option List _module.args Description Additional arguments passed to each module in addition to ones like lib, config, and pkgs, modulesPath. This option is also available to all submodules. Submodules do not inherit args from their parent module, nor do they provide args to their parent module or sibling submodules. The sole exception to this is the argument name which is provided by parent modules to a submodule and contains the attribute name the submodule is bound to, or a unique generated name if it is not bound to an attribute. Some arguments are already passed by default, of which the following cannot be changed with this option: lib: The nixpkgs library. config: The results of all options after merging the values from all modules together. options: The options declared in all modules. specialArgs: The specialArgs argument passed to evalModules. All attributes of specialArgs Whereas option values can generally depend on other option values thanks to laziness, this does not apply to imports, which must be computed statically before anything else. For this reason, callers of the module system can provide specialArgs which are available during import resolution. For NixOS, specialArgs includes modulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of the nixpkgs or NixOS directories. { modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; } For NixOS, the default value for this option includes at least this argument: pkgs: The nixpkgs package set according to the nixpkgs.pkgs option. Type lazy attribute set of raw value Declared by <lib/modules.nix> basement.enableAgenix Description decrypt encrypted secrets using agenix Type boolean Default True Declared by <nixos-modules/secrets.nix> basement.healthchecks.enable Description Whether to enable heathchecks.io monitoring. Type boolean Default False Example True Declared by <nixos-modules/healthchecks/default.nix> basement.healthchecks.exclude Description Names of systemd units that should not be monitored (this is ownly used for the warning) Type list of string Default [] Declared by <nixos-modules/healthchecks/default.nix> basement.healthchecks.providerFunctions Description None Type list of function that evaluates to a(n) function that evaluates to a(n) package Default [] Declared by <nixos-modules/healthchecks/default.nix> basement.healthchecks.providers.healthchecks-io.enable Description Whether to enable healthchecks.io healthcheck provider. Type boolean Default False Example True Declared by <nixos-modules/healthchecks/providers/healthchecks-io.nix> basement.healthchecks.providers.healthchecks-io.services Description Healthchecks.io IDs or ping URLs Type attribute set of Concatenated string Default {} Declared by <nixos-modules/healthchecks/providers/healthchecks-io.nix> basement.healthchecks.providers.prometheus.address Description Address to serve the prometheus exporter on (go format) Type string Default 127.0.0.1:9000 Declared by <nixos-modules/healthchecks/providers/prometheus.nix> basement.healthchecks.providers.prometheus.enable Description Whether to enable prometheus healthcheck provider. Type boolean Default False Example True Declared by <nixos-modules/healthchecks/providers/prometheus.nix> basement.healthchecks.providers.prometheus.stateDir Description None Type string Default /var/lib/healthchecks/prometheus Declared by <nixos-modules/healthchecks/providers/prometheus.nix> basement.healthchecks.services Description Names of systemd units that should be monitored Type list of string Default [] Declared by <nixos-modules/healthchecks/default.nix> basement.netboot Description Configuration of a nix-basement netboot client. Type submodule Default {} Example {enable = true; uid = d2:ed:80:67:e1:5f; } Declared by <nixos-modules/services/netboot/default.nix> basement.netboot.enable Description Whether to enable Enables nix-basement netboot client configuration. Type boolean Default False Example True Declared by <nixos-modules/services/netboot/default.nix> basement.netboot.isRpi Description is this a raspberry pi? Type boolean Default False Declared by <nixos-modules/services/netboot/default.nix> basement.netboot.uid Description On a UEFI/BIOS system, the MAC Address of the PXEing interface. On a Raspberry Pi, its Serial. To get a RPi’s Serial run cat /proc/cpuinfo | grep Serial | tail -c 9 on it. Type string Example d2:ed:80:67:e1:5f Declared by <nixos-modules/services/netboot/default.nix> basement.presets.common Description Whether to enable Default settings for any kind of system. Type boolean Default False Example True Declared by <nixos-modules/presets/common.nix> basement.presets.darwinvm Description Preset for VMs booted by the linuxvm darwinModule Type boolean Default False Declared by <nixos-modules/presets/darwinvm.nix> basement.presets.server Description Whether to enable Default settings for servers. Type boolean Default False Example True Declared by <nixos-modules/presets/server.nix> basement.services.docker.enable Description Whether to enable the docker container engine. Type boolean Default False Example True Declared by <nixos-modules/services/docker.nix> basement.services.gitlab-runner.commonFlags Description Flags to add to all runners Type list of string Default [] Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.commonTags Description Tags to add to all runners Type list of string Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.concurrentJobs Description Maximum number of jobs to run concurrently Type signed integer Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.configs Description GitLab Runner regsitration configurations Type attribute set of submodule Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.configs.<name>.addNixRunner Description Add an additional runner that uses the nix daemon Type boolean Default True Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.configs.<name>.forwardDockerSocket Description Allow jobs to access the host’s docker daemon Type boolean Default False Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.configs.<name>.registrationConfigFile Description GitLab Runner registration configuration file Type string Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.configs.<name>.tags Description GitLab Runner tags Type list of Concatenated string Default [] Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.configs.<name>.useLocalCache Description Use a local cache for the runner (disable this if you use S3 or some other remote cache) Type boolean Default True Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.enable Description Whether to enable GitLab runner. Type boolean Default False Example True Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.gitlab-runner.namePrefix Description Prefix for the runner name Type string Default `` Declared by <nixos-modules/services/gitlab-runner.nix> basement.services.k3s.clusterCIDR Description IP range for pods in the cluster Type string Default 10.12.0.0/16 Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.clusterDNS Description IP of the CoreDNS service (must be within serviceCIDR) Type string Default 10.13.0.10 Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.dns.nameservers Description IPs of the upstream DNS server for CoreDNS Type list of string Default ['8.8.8.8', '8.8.4.4'] Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.dns.searchPath Description Upstream DNS search path Type string Default `` Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.docker Description Whether to use docker instead of containerd Type boolean Default False Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.enable Description Whether to enable customized k3s module. Type boolean Default False Example True Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.extraFlags Description Additional flags to pass to k3s Type list of string Default [] Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.maxPods Description Maximum number of pods that can be run on this node Type signed integer Default 110 Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.nodeIp Description IP that this machine can be reached on by other nodes Type string Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.role Description Role of this node. Either server or agent Type one of "server", "agent" Default server Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.serverAddr Description IP of the k3s server to connect to (agent only) Type string Declared by <nixos-modules/services/k3s.nix> basement.services.k3s.serviceCIDR Description IP range for services in the cluster Type string Default 10.13.0.0/16 Declared by <nixos-modules/services/k3s.nix> basement.services.netboot-host Description This is the server component of the nix-basement netboot system. To use it, your DHCP Server needs to have PXE configured to boot undionly for X86 BIOS systems snponly.efi for X86-64 UEFI systems of the tftp server running as part of this module. The following dnsmasq(1) configuration is known to work (with 192.168.3.1 as the netboot server) dhcp-boot=undionly,192.168.3.1 dhcp-vendorclass=BIOS,PXEClient:Arch:00000 dhcp-vendorclass=UEFI32,PXEClient:Arch:00006 dhcp-vendorclass=UEFI,PXEClient:Arch:00007 dhcp-vendorclass=UEFI64,PXEClient:Arch:00009 dhcp-boot=net:UEFI,snponly.efi,192.168.3.1 dhcp-boot=net:UEFI64,snponly.efi,192.168.3.1 pxe-prompt="nix-basement netboot", 0 pxe-service=X86PC, "biosboot", undionly,192.168.3.1 pxe-service=X86PC, "biosboot", unionly,192.168.3.1 pxe-service=X86-64_EFI, "uefi boot", snponly.efi,192.168.3.1 pxe-service=X86-64_EFI, "uefi boot", snponly.efi,192.168.3.1 pxe-service=0,"other boot",192.168.3.1 The netboot server will do the following: Build the nixos configurations in into it’s store Create a directory with all configurations and supplementary ipxe configuration Make this directory accessible via HTTP and TFTP (ipxe boots via HTTP) Make the nix store accessible via NFS Clients will boot via PXE, get their kernel/initramfs via HTTP (or TFTP on Raspberry Pis) and mount the NFS Store read only. Type submodule Default {} Example {configurations = [ inputs.self.nixosConfigurations.host1 ]; enable = true; } Declared by <nixos-modules/services/netboot/default.nix> basement.services.netboot-host.configurations Description All the nixosConfigurations that should be bootable all configurations have to have a networking.hostName and a basement.netboot.uid Type list of raw value Declared by <nixos-modules/services/netboot/default.nix> basement.services.netboot-host.enable Description Whether to enable Enables the nix-basement netboot server. Type boolean Default False Example True Declared by <nixos-modules/services/netboot/default.nix> basement.services.netboot-host.nfsRanges Description IP ranges the NFS Server should expose the nix-store on Type unspecified Default ['*'] Example ['192.168.3.0/24'] Declared by <nixos-modules/services/netboot/default.nix> basement.services.ssh.enable Description Whether to enable OpenSSH server and key management. Type boolean Default False Example True Declared by <nixos-modules/services/ssh.nix> basement.services.ssh.users Description None Type attribute set of submodule Default {} Declared by <nixos-modules/services/ssh.nix> basement.services.ssh.users.<name>.authorizedKeys Description List of additional public keys that can log in with this account Type list of string Default [] Declared by <nixos-modules/services/ssh.nix> basement.services.ssh.users.<name>.authorizedUsers Description List of users in authorizedKeys.nix who should be able to log in with this account Type list of string Default [] Declared by <nixos-modules/services/ssh.nix> basement.services.weblate.address Description Address that weblate should listen on Type string Default 127.0.0.1 Declared by <nixos-modules/services/weblate.nix> basement.services.weblate.backup.enable Description Enable automatic backups Type boolean Default True Declared by <nixos-modules/services/weblate.nix> basement.services.weblate.backup.startAt Description Backup schedule in systemd format Type string Default config.services.postgresqlBackup.startAt Declared by <nixos-modules/services/weblate.nix> basement.services.weblate.backup.target Description Target directory for backups Type string Default /var/backup Declared by <nixos-modules/services/weblate.nix> basement.services.weblate.domain Description Domain under which the service will be available Type string Example weblate.example.com Declared by <nixos-modules/services/weblate.nix> basement.services.weblate.enable Description Whether to enable weblate web-based translation tool. Type boolean Default False Example True Declared by <nixos-modules/services/weblate.nix> basement.services.weblate.envFile Description Path to the file with weblate environment variables Type path or string Declared by <nixos-modules/services/weblate.nix> basement.services.weblate.path Description Path where weblate stores its data Type string Default /var/lib/weblate Declared by <nixos-modules/services/weblate.nix> basement.services.weblate.port Description Port that weblate should listen on Type signed integer Default 9592 Declared by <nixos-modules/services/weblate.nix> secrets Description None Type unspecified Declared by <nixos-modules/secrets.nix>