Nix on Ubuntu would be using a parallel set of libraries/dependencies. They won't be linked on top of the stable versions of packages as they've been selected in the LTS
I actually don't really know how that interplays with the rest of the system. If I build say... Konsole in Nix.. It seems like there would be no way for it to cleanly integrate with the rest of my KDE Desktop
The normal Nix versions numbers aren't stable. They have a stable branch but I don't think it lasts too long. And the "pinned" versions aren't as widely supported as Ubuntu LTS versions
Maybe I missed it... But That doesn't explain how it integrates with the host system (other than it doesn't ?)
It also doesn't explain how your PATH is maintained. When you type 'pwd' into the terminal, which version from the nix store is used? There must be a master copy or master symlink. You're not typing hashes all the time
Snaps have their issues, but if you run 'firefox' there is only one snap. The versions are not guaranteed to play nice with the distro app versions though. That's kind of why they can't snap everything
PS: There are actually nuances that it seems Nix doesn't handle clearly. If libA requires libB and libC. LibB and libC both require a libD at different version numbers - then you can't safely link two libD versions(short of name mangling). You need to build libB and libC at some version of libD that will work for both. Maybe you specific a set of workable dependency versions and let the system resolve them ? Seems very messy. Ubuntu just gives you the version numbers and you need to patch the code to work with them
I actually don't really know how that interplays with the rest of the system. If I build say... Konsole in Nix.. It seems like there would be no way for it to cleanly integrate with the rest of my KDE Desktop
The normal Nix versions numbers aren't stable. They have a stable branch but I don't think it lasts too long. And the "pinned" versions aren't as widely supported as Ubuntu LTS versions