lj·rk<p>Switched my <a href="https://todon.eu/tags/Nix" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Nix</span></a> installation on <a href="https://todon.eu/tags/macOS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macOS</span></a> from the original installer to the one by <span class="h-card" translate="no"><a href="https://hachyderm.io/@determinatesystems" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>determinatesystems</span></a></span>. Since that one disables channels in favor of flakes by default, I also took the opportunity to use Nix more properly instead of just running `nix-env -i` when needed :'-)</p><p>Ended up looking at <a href="https://todon.eu/tags/nixDarwin" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nixDarwin</span></a>, <a href="https://todon.eu/tags/HomeManager" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HomeManager</span></a> and <a href="https://todon.eu/tags/Fleek" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Fleek</span></a>. To a complete newb like me the differences where rather hard to grasp</p><p>nix-darwin tries to replicate the feel of <a href="https://todon.eu/tags/NixOS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NixOS</span></a> on macOS – something I couldn't comprehend since I never ran NixOS. More generally though, in NixOS, Nix is used to manage the whole OS (duh) and defines the system-wide installed/configured packages/environment. As such, nix-darwin replicates this style of providing a system environment on macOS.</p><p>home-manager shifts this concept to a per-user basis. The configuration system is quite similar, just per-user.</p><p><a href="https://todon.eu/tags/Fleek" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Fleek</span></a> is a Go tool to generate home-manager configurations from YAML.</p><p>Now, you can also install home-manager as a nix-darwin (on macOS) or NixOS (on... NixOS) module, which allows upgrades of the homes through the system wide Nix upgrade process.</p>