Navzdory na první pohled absurditě tohoto řešení, tak třeba na MacOS se to tak do určité míry dělá (doufám, že jsou mé informace dostatečné).
Duplicita, která tím přirozeně vzniká je řešená na úrovni FS a OS.
Neřeší to úplně všechny nedostatky (stále se musí stahovat celej img aplikace, ale i to by se asi dalo řešit). Na druhou stranu to má výhody v blbuvzdornosti. Pokud se ti "rozbije" systém, tak to bude "jen" neefektivní.
NeXT/macOS zacal s aplikacnymi bundles, ale nie je to 100%.
Ano, niektore aplikacie mozu byt ako bundle, instaluju sa umiestnenim do priecinka, odinstaluju sa zmazanim. Zmazanim zanechavaju za sebou bordel v pouzivatelskom priecinku (~/Library), kam ukladaju svoje preferencie. Preto ma napriklad brew cask parameter --zap, ktory zmaze aj zname subory, co po sebe aplikacia zanechava.
Mnohym aplikaciam to vsak nestaci. Bud dotahaju a skladuju bordel v /Library/Application Support (ekvivalent /usr/share), zaregistruju svoje sluzby v /Library/LaunchDeamons alebo /Library/LaunchAgents (a to aj napr. Microsoft Office si zaregistruje updater), kedysi mohli mat moduly do jadra (napr. Virtualbox), plus mnoho dalsich prilezitosti ako mat subory mimo bundle... co vsetko vyzadovalo instalator a odinstalator.
Takze prave toto je na MacOS jeden velky bordel.
Možná je to trochu mimo, ale nemohu si odpustit poznámku: nazývat adresář
(directory) nebo adresářový strom (directory tree) vágním výrazem složka je
zavádějící a podle mě i hloupé. Tuto vymyšlenost neprofesionálních
lokalizátorů MS-Win* a podobných "systémů" bohužel nikdo nekorigoval,
takže se to rozšířilo jako rakovina, kterou už asi nikdo nevyřízne...