There's a repeated pattern in software distribution: a vendor (or other group) creates a platform that supports modular additions. They provide (or someone creates) a distribution mechanism for that platform.
Then a particular component gets so complicated, they decide they need to break it up a bit. There then comes a key decision point: do you use the existing distribution mechanism for the parent platform? Or do you create your own?
To complicate matters: what do you do when your meta-platform runs on multiple parent platforms?