Why do we need a separate package manager for every programming language and every extensible library/app?
Once we understand package management better -- we don't understand it well yet -- it will likely be feasible to consolidate many package managers into a few omnimanagers.
In theory we need only one for all, but in reality, that is impossible.