What NixOS modules provide
These modules control system-wide settings that require root access and affect all users on the machine. They’re organized into logical categories that mirror how you think about system administration.Boot & kernel
Bootloader configuration, kernel modules, and secure boot
Hardware support
CPU, GPU, Bluetooth, and cloud provider configurations
Networking
Firewall, SSH, VPN, and network management
Services
Web servers, databases, media servers, and more
Module categories
boot/
Bootloader and early boot configuration.Available modules
Available modules
generic.nix- Common boot settingsloader.nix- Bootloader configuration (systemd-boot, GRUB)secure-boot.nix- Secure Boot with lanzaboote
- Installs
sbctlfor key management - Configures lanzaboote as the bootloader
- Sets up the PKI bundle location
- Disables systemd-boot (replaced by lanzaboote)
hardware/
Hardware detection and driver configuration.Available modules
Available modules
bluetooth.nix- Bluetooth support with bluemancpu/- CPU-specific optimizations (AMD, Intel)cloud/- Cloud provider configurations (Hetzner, Oracle, UpCloud)
- Bluetooth kernel modules (btusb)
- BlueZ Bluetooth stack
- Blueman GUI manager
- Optimized settings for device pairing
networking/
Network configuration, firewall, VPN, and remote access.Available modules
Available modules
blocker.nix- Ad/tracker blockingfail2ban.nix- Intrusion preventionfirewall.nix- Firewall configurationnetworkmanager.nix- NetworkManager setupopenssh.nix- SSH server configurationoptimise.nix- Network performance tuningsystemd.nix- Systemd-networkd configurationtailscale.nix- Tailscale VPN mesh networktcpcrypt.nix- TCP encryptionvpn.nix- VPN client configurationwireless.nix- WiFi configuration
services/
System services including web servers, databases, and applications.Available services
Available services
Web & Application Servers:
nginx.nix- Web server and reverse proxyforgejo.nix- Git hosting (GitHub alternative)immich.nix- Photo and video managementjellyfin.nix- Media servervaultwarden.nix- Password manageruptime-kuma.nix- Status monitoring
postgresql.nix- PostgreSQL databaseredis.nix- In-memory data storeattic.nix- Nix binary cachebuildbot.nix- CI/CD automation
sonarr.nix,radarr.nix,prowlarr.nix- Media automationqbittorent.nix- Torrent client
matrix.nix- Matrix homeserverakkoma/- Fediverse serverpds/- AT Protocol server (Bluesky)
kanidm.nix- Identity managementmailserver.nix- Email servercloudflared.nix- Cloudflare tunnelborgbackup.nix- Backup system
environment/
System-wide environment configuration.Available modules
Available modules
console.nix- TTY console settingsdocumentation.nix- Man pages and docsfonts.nix- System fontslocale.nix- Language and timezonepackages.nix- System-wide packagespaths.nix- PATH and environment setupwayland.nix- Wayland compositor supportxdg.nix- XDG base directory speczram.nix- Compressed RAM swap
security/
Security hardening and access control.Available modules
Available modules
System security configuration including polkit rules, sudo settings, and security policies.
programs/
System-wide program configuration.Available modules
Available modules
cosmic.nix- COSMIC desktop environmentgraphical.nix- GUI application supporthyprland.nix- Hyprland Wayland compositor
kernel/
Linux kernel configuration and modules.Available modules
Available modules
Kernel module management, custom kernel builds, and kernel parameter configuration.
users/
User account management.Available modules
Available modules
User creation, group membership, and SSH key configuration for system users.
system/
Core system settings.Available modules
Available modules
System state version, hostname, and other fundamental system configuration.
Top-level modules
These modules live directly in thenixos/ directory:
catppuccin.nix- Catppuccin theme integrationemulation.nix- Windows/other OS emulation supportextras.nix- External module importsheadless.nix- Headless server configurationnix.nix- Nix daemon and build settingssecrets.nix- System-level secrets management
Usage example
Here’s how you might configure a typical NixOS workstation:configuration.nix
Key features
Modular organization
Modules are organized by function, making it easy to find and configure what you need. Each module is self-contained with its own options and defaults.Declarative configuration
All system configuration is declared in Nix files. No manual editing of config files or running imperative commands.Hardware abstraction
The framework automatically detects and configures hardware, with specific optimizations for different CPU vendors, cloud providers, and device types.Security by default
Sensible security defaults are applied throughout, with options to enable additional hardening like Secure Boot, fail2ban, and restricted SSH access.Next steps
Home Manager modules
Per-user configuration and dotfiles
Base modules
Shared configuration between NixOS and Darwin