Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

NixOS Dotfiles Documentation

Auto-generated documentation for custom modules.

System Modules

local.audio.enable

Whether to enable PipeWire based audio stack.

Type: boolean

Default:

false

Example:

true

local.backup-manager.enable

Whether to enable backup-manager module.

Type: boolean

Default:

false

Example:

true

local.backup-manager.backupLocation

Base path for borg backup repository (must be a mounted filesystem)

Type: string

Default:

""

Example:

"/media/Backups"

local.backup-manager.exclude

Glob patterns to exclude from backups

Type: list of string

Default:

[ ]

Example:

[
  "*/node_modules"
  "*/target"
  "*/.cache"
  "*.tmp"
]

local.backup-manager.paths

Additional paths to backup beyond auto-discovered user folders (Projects, Documents, Pictures, Videos, .ssh)

Type: list of string

Default:

[ ]

Example:

[
  "/etc/nixos"
  "/var/lib/important"
]

local.bluetooth.enable

Whether to enable Modern Bluetooth stack.

Type: boolean

Default:

false

Example:

true

local.bootloader.addRecoveryOption

Add recovery partition boot option to bootloader menu

Type: boolean

Default:

false

local.bootloader.device

Device for BIOS bootloader installation (required for BIOS mode)

Type: string

Default:

""

Example:

"/dev/sda"

local.bootloader.mode

Boot mode: UEFI or legacy BIOS

Type: one of “uefi”, “bios”

Default:

"uefi"

local.bootloader.recoveryUUID

UUID of recovery partition for boot menu entry (use blkid to find partition UUID)

Type: string

Default:

"0d9dddd8-9511-4101-9177-0a80cfbeb047"

Example:

"12345678-1234-1234-1234-123456789abc"

local.bootloader.uefiType

UEFI bootloader to use

Type: one of “systemd-boot”, “grub”, “limine”

Default:

"systemd-boot"

local.dashboard.enable

Whether to enable homepage dashboard.

Type: boolean

Default:

false

Example:

true

local.dashboard.allowedHosts

List of allowed hostnames for accessing the dashboard (for reverse proxy). Defaults to hostname, IP, and .local address.

Type: list of string

Default:

[
  "localhost"
  "127.0.0.1"
]

Example:

[
  "onix.local"
  "192.168.1.100"
]

local.dashboard.openFirewall

Open firewall port for dashboard

Type: boolean

Default:

false

local.dashboard.port

Port to run the dashboard on

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

3000

local.dashboard.subPath

Subpath for reverse proxy (e.g., /dashboard)

Type: string

Default:

""

Example:

"/dashboard"

local.desktops.enable

Enable desktop environment support

Type: boolean

Default:

false

local.desktops.enableEnv

Enable Wayland environment variables

Type: boolean

Default:

true

local.desktops.hyprland

Enable Hyprland compositor

Type: boolean

Default:

false

local.desktops.niri

Enable Niri compositor

Type: boolean

Default:

false

local.desktops.plasma6

Enable KDE Plasma 6 desktop environment

Type: boolean

Default:

false

local.disks.enable

Whether to enable basic configuration for disk management.

Type: boolean

Default:

false

Example:

true

local.docs.enable

Whether to enable Enable the dotfiles documentation service.

Type: boolean

Default:

false

Example:

true

local.docs.package

The documentation package to serve.

Type: package

Default:

<derivation docs>

local.docs.port

Port to serve the documentation on.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

3088

local.dotfiles.enable

Whether to enable Dotfiles management.

Type: boolean

Default:

false

Example:

true

local.dotfiles.maintenance.enable

Whether to enable System maintenance (GC and optimization).

Type: boolean

Default:

false

Example:

true

local.dotfiles.maintenance.autoUpgrade

Whether to automatically pull from git and upgrade

Type: boolean

Default:

false

local.dotfiles.maintenance.upgradeFlake

Flake URL for system auto-upgrade

Type: string

Default:

"git+http://10.0.0.65:3002/xiro/dotfiles.nix.git"

Example:

"github:user/dotfiles"

local.dotfiles.repo.enable

Whether to enable Manage /etc/nixos permissions and symlinks.

Type: boolean

Default:

false

Example:

true

local.dotfiles.repo.editorGroup

Group that has write access to the /etc/nixos repository

Type: string

Default:

"wheel"

Example:

"users"

local.dotfiles.sync.enable

