How floatdrop/nnn-starter works
nnn-starter is an opinionated NixOS desktop configuration: users set machine-specific values, then build and switch a NixOS configuration to get a themed Niri + Noctalia Wayland desktop and developer-ready tools. Its documented layers are the flake/host configuration, system modules, home modules, and the shared Kanagawa theme. The README documents the Niri keybindings and major included applications. Source excerpts were unavailable, so arrows reflect documented configuration and launch relationships, not inspected Nix imports or runtime calls.
Main entry points: nixos/default.nix System module set · home/default.nix Home module set · nnn/default.nix Host settings · flake.nix Flake configuration
Components 24
Configuration entry
- Flake configuration
flake.nix - Host settings
hosts/nnn/default.nix - Local identity
local.nix - Hardware config
hosts/nnn/hardware-configuration.nix
NixOS system
- System module set
modules/nixos/default.nix - Boot configuration
modules/nixos/boot.nix - System hardware
modules/nixos/hardware.nix - Networking
modules/nixos/networking.nix - Audio
modules/nixos/audio.nix - System users
modules/nixos/users.nix - Desktop services
modules/nixos/desktop.nix
Home environment
- Home module set
modules/home/default.nix - Desktop applications
modules/home/apps.nix - CLI tools
modules/home/cli.nix - Zsh and prompt
modules/home/zsh.nix - Ghostty terminal
modules/home/ghostty.nix - Neovim editor
modules/home/neovim.nix
Desktop and theme
- Niri system setup
modules/nixos/niri.nix - Noctalia system setup
modules/nixos/noctalia.nix - System theming
modules/nixos/stylix.nix - Kanagawa palette
themes/kanagawa.yaml - Niri keybindings
modules/home/niri.nix
Other components
- Machine user
- NixOS rebuild
Connections 27
- Machine user → Local identity: sets identity
- Machine user → Hardware config: generates config
- Machine user → NixOS rebuild: runs
- NixOS rebuild → Flake configuration: evaluates and switches
- Flake configuration → Host settings: selects host
- Flake configuration → System module set: configures system
- Host settings → Local identity: reads settings
- Host settings → Hardware config: uses hardware
- Host settings → Home module set: configures home
- System module set → Boot configuration: configures
- System module set → System hardware: configures
- System module set → Networking: configures
- System module set → Audio: configures
- System module set → System users: configures
- System module set → Desktop services: configures
- System module set → Niri system setup: configures
- System module set → Noctalia system setup: configures
- System module set → System theming: configures
- System theming → Kanagawa palette: uses scheme
- Home module set → Niri keybindings: configures bindings
- Home module set → Desktop applications: configures apps
- Home module set → CLI tools: configures tools
- Home module set → Zsh and prompt: configures shell
- Home module set → Ghostty terminal: configures terminal
- Home module set → Neovim editor: configures editor
- Niri keybindings → Ghostty terminal: launches terminal
- Niri keybindings → Desktop applications: launches apps