Remix.run Logo
SOLAR_FIELDS 5 days ago

You don’t even need full on NixOS. I do the same with nix-Darwin and home manager. It’s not the perfect reproducible purists machine due to homebrew and Mac designs but it doesn’t really need to be, just mostly so

katdork 3 days ago | parent [-]

Purity here is a difficult ask without the whole "erase your darlings" impermanence. In general, there is something regardless which handles stateful interactions.

Often this is activation scripts, e.g. home-manager will complain at you if you are attempting to overwrite an existing file not managed with home-manager unless you tell it to forcibly overwrite the file.

You can get yourself into situations where even in NixOS land, switch-to-configuration will refuse to switch due to some kind of violation, e.g. a systemd mount service wholly failing. I've had an experience like that recently.

The Nix store is not a perfect get out of jail free card for this, everything impure must be wrangled by something eventually.

What I'm really trying to say is, the world is messy and full of impurity, it's unavoidable. The thing that manages Brew, casks and app store applications for you within nix-darwin is no different than home-manager managing home.files or switch-to-configuration acting upon systemd.