Whether to enable Automated git sync.

Type: boolean

Default:

false

Example:

true

local.dotfiles.sync.interval

How often to pull changes from git (systemd time span format: 30m, 1h, 2h, etc.)

Type: string

Default:

"30m"

Example:

"1h"

local.downloads.enable

Whether to enable download services.

Type: boolean

Default:

false

Example:

true

local.downloads.downloadDir

Base directory for downloads

Type: string

Default:

"/media/Media/downloads"

Example:

"/mnt/storage/downloads"

local.downloads.pinchflat.enable

Whether to enable Pinchflat YouTube downloader.

Type: boolean

Default:

false

Example:

true

local.downloads.pinchflat.baseUrl

Base URL for Pinchflat (auto-configured based on reverse proxy and Avahi settings)

Type: string

Default:

"http://localhost:8945"

local.downloads.pinchflat.dataDir

Data directory for Pinchflat

Type: string

Default:

"/var/lib/pinchflat"

local.downloads.pinchflat.openFirewall

Open firewall port for Pinchflat

Type: boolean

Default:

false

local.downloads.pinchflat.port

Web interface port

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

8945

local.downloads.pinchflat.subPath

Subpath for reverse proxy (e.g., /pinchflat)

Type: string

Default:

""

Example:

"/pinchflat"

local.downloads.prowlarr.enable

Whether to enable Prowlarr indexer manager.

Type: boolean

Default:

false

Example:

true

local.downloads.prowlarr.openFirewall

Open firewall port for Prowlarr

Type: boolean

Default:

false

local.downloads.prowlarr.port

Web interface port

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

9696

local.downloads.qbittorrent.enable

Whether to enable Transmission BitTorrent client.

Type: boolean

Default:

false

Example:

true

local.downloads.qbittorrent.openFirewall

Open firewall ports for Transmission

Type: boolean

Default:

false

local.downloads.qbittorrent.port

Web interface port

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

8080

local.downloads.qbittorrent.subPath

Subpath for reverse proxy (e.g., /transmission)

Type: string

Default:

""

Example:

"/qbittorrent"

local.downloads.sonarr.enable

Whether to enable Sonarr PVR.

Type: boolean

Default:

false

Example:

true

local.downloads.sonarr.openFirewall

Open firewall port for Sonarr

Type: boolean

Default:

false

local.downloads.sonarr.port

Web interface port

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

8989

local.downloads.transmission.enable

Whether to enable Transmission BitTorrent client.

Type: boolean

Default:

false

Example:

true

local.downloads.transmission.baseUrl

Base URL for Transmission (auto-configured based on reverse proxy and Avahi settings)

Type: string

Default:

"http://localhost:9091"

local.downloads.transmission.downloadDirPermissions

Permissions for download directory

Type: string

Default:

"0775"

local.downloads.transmission.openFirewall

Open firewall ports for Transmission

Type: boolean

Default:

false

local.downloads.transmission.peerPort

Port for incoming peer connections

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

51413

local.downloads.transmission.port

Web interface port

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

9091

local.downloads.transmission.rpcWhitelist

Whitelist for RPC connections

Type: string

Default:

"onix.local,127.0.0.1,192.168.*.*,10.*.*.*"

local.downloads.transmission.subPath

Subpath for reverse proxy (e.g., /transmission)

Type: string

Default:

""

Example:

"/transmission"

local.file-browser.enable

Whether to enable Web-based file browser.

Type: boolean

Default:

false

Example:

true

local.file-browser.dataDir

Directory for File Browser database and config

Type: string

Default:

"/var/lib/filebrowser"

local.file-browser.openFirewall

Open firewall port for File Browser

Type: boolean

Default:

false

local.file-browser.port

Web interface port

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

8999

local.file-browser.rootPath

Root path to serve files from

Type: string

Default:

"/media"

local.file-browser.subPath

Subpath for reverse proxy (e.g., /files)

Type: string

Default:

""

Example:

"/files"

local.file-sharing.enable

Whether to enable file sharing services.

Type: boolean

Default:

false

Example:

true

local.file-sharing.definitions

Structured share definitions that automatically configure both Samba and NFS

Type: attribute set of (submodule)

Default:

{ }

Example:

{
  media = {
    path = "/srv/media";
    comment = "Media files";
    readOnly = true;
    guestOk = true;
    enableNFS = true;
  };
  documents = {
    path = "/srv/documents";
    comment = "Shared documents";
    validUsers = [ "alice" "bob" ];
  };
}

