V Linuxovém světě se ustálila taková zvláštní situace, která je
nesamozřejmá (má spousty podmínek a důvodů), ale lidi si na to zvykly a začali to považovat za normální i když v některých je ohledech je to spíš úplná katastrofa než normální situace.
Pár z těch "featur":
1. Počítá se s tím, že za kvalitu (relativní) ručí víc distributor než autor aplikace. To je samo o sobě krávovina, protože distributor může jenom těžko dobře opravovat chyby v softu, který nenaprogramoval.
2. Kvůli tomu autoři softů často vydávají tragicky neodladěné verze. To samo o sobě nevadí, ale měly by být označené jako vývojové a teprve po odladění jako stable/release.
3. Linuxový svět je taková džungle plná nejrůznějších nekompatibilit, že vydat něco, aby to fungovalo na (aspoň) většině Linuxů prakticky nejde. Proto se vydávají často jenom zdrojáky (ať si s nima distributoři dělají co chtějí) nebo zvlášť verze pro každou distribuci.
4. Kapitolou samou pro sebe je nekompatibilita init systémů a balíčkovacích systémů. Všechny dějají vesměs to samé, takže by se klidně mohl používat jeden, ale to ne. NIH syndrom...
5. V OSS světě spousta vývojářů kašle na plánování a zpětnou kompatibilitu (právě proto, že se ustálil přístup "to vychytá distribuce")
6. Linuxové distribuce mají v balíčcích i zákadní systém. Z toho právě plyne, že po updatu to třeba ani nenabootuje. Přitom většina uživatelů chce rock-solid základní systém a nejnovější uživatelský soft.
7. z 6ky částečně plyne to, že není pořádné stabilní API, se kterým by aplikace mohly být kompatibilní. Všechno se hýbe jako ten písek, jak píše Petr.
atd. atd.
V BSD světě to funguje jinak - základní systém je monolit, který se může instalovat prostým překopírováním. A jeho API i ABI podléhá určité politice (např. u FreeBSD stbilita ABI v rámci major verze). Zbytek jsou "aplikace třetích stran" a hlavní zodpovědnost za ně mají jejich vývojáři. Systém obsahuje jenom skripty, které instalaci usnadňují. A k tomu nějaký systém na
evidenci zranitelností v konkrétních softech konkrétních vezí. Nic víc. Tenhle přístup vede k tomu, že je jasně dáno, kdo má za co zodpovědnost a distributor se netváří, že dokáže spravit všechno a ručí za všechno (což je iluze - v podstatě podvod na uživatele, protože to není a nemůže být pravda).
V jiném tématu jsme s Leninem nakousli, že podobným způsobem se Linux dá provozovat taky - stačí si nainstalovat nějaký minimalistický základ (třeba pečlivě vybrané balíčky ze Slackware) a zbytek instalovat pomocí pkgsrc. Škoda, že tahle cesta není víc rozšířená (a teda s větší podporou).
Já sem prostě zvyklý z Windows u aplikací, které používám, zkrátka stahovat a instalovat aktuální verze aplikací přímo od jejich autora, být závislý na tom, zda mi správce Linuxové distribuce aplikaci zpřístupní a v jaké verzi mi je tak nějak proti srsti.
To je ale proto, že aplikace pro Windows se obvykle distribuují jako staticky linkované, nebo aspoň si všechno potřebné tahají ssebou. To v unixovém světě jde taky (viz MacOS), akorát v Linuxu to (skoro) nikdo nedělá.