Yes, that's exactly what it does. Whether this is good or bad depends on the situation. You lose the ability to drop an upgraded library into place and have everything start using it immediately. Of course, that only works in the first place if you assume that the new library *really is* compatible with your old binaries, which is often assumed but rarely guaranteed. With the NixOS approach you gain the ability to test and switch programs over to the new library one at a time in a controlled fashion, keep some particular critical program using a fixed version of a library while the rest of the system upgrades, etc. Win some lose some.