3 ms·
You can be fairly good about it, but there's always state with the potential to be left behind or become inconsistent: transitive dependencies of packages stick
by paulfurtado 5y ago
You can be fairly good about it, but there's always state with the potential to be left behind or become inconsistent: transitive dependencies of packages sticking around, packages with pre/post scripts, services writing out data files to unexpected locations on disk you forget to cleanup, a failure somewhere between a resource and a "notify" firing causing your service to not restart after a config file update and the next run not rerunning the notify, etc.
- joepie91_ 5y agoWhile all of that is correct, I feel like you're leaving the most important part unspoken: Nix (and, by extension, NixOS) prevents this by construction, so that you are no longer dependent on somebody using the tool perfectly in every single place to not have this issue. It's the difference between "you can use this tool safely" and "the tool makes sure that you will use it safely", basically.