local.file-sharing.definitions.<name>.enableNFS

Also export this share via NFS

Type: boolean

Default:

false

local.file-sharing.definitions.<name>.browseable

Whether the share is visible in browse lists

Type: boolean

Default:

true

local.file-sharing.definitions.<name>.comment

Description of the share

Type: string

Default:

""

local.file-sharing.definitions.<name>.createMask

Permissions mask for created files

Type: string

Default:

"0666"

local.file-sharing.definitions.<name>.directoryMask

Permissions mask for created directories

Type: string

Default:

"0777"

local.file-sharing.definitions.<name>.guestOk

Allow guest access without authentication

Type: boolean

Default:

false

local.file-sharing.definitions.<name>.nfsClients

Network range for NFS access

Type: string

Default:

"192.168.0.0/16"

Example:

"192.168.1.0/24"

local.file-sharing.definitions.<name>.nfsOptions

NFS export options

Type: list of string

Default:

[
  "rw"
  "sync"
  "no_subtree_check"
]

local.file-sharing.definitions.<name>.path

Absolute path to the share directory

Type: string

local.file-sharing.definitions.<name>.readOnly

Whether the share is read-only

Type: boolean

Default:

false

local.file-sharing.definitions.<name>.validUsers

List of users allowed to access (empty = all users)

Type: list of string

Default:

[ ]

Example:

[
  "alice"
  "bob"
]

local.file-sharing.definitions.<name>.writeable

Whether users can write to the share

Type: boolean

Default:

true

local.file-sharing.nfs.enable

Whether to enable NFS server.

Type: boolean

Default:

false

Example:

true

local.file-sharing.nfs.exports

NFS exports configuration

Type: strings concatenated with “\n”

Default:

""

Example:

''
  /srv/shares 192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash)
  /srv/media 192.168.1.0/24(ro,sync,no_subtree_check)
''

local.file-sharing.nfs.openFirewall

Open firewall ports for NFS

Type: boolean

Default:

false

local.file-sharing.samba.enable

Whether to enable Samba server.

Type: boolean

Default:

false

Example:

true

local.file-sharing.samba.openFirewall

Open firewall ports for Samba

Type: boolean

Default:

false

local.file-sharing.samba.serverString

Server description string

Type: string

Default:

"NixOS File Server"

local.file-sharing.samba.shares

Samba share definitions

Type: attribute set of attribute set of unspecified value

Default:

{ }

Example:

{
  public = {
    path = "/srv/shares/public";
    "read only" = "no";
    browseable = "yes";
    "guest ok" = "yes";
  };
  media = {
    path = "/srv/media";
    "read only" = "yes";
    browseable = "yes";
    "guest ok" = "yes";
  };
}

local.file-sharing.samba.workgroup

Samba workgroup name

Type: string

Default:

"WORKGROUP"

local.file-sharing.shareDir

Base directory for shared files

Type: string

Default:

"/srv/shares"

Example:

"/mnt/storage/shares"

local.gaming.enable

Whether to enable Gaming optimizations.

Type: boolean

Default:

false

Example:

true

local.gitea.enable

Whether to enable Gitea Git service.

Type: boolean

Default:

false

Example:

true

local.gitea.dataDir

Data directory for Gitea

Type: string

Default:

"/var/lib/gitea"

local.gitea.domain

Domain name for Gitea instance

Type: string

Default:

"localhost"

Example:

"git.example.com"

local.gitea.openFirewall

Open firewall ports for Gitea

Type: boolean

Default:

false

local.gitea.port

HTTP port for Gitea web interface

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

3001

local.gitea.rootUrl

Root URL for Gitea

Type: string

Default:

"http://localhost:3001/"

Example:

"https://git.example.com/"

local.gitea.sshPort

SSH port for Git operations

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

2222

local.gitea.subPath

