A modular NixOS + Home Manager configuration. It is easily extensible but comes with the following opinionated default setup:
- A Wayland display server running the niri compositor, with auto-login via greetd.
- Various Wayland amenities such as waybar, swayidle, swaync, swayosd, etc.
- Vicinae as the app launcher (lovely UI by the way).
- Ghostty with the Zsh shell and Starship prompt.
- Helix as a TUI and Zed as a GUI editor.
- Yazi as a TUI and Dolphin as a GUI file explorer.
- An extensively configured Zen Browser setup / BrowserOS.
- And much, much, more...
Note
The main host in this repository is lyra.
More are available (that I've added myself to the code but not the below concise documentation), but these are the main ones. And it is, of course, trivial to add your own.
Important
Values are the file name without .nix.
Desktop session
Key in userVars.programs |
Available values | Upstream |
|---|---|---|
compositor |
niri |
niri |
display-server |
wayland |
wayland |
bar |
waybar |
Waybar |
idler |
swayidle |
swayidle |
launcher |
vicinae |
Vicinae |
login-manager |
greetd |
greetd |
logout-menu |
wleave |
wleave |
notifications |
swaync |
swaync |
osd |
swayosd |
swayosd |
Apps and tools
Key in userVars.programs |
Available values | Upstream |
|---|---|---|
browsers (list) |
browseros, zen |
BrowserOS, Zen Browser |
terminal |
ghostty |
Ghostty |
editor |
hx |
Helix |
explorer-gui |
dolphin, nemo |
Dolphin, Nemo |
explorer-tui |
yazi |
Yazi |
network-mounts |
nfs |
NFS mounts for remote disks/fileshares |
partition-manager |
kde |
KDE Partition Manager |
system-monitor |
missioncenter |
Mission Center |
Shell and prompt
Key in userVars.programs |
Available values | Upstream |
|---|---|---|
shell |
zsh |
Zsh |
prompt |
starship |
Starship |
visual |
zeditor |
Zeditor |
graph LR
subgraph Core
A[flake.nix]
B[caches.nix]
end
subgraph Systems
C[hosts]
D[modules]
E[users]
end
subgraph Infrastructure
F[secrets]
G[docs]
H[.github]
end
A --> C
A --> D
A --> E
D --> C
E --> C
F --> C
H --> A
Start with the docs/README.md file to learn about this setup!
TODO: Add screenshots or desktop previews here later :).
