My modular, Wayland-based config flake for NixOS, using hjem. It's my personal config, and not a configuration framework, so take things with a grain of salt.
- Multi-host: Laptop and desktop configs
- Wayland: Mango (default), Hyprland, Niri compositors
- Dynamic theming: Matugen for Material Design colors from wallpapers, and Darkman for automatic light/dark theming based on the time
- Modern shell: Nushell with Starship, Zoxide, Atuin
- Dotfiles: Managed with Hjem
- Secrets: Encrypted with agenix (WIP)
# Clone
git clone https://github.com/soliprem/nixos-config ~/.config/nix-config
cd ~/.config/nix-configBefore going forward, you should modify the username. It appears in a few different files.
grep -r "soliprem" .
# or, if you have ripgrep
rg solipremWill provide you a list of all its mentions
# Build (choose your host)
sudo nixos-rebuild switch --flake .#nixos-laptop
# or
sudo nixos-rebuild switch --flake .#nixos-pc
# Or use nh (after first build)
nh os switchhosts/ # Host configs (laptop/pc/shared)
system/ # System modules and packages
hjem/ # User dotfiles
export/ # Standalone nvf configs
secrets/ # Encrypted secrets
-
Desktop: Mango (default) · Hyprland · Ghostty · Zen Browser · Nautilus · Tofi/Fuzzel · SwayNC · Caelestia Shell
-
Editors: Neovim (nvf) · Helix · Emacs (unconfigured)
-
Development: Git/Lazygit · Jujutsu · Docker · Language servers
-
AI: Ollama (ROCm on desktop) · Open WebUI · Avante.nvim
-
Gaming: Steam · Lutris · Heroic · Gamescope · GameMode
-
Media: MPV · Spotify (Spicetify) · FreeTube · Tauon
Set wallpaper and generate theme:
nixrice # Interactive picker
# or
nixrice /path/to/wallpaper.pngSUPER + Return- TerminalSUPER + D- LauncherSUPER + W- BrowserSUPER + Q- Close windowSUPER + 1-9- Workspaces
(Hyprland has similar bindings when using that session)
nix build .#nvf # Full config
nix build .#nvf-minimal # Minimal configMassive thanks to NotAShelf for answering many of my dumb questions.
GNU General Public License v3.0 - See LICENSE


