nix-darwin
Nix modules for declaratively configuring and managing macOS systems, similar to NixOS.
Liked for keeping a reproducible macOS setup declared in a git-tracked config123, and for replacing or declaratively managing Homebrew packages.4567 The most common caveat is a steep learning curve that makes it not for everyone8910, along with hard-to-memorize commands.11
Why people recommend it
Declarative config · 3
Commenters like defining most of the machine in a reproducible config instead of dotfiles.
“Ever since I switched from dotfiles to nix-darwin I've fallen into the rabbit hole”
“if having (most of) your machine defined declaratively in a git repository sounds exciting/useful/comfy, then I would encourage you to give it a try.”
Show 1 more
Homebrew management · 3
Used as a Homebrew replacement or to manage brew packages declaratively alongside nixpkgs.
“You can run homebrew (declaratively!) via nix-darwin, and I think they complement each other quite well.”
Show 1 more
“I use nix-darwin as a replacement for homebrew, and it’s served me well for circa 8 years.”
Cross-machine sharing · 3
Commenters share one flake and mostly shared code across macOS and NixOS machines.
“for tinkerers would recommend giving it a shot”
“I use nix-darwin and nix on CachyOS (and pretty much everything else, including a little NixOS for fun), daily.”
Show 1 more
Stability · 2
Commenters describe it as stable, with atomic changes and rollback to a known-good state.
“I use nix-darwin as a replacement for homebrew, and it’s served me well for circa 8 years.”
AI-assisted setup · 2
Coding agents make writing nix-darwin config easier for some commenters.
“Ever since I switched from dotfiles to nix-darwin I've fallen into the rabbit hole”
Caveats and dissent
Learning curve · 3
Commenters say it is not for everyone, and the initial learning curve can feel like a chore.
“if having (most of) your machine defined declaratively in a git repository sounds exciting/useful/comfy, then I would encourage you to give it a try.”
“for tinkerers would recommend giving it a shot”
Show 1 more
“I use nix-darwin as a replacement for homebrew, and it’s served me well for circa 8 years.”
Clunky UX · 1
One user found the commands and flags hard to memorize and needed shell aliases.
Dependency versions · 1
One user stopped using it on a dev machine because of trouble getting correct dependency versions.
“Great project, but I had to discontinue using it on my dev machine because of some issues getting the correct versions of dependencies installed.”
Package gaps · 2
Some software does not work well with Nix, so Homebrew is still needed for it.
“For CLI stuff I use Nix, Home-Manager and Nix-Darwin.”
Unclear benefit · 1
One commenter saw no benefit without a need for configuration management on personal machines.
Often compared with
Who recommends it in their own words
Threads where it came up
- Homebrew 6.0.0 4 mentions
- Going immutable on macOS, using Nix-Darwin 3 mentions
- Why I love NixOS 2 mentions
- NixOS is making me less afraid 1 mention
- What the heck is /pkg? 1 mention
- Zerobrew: A faster alternative to Homebrew 1 mention
Data: nix-darwin.json. Quotes are verbatim; the verdict and theme labels are written by a model from these comments, and every clause links to its sources.
All comments 18
“I use nix-darwin and nix on CachyOS (and pretty much everything else, including a little NixOS for fun), daily.”
“I let things like nix-darwin and home-manager do the heavy lifting.”
“I use nix-darwin as a replacement for homebrew, and it’s served me well for circa 8 years.”
“Ever since I switched from dotfiles to nix-darwin I've fallen into the rabbit hole”
“NixOS (or nix-darwin on Mac) offers both.”
“Package management: Nix-darwin”
“I use nix-darwin for everything.”
“I’m not sure what I would get out of nix-Darwin.”
“I use nix-darwin and also manage my homebrew packages with it.”
“For CLI stuff I use Nix, Home-Manager and Nix-Darwin.”
“Guess I'll just stick with CLI only for now (via darwin-nix)”
“I love NixOS and nix-darwing too.”
“nix run nix-darwin -- switch --flake”
“You can run homebrew (declaratively!) via nix-darwin, and I think they complement each other quite well.”
“for tinkerers would recommend giving it a shot”
“if having (most of) your machine defined declaratively in a git repository sounds exciting/useful/comfy, then I would encourage you to give it a try.”
“Great project, but I had to discontinue using it on my dev machine because of some issues getting the correct versions of dependencies installed.”
“at work (nix-darwin and projects)”