Subpath for reverse proxy (e.g., /gitea for https://host/gitea)

Type: string

Default:

""

Example:

"/gitea"

local.gitea-runner.enable

Whether to enable Gitea Actions Runner.

Type: boolean

Default:

false

Example:

true

local.gitea-runner.giteaUrl

URL of the Gitea instance to connect to

Type: string

Default:

"http://127.0.0.1:3001"

local.gitea-runner.instanceName

Name of the runner instance

Type: string

Default:

"default-runner"

local.gitea-runner.labels

Labels for the runner

Type: list of string

Default:

[
  "ubuntu-latest:docker://node:18-bullseye"
  "ubuntu-22.04:docker://node:18-bullseye"
  "ubuntu-20.04:docker://node:16-bullseye"
  "nixos-latest:docker://nixos/nix:latest"
]

local.gitea-runner.tokenFile

Path to the file containing the runner registration token

Type: string

Default:

"/run/secrets/gitea/runner_token"

local.hosts.onix

Address for Onix host

Type: string (read only)

Default:

"10.0.0.65"

local.hosts.ruby

Address for Ruby host

Type: string (read only)

Default:

"10.0.0.66"

local.hosts.sapphire

Address for Sapphire host

Type: string (read only)

Default:

"10.0.0.67"

local.hosts.useAvahi

Whether to use Avahi/mDNS hostnames (.local) instead of raw IP addresses for local network hosts

Type: boolean

Default:

false

local.localization.enable

Whether to enable Localization settings (timezone and locale).

Type: boolean

Default:

false

Example:

true

local.localization.locale

Default system locale for language, formatting, and character encoding

Type: string

Default:

"en_US.UTF-8"

Example:

"en_GB.UTF-8"

local.localization.timeZone

System timezone (use timedatectl list-timezones to see available options)

Type: string

Default:

"America/Chicago"

Example:

"Europe/London"

local.media.enable

Whether to enable media server stack.

Type: boolean

Default:

false

Example:

true

local.media.ersatztv.enable

Whether to enable ErsatzTV streaming service.

Type: boolean

Default:

false

Example:

true

local.media.ersatztv.baseUrl

Base URL for ErsatzTV (auto-configured based on reverse proxy and Avahi settings)

Type: string

Default:

"http://localhost:8409"

local.media.ersatztv.dataDir

Data directory for ErsatzTV

Type: string

Default:

"/var/lib/ersatztv"

local.media.ersatztv.openFirewall

Open firewall port for ErsatzTV

Type: boolean

Default:

false

local.media.ersatztv.port

HTTP port for ErsatzTV

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

8409

local.media.ersatztv.subPath

Subpath for reverse proxy (e.g., /ersatztv)

Type: string

Default:

""

Example:

"/ersatztv"

local.media.jellyfin.enable

Whether to enable Jellyfin media server.

Type: boolean

Default:

false

Example:

true

local.media.jellyfin.baseUrl

Base URL for Jellyfin (auto-configured based on reverse proxy and Avahi settings)

Type: string

Default:

"http://localhost:8096"

local.media.jellyfin.dataDir

Data directory for Jellyfin

Type: string

Default:

"/var/lib/jellyfin"

local.media.jellyfin.openFirewall

Open firewall port for Jellyfin

Type: boolean

Default:

false

local.media.jellyfin.port

HTTP port for Jellyfin

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

8096

local.media.jellyfin.subPath

Subpath for reverse proxy (e.g., /jellyfin)

Type: string

Default:

""

Example:

"/jellyfin"

local.media.mediaDir

Base directory for media files

Type: string

Default:

"/media/Media"

Example:

"/media/Media"

local.media.plex.enable

Whether to enable Plex Media Server.

Type: boolean

Default:

false

Example:

true

local.media.plex.openFirewall

Open firewall port for Plex

Type: boolean

Default:

false

local.media.plex.port

HTTP port for Plex

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

32400

local.network.enable

Whether to enable Standard system networking.

Type: boolean

Default:

false

Example:

true

local.network.useNetworkManager

Whether to use NetworkManager (for desktops) or just iwd/systemd (minimal).

Type: boolean

Default:

true

local.network-mounts.enable

Whether to enable Samba mounts from Onix.

Type: boolean

Default:

false

Example:

true

local.network-mounts.mounts

List of SMB/CIFS shares to mount automatically with systemd automount

Type: list of (submodule)

Default:

[ ]

Example:

[
        { shareName = "Media"; localPath = "/media/Media"; }
        { shareName = "Backups"; localPath = "/media/Backups"; noShow = true; }
      ]

local.network-mounts.mounts.*.localPath

Local mount point path (common locations: /media/, /mnt/, or /run/media/)

Type: string

Example:

"/media/Media"

local.network-mounts.mounts.*.noAuth

Whether to mount as guest without authentication

Type: boolean

Default:

false

local.network-mounts.mounts.*.noShow

Whether to hide this mount from file manager

Type: boolean

Default:

false

local.network-mounts.mounts.*.options

Additional mount options to append to defaults

Type: list of string

Default:

[ ]

Example:

[
  "ro"
  "vers=3.0"
]

local.network-mounts.mounts.*.shareName

Name of the share on the SMB server

Type: string

Example:

"Media"

local.network-mounts.noAuth

Mount shares as guest without credentials

Type: boolean

Default:

false

local.network-mounts.secretName

Name of sops secret containing SMB credentials (username=xxx and password=xxx format)

Type: string

Default:

"onix_creds"

Example:

"smb_credentials"

local.network-mounts.serverIp

IP address or hostname of SMB/CIFS server

Type: string

Default:

"10.0.0.65"

Example:

"192.168.1.100"

local.pihole.enable

Whether to enable Pi-hole DNS service.

Type: boolean

Default:

false

Example:

true

local.pihole.adminPassword

Admin password for the Pi-hole Web UI.

Type: string

Default:

"admin"

local.pihole.dataDir

Directory to store Pi-hole configuration and data.

Type: string

Default:

"/var/lib/pihole"

local.registry.enable

Whether to enable Flake registry for dotfiles.

Type: boolean

Default:

false

Example:

true

local.reverse-proxy.enable

Whether to enable reverse proxy with automatic HTTPS.

Type: boolean

Default:

false

Example:

true

local.reverse-proxy.acmeEmail

Email address for ACME/Let’s Encrypt certificates

Type: string

Default:

""

Example:

"admin@example.com"

local.reverse-proxy.domain

Primary domain name for the reverse proxy

Type: string

Default:

"localhost"

Example:

"server.example.com"

local.reverse-proxy.openFirewall

Open firewall ports 80 and 443

Type: boolean

Default:

true

local.reverse-proxy.services

Services to proxy

Type: attribute set of (submodule)

Default:

{ }

Example:

{
  gitea.target = "http://localhost:3001";
}

local.reverse-proxy.services.<name>.extraConfig

Extra Nginx configuration for this location

Type: strings concatenated with “\n”

Default:

""

local.reverse-proxy.services.<name>.target

Backend target (e.g., http://localhost:3001)

Type: string

local.reverse-proxy.useACME

Whether to use Let’s Encrypt for HTTPS (requires public domain). If false, uses self-signed certificates.

Type: boolean

Default:

false

local.secrets.enable

Whether to enable sops-nix secret management.

Type: boolean

Default:

false

Example:

true

local.secrets.keys

List of sops keys to automatically map to /run/secrets/ for system-wide access

Type: list of string

Default:

[ ]

Example:

[
  "onix_creds"
  "ssh_pub_ruby/master"
  "ssh_pub_sapphire/master"
]

local.secrets.sopsFile

Path to the encrypted YAML file containing system secrets

Type: absolute path

Default:

/nix/store/szk9v7jxyl3axhk7chwb10pj5365yr9r-source/secrets/secrets.yaml

Example:

../secrets/system-secrets.yaml

local.security.enable

Whether to enable Centralized security settings.

Type: boolean

Default:

false

Example:

true

local.security.adminUser

The main admin user to grant passwordless sudo/doas access and SSH key authorization

Type: string

Default:

"tod"

Example:

"admin"

local.settings.enable

Whether to enable Basic system and Nix settings.

Type: boolean

Default:

false

Example:

true

local.userManager.enable

Whether to enable Automatic user group management.

Type: boolean

Default:

false

Example:

true

local.userManager.extraGroups

Groups to assign to all auto-discovered users on this host

Type: list of string

Default:

[
  "wheel"
  "networkmanager"
  "input"
]

Example:

[
  "wheel"
  "networkmanager"
  "input"
  "video"
  "audio"
  "docker"
]

Home Manager Modules

local.caelestia.enable

Whether to enable Caelestia shell application.

Type: boolean

Default:

false

Example:

true

local.caelestia.colorScheme

Color scheme name for Caelestia (e.g., ‘gruvbox’, ‘catppuccin’). If null, uses dynamic wallpaper colors.

Type: null or string

Default:

null

Example:

"gruvbox"

local.fish.enable

Enable fish config if it is the system shell.

Type: boolean

Default:

false

local.fonts.enable

Whether to enable Nerd Fonts collection including Fira Code, Noto fonts, and emoji support.

Type: boolean

Default:

false

Example:

true

local.hyprland.enable

Whether to enable Functional Hyprland setup…

Type: boolean

Default:

false

Example:

true

local.hyprlauncher.enable

Whether to enable Hyprlauncher, the native Hyprland application launcher.

Type: boolean

Default:

false

Example:

true

local.hyprpaper.enable

Whether to enable Hyprpaper, the native Hyprland wallpaper daemon.

Type: boolean

Default:

false

Example:

true

local.hyprpaper.wallpapers

List of wallpaper paths to preload for Hyprpaper

Type: list of absolute path

Default:

[ ]

Example:

[ ./wallpapers/gruvbox.png ./wallpapers/catppuccin.jpg ]

local.kitty.enable

Whether to enable Kitty terminal emulator with custom configuration.

Type: boolean

Default:

false

Example:

true

local.mako.enable

Whether to enable Mako notification daemon for Wayland.

Type: boolean

Default:

false

Example:

true

local.mpd.enable

Whether to enable MPD (Music Player Daemon) with ncmpcpp client.

Type: boolean

Default:

false

Example:

true

local.mpd.path

Path to the music directory for MPD to serve

Type: string

Default:

"/media/Music"

Example:

"/home/user/Music"

local.nixvim.enable

Enable nixvim configuration

Type: boolean

Default:

false

local.nixvim.rust

Enable Rust language support

Type: boolean

Default:

false

local.nixvim.smartUndo

Enable persistent undo with smart directory management

Type: boolean

Default:

true

local.ranger.enable

Whether to enable Ranger terminal-based file manager with devicons support.

Type: boolean

Default:

false

Example:

true

local.secrets.enable

Whether to enable Use secrets.

Type: boolean

Default:

false

Example:

true

local.secrets.keys

List sops keys to automatically map to $HOME/.secrets/

Type: list of string

Default:

[ ]

Example:

[
  "github/token"
  "api/openai"
  "passwords/vpn"
]

local.secrets.sopsFile

Path to the encrypted yaml file

Type: absolute path

Default:

/nix/store/szk9v7jxyl3axhk7chwb10pj5365yr9r-source/secrets/secrets.yaml

Example:

../secrets/user-secrets.yaml

local.ssh.enable

Whether to enable configure ssh for user.

Type: boolean

Default:

false

Example:

true

local.ssh.hosts

Mapping of SSH host aliases to hostnames or IP addresses (automatically uses hosts from local.hosts module)

Type: attribute set of string

Default:

{
  Ruby = "ruby.local";
  Sapphire = "sapphire.local";
}

Example:

{
  Ruby = "ruby.local";
  Sapphire = "sapphire.local";
}

local.ssh.masterKeyPath

Path to the SSH master private key file

Type: string

Default:

"~/.ssh/id_ed25519"

Example:

"~/.ssh/id_rsa"

local.stylix.enable

Whether to enable Stylix automatic theming system based on wallpaper colors.

Type: boolean

Default:

false

Example:

true

local.variables.enable

Enable system environment variables for common tools and applications

Type: boolean

Default:

true

local.variables.browser

Default web browser

Type: string

Default:

"firefox"

Example:

"chromium"

local.variables.editor

Default terminal text editor

Type: string

Default:

"nvim"

Example:

"vim"

local.variables.fileManager

Default terminal file manager

Type: string

Default:

"ranger"

Example:

"lf"

local.variables.guiEditor

Default GUI text editor

Type: string

Default:

"neovide"

Example:

"code"

local.variables.guiFileManager

Default GUI file manager

Type: string

Default:

"pcmanfm"

Example:

"nautilus"

local.variables.launcher

Default application launcher command

Type: string

Default:

"rofi -show drun"

Example:

"wofi --show drun"

local.variables.statusBar

Default status bar or panel application

Type: string

Default:

"hyprpanel"

Example:

"waybar"

local.variables.terminal

Default terminal emulator

Type: string

Default:

"kitty"

Example:

"alacritty"

local.variables.wallpaper

Default wallpaper daemon or manager

Type: string

Default:

"hyprpaper"

Example:

"swaybg"

local.waybar.enable

Whether to enable Waybar status bar for Wayland compositors.

Type: boolean

Default:

false

Example:

true