Garuda module options
71 options under garuda.*.
garuda.audio
garuda.audio.pipewire.enable
If set to true, a default configuration for Pipewire will be used.
- Type:
boolean - Default:
false - Example:
false - Declared in:
internal/modules/base/sound.nix
garuda.btrfs-maintenance
garuda.btrfs-maintenance.deduplication
Enables the beesd service to deduplicate files in the background.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/services.nix
garuda.btrfs-maintenance.enable
Installs and enables some filesystem optimizations for BTRFS.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/services.nix
garuda.btrfs-maintenance.uuid
The UUID of the BTRFS filesystem to deduplicate.
- Type:
null or string - Default:
null - Declared in:
internal/modules/base/services.nix
garuda.catppuccin
garuda.catppuccin.enable
Catppuccin Mocha edition: consistent pastel theming across the desktop and applications via catppuccin/nix.
- Type:
boolean - Default:
false - Example:
true
garuda.chaotic-nyx
garuda.chaotic-nyx.cache.enable
If set to true, Chaotic’s Nyx will have its binary cache automatically enabled and managed.
- Type:
boolean - Default:
true - Declared in:
internal/modules/base/nyx.nix
garuda.dr460nized
garuda.dr460nized.enable
Dr460nized edition: vibrant Sweet-themed Plasma 6 gaming desktop, with matching login theme, apps and defaults. Mutually exclusive with garuda.mokka.
- Type:
boolean - Default:
false - Example:
true
garuda.excludes
garuda.excludes.defaultpackages.exclude
Remove individual entries from the “defaultpackages” list, matched by their string representation. Everything else stays as shipped.
- Type:
list of anything - Default:
[ ] - Declared in:
internal/modules/base/programs.nix
garuda.excludes.defaultpackages.excludeAll
Drop every entry the Garuda modules would otherwise put into the “defaultpackages” list (system packages, kernel parameters, nix-ld libraries, home-manager modules, …). Useful for minimal installs.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/programs.nix
garuda.excludes.home-manager-modules.exclude
Remove individual entries from the “home-manager-modules” list, matched by their string representation. Everything else stays as shipped.
- Type:
list of anything - Default:
[ ] - Declared in:
internal/modules/base/home-manager/home-manager.nix
garuda.excludes.home-manager-modules.excludeAll
Drop every entry the Garuda modules would otherwise put into the “home-manager-modules” list (system packages, kernel parameters, nix-ld libraries, home-manager modules, …). Useful for minimal installs.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/home-manager/home-manager.nix
garuda.excludes.kernelparameters.exclude
Remove individual entries from the “kernelparameters” list, matched by their string representation. Everything else stays as shipped.
- Type:
list of anything - Default:
[ ] - Declared in:
internal/modules/base/boot.nix
garuda.excludes.kernelparameters.excludeAll
Drop every entry the Garuda modules would otherwise put into the “kernelparameters” list (system packages, kernel parameters, nix-ld libraries, home-manager modules, …). Useful for minimal installs.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/boot.nix
garuda.excludes.nixldlibraries.exclude
Remove individual entries from the “nixldlibraries” list, matched by their string representation. Everything else stays as shipped.
- Type:
list of anything - Default:
[ ] - Declared in:
internal/modules/base/programs.nix
garuda.excludes.nixldlibraries.excludeAll
Drop every entry the Garuda modules would otherwise put into the “nixldlibraries” list (system packages, kernel parameters, nix-ld libraries, home-manager modules, …). Useful for minimal installs.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/programs.nix
garuda.flatpak
garuda.flatpak.enable
Whether to enable Flatpak with the Flathub remote pre-added.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/flatpak.nix
garuda.fonts
garuda.fonts.enable
Reasonable fontconfig defaults.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/fonts.nix
garuda.gaming
garuda.gaming.enable
Gaming setup: Steam (with gamescope session), GameMode, and the CachyOS gaming kernel/userspace settings.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/gaming.nix
garuda.garuda-chroot
garuda.garuda-chroot.boot-uuid
Provide the UUID of the Garuda boot partition
- Type:
string - Default:
null - Example:
"D9CB-2B11" - Declared in:
internal/modules/base/mount-garuda.nix
garuda.garuda-chroot.enable
Enables mounting of the Garuda Linux root partition.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/mount-garuda.nix
garuda.garuda-chroot.nvidia
Bind the NVIDIA device nodes into the container (host has an NVIDIA GPU).
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/mount-garuda.nix
garuda.garuda-chroot.pipewire
Bind the host PipeWire socket into the container for native audio.
- Type:
boolean - Default:
true - Example:
false - Declared in:
internal/modules/base/mount-garuda.nix
garuda.garuda-chroot.root
Specifies where the Garuda Linux root partition should be mounted
- Type:
string - Default:
"/var/lib/machines/garuda" - Example:
"/mnt/ssd/garuda" - Declared in:
internal/modules/base/mount-garuda.nix
garuda.garuda-chroot.root-uuid
Provide the UUID of the Garuda root partition
- Type:
string - Default:
null - Example:
"f498b189-79c7-40e4-859e-fadc1496ee8e" - Declared in:
internal/modules/base/mount-garuda.nix
garuda.garuda-chroot.user
The default user of the Garuda / NixOS subsystem
- Type:
string - Default:
null - Example:
"garuda" - Declared in:
internal/modules/base/mount-garuda.nix
garuda.garuda-chroot.wayland
Bind the host Wayland socket into the container to allow running GUI apps from within the Garuda installation on NixOS.
- Type:
boolean - Default:
true - Example:
true - Declared in:
internal/modules/base/mount-garuda.nix
garuda.garuda-chroot.waylandSocket
Name of the host Wayland socket under /run/user/1000 to bind.
- Type:
string - Default:
"wayland-0" - Example:
"wayland-1" - Declared in:
internal/modules/base/mount-garuda.nix
garuda.garuda-nix-manager
garuda.garuda-nix-manager.enable
Install garuda-nix-manager, the graphical tool for handling app installations.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/nix-manager.nix
garuda.hardware
garuda.hardware.autoDriver.enable
Whether to enable hardware auto-detection via nixos-facter.
- Type:
boolean - Default:
true - Example:
true - Declared in:
internal/modules/base/hardware.nix
garuda.hardware.autoDriver.reportPath
Path to the nixos-facter report (written by the installer). Takes effect only when autoDriver.enable is set and the nixos-facter module is imported. Null disables it.
- Type:
null or absolute path - Default:
null - Example:
"./facter.json" - Declared in:
internal/modules/base/hardware.nix
garuda.hardware.enable
Hardware baseline: CPU microcode updates, redistributable firmware, and the graphics stack (including 32-bit support on GUI systems).
- Type:
boolean - Default:
true - Declared in:
internal/modules/base/hardware.nix
garuda.hardware.laptop.enable
Whether to enable laptop power/thermal tuning.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/hardware.nix
garuda.hardware.nvidia.amdgpuBusId
PCI bus ID of the AMD iGPU for PRIME offload (hardware.nvidia.prime.amdgpuBusId).
- Type:
null or string - Default:
null - Example:
"PCI:105:0:0" - Declared in:
internal/modules/base/hardware.nix
garuda.hardware.nvidia.enable
Whether to enable proprietary NVIDIA driver support with the latest drivers.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/hardware.nix
garuda.hardware.nvidia.nvidiaBusId
PCI bus ID of the NVIDIA dGPU for PRIME offload (hardware.nvidia.prime.nvidiaBusId).
- Type:
null or string - Default:
null - Example:
"PCI:1:0:0" - Declared in:
internal/modules/base/hardware.nix
garuda.impermanence
garuda.impermanence.apps
Known apps whose state persists. Service apps enable automatically.
- Type:
list of (one of "accountsservice", "bluetooth", "docker", "firefox", "flatpak", "fprintd", "fwupd", "geoclue", "iwd", "libvirt", "modemmanager", "networkmanager", "nspawn", "plasmalogin", "podman", "printing", "rust", "samba", "steam", "thunderbird", "upower") - Default:
[ ] - Declared in:
internal/modules/base/impermanence/apps.nix
garuda.impermanence.device
Btrfs device holding the root/root-blank subvolumes.
- Type:
string - Default:
"/dev/disk/by-label/nixos" - Declared in:
internal/modules/base/impermanence
garuda.impermanence.enable
Whether to enable impermanence.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/impermanence
garuda.impermanence.persistentUsers
Users whose .config/.local/share persist.
- Type:
list of string - Default:
[ ] - Declared in:
internal/modules/base/impermanence
garuda.impermanence.tmpfsRoot
Use tmpfs for / instead of rolling back a btrfs subvolume.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/impermanence
garuda.kde
garuda.kde.fontName
Fontconfig name matching fontPackage.
- Type:
string - Default:
"Inter" - Example:
"Fira" - Declared in:
internal/modules/base/kde.nix
garuda.kde.fontPackage
Sans/serif interface font of the enabled edition.
- Type:
package - Default:
<derivation inter-4.1> - Example:
<derivation fira-4.301> - Declared in:
internal/modules/base/kde.nix
garuda.kde.ocrLang
Tesseract OCR languages bundled into Spectacle (screenshot tool).
- Type:
list of string - Default:
[ "eng" ] - Example:
[ "eng" "deu" ] - Declared in:
internal/modules/base/kde.nix
garuda.kde.themePackage
Plasma look-and-feel package (global theme, window decorations, login screen) applied to the desktop. Defaults to the theme of the enabled edition.
- Type:
package - Default:
<derivation kde-0.2.6> - Example:
<derivation breeze-6.7.5> - Declared in:
internal/modules/base/kde.nix
garuda.kde.wallpaper
Wallpaper path inside themePackage, used for the login greeter.
- Type:
string - Default:
"share/wallpapers/Tree/contents/images/Tree.jpg" - Declared in:
internal/modules/base/kde.nix
garuda.managed
garuda.managed.config
Path to garuda-managed.json, written by garuda-nix-manager. It carries the managed settings — hostname, locale, timezone, keymap, auto-detected virtualisation, and extra packages — merged underneath your explicit configuration via gDefault, so anything you set yourself always overrides the defaults.
- Type:
null or absolute path - Default:
null - Declared in:
internal/modules/base/managed
garuda.mokka
garuda.mokka.enable
Mokka edition: calm dark Plasma 6 desktop in the Catppuccin Mocha palette, with matching login theme, apps and defaults. Mutually exclusive with garuda.dr460nized.
- Type:
boolean - Default:
false - Example:
true
garuda.networking
garuda.networking.enable
NetworkManager (loopback, docker and libvirt interfaces unmanaged, Wi-Fi powersaving off), legacy DHCP/wireless services disabled, and the wireless regulatory database enabled.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/networking.nix
garuda.networking.iwd
Use iwd as the NetworkManager Wi-Fi backend.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/networking.nix
garuda.networking.tweakKernel
Lower-latency networking: TCP BBR congestion control with the cake queueing discipline and a shorter TCP FIN timeout.
- Type:
boolean - Default:
true - Example:
true - Declared in:
internal/modules/base/networking.nix
garuda.noLoginManagerAutologin
garuda.noLoginManagerAutologin.enable
Whether to enable autologin to desktop instead of using the login manager.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/autologin.nix
garuda.noLoginManagerAutologin.startupCommand
The command to be executed after login.
- Type:
null or string - Default:
null - Example:
"startplasma-wayland" - Declared in:
internal/modules/base/autologin.nix
garuda.noLoginManagerAutologin.user
The user to automatically login.
- Type:
null or string - Default:
null - Example:
"nixos" - Declared in:
internal/modules/base/autologin.nix
garuda.performance-tweaks
garuda.performance-tweaks.enable
If set to true, this module will enable Garuda’s powersave tweaks. Conflicts with garuda.powersave-tweaks, only one may be enabled.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/performance.nix
garuda.powersave-tweaks
garuda.powersave-tweaks.enable
If set to true, this module will enable Garuda’s powersave tweaks. Conflicts with garuda.performance-tweaks, only one may be enabled.
- Type:
boolean - Default:
false - Example:
true - Declared in:
internal/modules/base/powersave.nix
garuda.preset
garuda.preset
Preset mapping to performance/powersave, ssh, firewall.
- Type:
null or one of "desktop", "laptop", "server", "handheld" - Default:
null - Declared in:
internal/modules/base/presets.nix
garuda.printing
garuda.printing.enable
Installs and enables printing support (CUPS + drivers).
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/services.nix
garuda.samba
garuda.samba.enable
Installs and enables Samba file sharing. Shares themselves are user-defined via services.samba.settings.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/services.nix
garuda.scanning
garuda.scanning.enable
Installs and enables scanner support (SANE + AirScan + IPP-USB).
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/services.nix
garuda.shell
garuda.shell.enable
Sets Fish as interactive shell (auto-launched from bash), micro as default editor, and adds Garuda’s shell aliases.
- Type:
boolean - Default:
true - Declared in:
internal/modules/base/shells.nix
garuda.subsystem
garuda.subsystem.enable
Run this NixOS install as a subsystem inside Garuda Linux: it derives certain settings from the Garuda installation, imports the host’s users, shares their home directories and mounts the Garuda root filesystem for cross-system access.
- Type:
boolean - Default:
false - Declared in:
internal/modules/base/managed
garuda.subsystem.import-networkmanager
Bind-mount the Garuda host’s NetworkManager system-connections into this system, so Wi-Fi and VPN profiles are shared instead of configured twice.
- Type:
boolean - Default:
true - Declared in:
internal/modules/base/managed
garuda.subsystem.imported-users.enable
Recreate the Garuda host users inside this system. Disable to manage users purely via users.users instead.
- Type:
boolean - Default:
true - Declared in:
internal/modules/base/managed/subsystem/imported-users.nix
garuda.subsystem.imported-users.shared-home.enable
Share the imported users’ ~/.config, ~/.local and ~/.cache between the Garuda host home and the NixOS home via bind mounts, so app settings carry over to the subsystem.
- Type:
boolean - Default:
true - Declared in:
internal/modules/base/managed/subsystem/imported-users.nix
garuda.subsystem.imported-users.shared-home.uuid
UUID of the Garuda BTRFS filesystem holding the @home subvolume that the shared home directories are mounted from. Set automatically from garuda-managed.json.
- Type:
string - Declared in:
internal/modules/base/managed/subsystem/imported-users.nix
garuda.subsystem.imported-users.users
User accounts imported from the Garuda host (populated from garuda-managed.json), keyed by username. Each entry recreates the host user witht the same UID, home and admin rights inside NixOS.
- Type:
attribute set of (submodule) - Default:
{ } - Declared in:
internal/modules/base/managed/subsystem/imported-users.nix
garuda.subsystem.imported-users.users.<name>.home
Home directory of the imported user, e.g. /home/garuda.
- Type:
string - Declared in:
internal/modules/base/managed/subsystem/imported-users.nix
garuda.subsystem.imported-users.users.<name>.passwordHash
Hashed initial password, used as initialHashedPassword.
- Type:
string - Declared in:
internal/modules/base/managed/subsystem/imported-users.nix
garuda.subsystem.imported-users.users.<name>.uid
Numeric UID, kept identical to the Garuda host user.
- Type:
signed integer - Declared in:
internal/modules/base/managed/subsystem/imported-users.nix
garuda.subsystem.imported-users.users.<name>.wheel
Whether the imported user gets wheel (sudo) membership.
- Type:
boolean - Declared in:
internal/modules/base/managed/subsystem/imported-users.nix
garuda.subsystem.useGrub
Install GRUB (device “nodev”) so the Garuda host bootloader can chainload this system. Disable when the host bootloader already handles booting or another loader is used.
- Type:
boolean - Default:
true - Declared in:
internal/modules/base/managed