Why NixOS?
NixOS is my personal choice at KnausDev for my workstation. Not what I deploy for clients (that’s Ubuntu Server), but what I trust for my own machine. The reason is simple: NixOS has a version system that lets me test changes, and if something breaks, I can revert without reinstalling the whole system. No other distro gives me that confidence.
Fearless experimentation
I’ve tested and switched between multiple window managers — Hyprland, COSMIC, GNOME, i3, KDE — without worrying about leftover packages, broken dependencies, or a system that’s drifted into an unreproducible state. If a new configuration doesn’t work, I roll back to the previous generation and move on. The same declarative mindset I apply to infrastructure for clients — reproducibility, version control, no drift — NixOS gives me for my own machine.
How I Use It
My entire system configuration at KnausDev lives as a Nix flake stored in Gitea. Every package, every service, every window manager config — declared in one place.
What NixOS gives me
- Reproducible system: the entire config is stored in Gitea. If I break something or buy a new computer, I install NixOS and rebuild from that single config
- Atomic rollbacks: test a new configuration, boot into it, and roll back instantly if it doesn’t work
- Window manager flexibility: switching between Hyprland, COSMIC, GNOME, and others is a config change, not a system overhaul
- Development tooling: Neovim, tmux, Zsh, Docker, and every CLI tool I need all declared and version-controlled
- nix-shell: access any tool without installing it to my system. Close the terminal and it’s gone. Run a cleanup and everything disappears. No leftover packages, no pollution
- Package management: not as fast as
aptorpacmanfor individual installs, but the tradeoff is a system that’s fully reproducible and never drifts
Status
Active: personal workstation OS and daily driver.