Good question... Windows doesn&#x27;t have this model, because it has &quot;DLL hell&quot;.  Windows was a ad hoc solution partway between &quot;fine-grained curated shared dependencies&quot; (Debian) and &quot;duplicate all your dependencies&quot; (App Bundles&#x2F;Docker).<p>The solution was up to each individual app author -- you could choose to bundle DLLs, but mostly you didn&#x27;t bundle &quot;system&quot; DLLs, if you judged them to be low level enough, widely deployed enough, etc.  Installers on windows also listed MANUAL prerequisites that users had to install, so they are punting on a big part of the problem (give me a the name of a thing to install and make it magically work; don&#x27;t make me manually resolve dependencies.)<p>There was no real consistent model on Windows, and if you were completely consistent with sharing everything, you would have an even more fragile mess than Windows apps were already.<p>iOS and Android are successful app bundle ecosystems, and something that these Linux app bundle are explicitly trying to emulate.  The apps end up around 50 MB or so, not 500 MB to 2 GB.<p>The reason for that is basically that the apps are less rich and featureful (think Photoshop or OpenOffice or a browser), and that they ship lots of high level libraries with the OS.  Stuff like video codecs are part of the OS&#x2F;hardware in iOS&#x2F;Android, whereas in Debian and Windows they are applications.  Stuff like browser UI views are part of the OS as well.<p>Android is an entire OS, with apps, built from a single Makefile!  So there is less versioning skew and fragmentation than in Debian&#x2F;Windows (believe it or not).<p>iOS has some issues with app compatibility across OS versions that Windows definitely doesn&#x27;t.<p>Anyway, iOS and Android are definitely the models to emulate in terms of usability and stability.  But I don&#x27;t think they have completely solved the problems because the ecosystems aren&#x27;t as rich as Debian or Windows yet.