Everyone talks about advantages. Would love to hear about disadvantages. Not obvious ones (like having to learn configuration language semantics or package missing stuff myself), but things that don't lie down in a plain sight right away and only discovered after a few days, weeks or months of usage. Anyone to share their experiences? (Migrating from Arch to NixOS at the moment, but thought maybe I'd detour a bit and…
From my understanding, the biggest disadvantage to purely functional package management is that you can't just swap out a package in isolation when many others depend on it. If I upgrade a package, I have to upgrade its whole DAG of dependent packages if I want them to use the new version (I could however delay that; they would simply continue to use the old version which hasn't been garbage-collected yet because the…
Then if you're going between versions, you can avoid having to update the lion's share of code just because the dependencies change.
jabberwork-1.2
jabberwock.core-1.6
jabberwock.apache.interface-0.3
jabberwock-1.3
jabberwock.core-1.6
jabberwock.apache-interface-0.4
Instead of having to update all the hefty ".core" modules, you could get away with only updating the hopefully lighter launchers / library loaders and the specific interface code being updated.