Az összes operációs rendszer rendelkezik rendszerszinten megosztott függvénykönyvtárakkal és keretrendszerekkel. Aki foglalkozott már valamilyen szinten a Linuxszal, az valószínűleg jól tudja, hogy a pingvines rendszer esetében extrém szintre vitték ezt a moduláris koncepciót, csak az alapvető rendszermag nevezhető abszolút önállóan, a saját lábán megállni képes komponensnek.
A Linux tulajdonképpen egy óriási LEGO: a legkülönfélébb szoftveres funkcionalitások és alkalmazások egyénileg telepíthető csomagokba vannak szervezve, ezek a csomagok pedig függhetnek egymástól is. Ha feltelepítenénk mondjuk egy böngészőt, akkor egyrészt szükségünk van annak az állományaira, plusz installálnunk kell az összes függőségéből egy kompatibilis verziót. Persze a függőségeknek is lehetnek további függőségeik.
Ez bonyolultan hangzik, de a Linuxokban használt csomagkezelő rendszereknek köszönhetően jellemzően nem szokott problémát jelenteni a programok telepítése. Kijelöljük a programot, aztán a rendszer automatikusan hozzácsapja a még nem telepített függőségeket a letöltési és telepítési listához. Vagy legalábbis ez az elmélet, előbb-utóbb minden Linux-felhasználónak meggyűlik a baja a csomagkezeléssel: törött csomagok, nem induló alkalmazások, rejtélyes hibaüzenetek; káosz és anarchia.
Váltana a Canonical
Az Ubuntu mögött álló vállalat szeretné egy huszárvágással megoldani a jelenleg használt Debian csomagkezelő rendszer összes problémáját, hiányosságát. A Snappy nevű új rendszer biztonsági és stabilitási szempontból is nagy előrelépésnek ígérkezik, talán 1-2 éven belül leválthatja a jelenlegi .deb csomagos rendszert az asztali és hordozható számítógépekre szánt disztribúcióban.
A Snappy érdekessége, hogy a jelenleg használt rendszertől eltérően az alkalmazások már a telepítőkészletükben hordozhatják az összes függőségüket, azaz nem függenek semmilyen egyéb a rendszerre installált csomagtól. Ennek köszönhetően a programok bolond biztosan működhetnek, a telepítésükkor vagy frissítésükkor nem képesek keresztbe tenni más alkalmazásoknak. A Snappy-n keresztül telepített alkalmazások egymástól teljesen elszeparáltan létezhetnek a rendszeren, így például egy rosszindulatú alkalmazás nem lehet képes más alkalmazások állományait módosítani.
Ezen túlmenően akad még két kiemelendő újdonság a Snappy-ben: egyrészt ha nem sikerül egy frissítési művelet, akkor a csomagkezelő simán visszaállítja az adott program korábbi működőképes verzióját, másrészt pedig a „delta” frissítések is támogatottak. Utóbbi azt jelenti, hogy a frissítési művelet elvégzésekor csak az alkalmazások állományainak módosult részei kerülnek letöltésre és integrációra, ezzel a töredékére csökkenthető a letöltéshez szükséges sávszélesség.
A fentiekből sejthető, hogy a jelenlegi rendszerhez képest a Snappy nem takarékoskodik a háttértárral, egy specifikus csomagból / függőségből számos példány létezhet az adattárolón. Jelenleg ezen probléma megoldásán is dolgozik a Canonical: szeretnék, ha a Snappy előnyeinek megtartása mellett továbbra is minden szoftveres komponensből elég lenne egyetlen példány a rendszeren.
Veletek szúrt már ki Linuxon egy rosszul sikerült frissítés?