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

Introduction

Note

This documentation describes my personal NixOS configuration. It is highly tailored to my specific hardware and workflow.

This repository serves as a central hub for all my NixOS and Home Manager configurations. It is built with modularity and reproducibility in mind, allowing me to manage multiple devices from a single source of truth.

Important

While you are free to explore and copy parts of this configuration, be aware that the hardware-configuration.nix files are tied to my specific devices. Using them directly on your machine will likely cause boot issues.

However, you are more than welcome to use individual modules, concepts, or approaches in your own setup. Feel free to yank anything you find useful!

Visuals

Desktop Screen

Core Stack

The current desktop environment is built around modern Wayland-native tools and highly customized CLI utilities.

CategoryComponent
Display Managergreetd with mdgreet
CompositorNiri (Scrollable tiling Wayland compositor)
Desktop ShellDank Material Shell (Bar, Control Center, etc.)
ShellZsh
TerminalsKitty, Alacritty
File ManagersYazi (CLI), Nautilus (GUI)
EditorsNeovim (via nvchad), Zed, VS Code
BrowsersFirefox, Google Chrome
Secretssops-nix with age
ThemingCatppuccin (Mocha variant)

Repository Structure

  • hosts/: Machine-specific configurations and hardware definitions.
  • homes/: User-specific Home Manager profiles and dotfiles.
  • modules/: Shared logic for desktop, services, and system defaults.
  • raw/: Raw configuration files and assets used by various programs.
  • secrets/: Encrypted sensitive data managed via SOPS.