Frequently Asked Question
What is NixOS and why do people get so enthusiastic about it?
NixOS is built around the Nix package manager, which takes an unusual approach: every
package is installed under a content-addressed path in /nix/store derived from a hash
of all of its inputs. Different versions of the same library can coexist without
conflict, and upgrades never overwrite each other in place. The entire system is
described declaratively in a single configuration file (/etc/nixos/configuration.nix)
that you can keep in version control.
That declarative model gives NixOS atomic upgrades and rollbacks: if a system generation breaks, you reboot into the previous one from the bootloader menu. It also means two machines built from the same configuration are byte-for-byte reproducible, which is attractive for teams who want their developer environments and servers to match exactly. The learning curve is steep, Nix is its own functional language, but the model is unlike anything else in the Linux ecosystem.