I really, really want one single thing to succeed, but since the major distributions have decided to up and go there own way, there is no standard, and I don't see how we will be in a better place by adopting these.
Nix and Guix are awesome, but even there, we have two competing tools that operate similarly.
Do we need Torvalds to step in and throw a gauntlet?
Speaking of Torvalds, git is actually a pretty good example. There was no top-down enforcing of which version control system everyone should use, yet git has become the defacto standard.
TCP/IP has become the universal networking technology, again without a top-down mandate. There are, of course, standards describing how TCP/IP works, but not one mandating its use.
Eventually, maybe there'll be a defacto, cross-platform package manager that everyone uses, but it's premature to settle on one now, as package managers are still quickly evolving.
I didn't really mean that he would from on high dictate what would be used. And honestly, if something like that did happen, I bet I'd be unhappy. Git is a huge step forward, but it is one of the most complex SCM's in existence, for example.
Package managers have always cross pollinated and flourished thanks to that - as an example RPM does not support automatic dependency resolution, remember. That came later - and yum was pretty horrible in its initial incarnations...
It's not like you will have multiple distributions in your fleet (pretty please?), right? So you should still have to build only for a single target - and I'm pretty sure your resident ops guy is more than happy to help you do that instead of some of the other horrible things I see people deploy with.
Nix and Guix don't compete. They are different implementations of the same idea, both solving reproducibility problems.
(Two things our cultures often exaggerate are competition and dominance.)