NixOS
I’m very interested in the Nix package manager, NixOS Linux distribution and the ecosystem that’s emerging around them. As a seasoned user of Nix, I’ve written some (opinionated) guides and explanations:
- Nix from the bottom up explains the basic underpinnings of Nix, and what it’s actually doing under the hood.
- Nixlang glossary gives a rough overview of the Nix Expression Language, which can be used to specify what Nix should build.
- Dependency solving in Nix shows how Nix can wrap legacy tools to build projects securely and reproducibly, including solving version constraints and resolving names to artifacts.
- Nix Packages describes how Nix provides a similar user/sysadmin experience to a traditional Linux package manager.
Over the years I’ve come up with a few tricks/hacks, which may be useful to some:
- Useful Nix hacks
- Using Debian Packages on NixOS
- Scripting with Nix
nix-eval
for run-time evaluation of Haskell code- Benchmarking arbitrary projects with Nix and asv
nix-shell
shebangs- Using Nix with separate stores
- Nix caching on a LAN
I’ve also written some pages about various ways I’ve used Nix: