Snap | Flatpak | AppImage. Vertailu Linuxit yhdistävistä paketoinneista!

®LINUX-SAUNA tuotantoa

      

Sovellusten asennustapoja on monia. Sinä voit valita. Pääasia on saada tärkeän ohjelmiston vaadittu versio helposti käyttöön kaikenlaisten käyttäjien kohdalla.

Linux-jakelusi oma ohjelmistovarasto saattaa tarjota vanhentuneen julkaisun halutusta sovelluksesta. Tarvitset uudemman – tai viimeisimmän.

1. Snap

Snap kehitettiin alkujaan Ubuntun palvelin, puhelin- ja IoT-järjestelmiin. Nyt se palvelee myös turvallisemmassa tavan sovellusten paketoinnissa kuten vaikkapa Firefox.

Snapit ovat teknisesti erittäin taipuisia toimimaan yhteen mm. PC-työpöydän sovellutusten kanssa jotka voivat vaatia kanssakäymistä palvelimien suuntaan (kuten Plex).

Ubuntun lisäksi Snap-tuki on myös vakiollisesti monissa muissa Linux-jakeluissa kuten KDE Neon / Manjaro Linux / Solus / Ubuntu / Zorin OS ja MakuluLinux.

Esim. Linux Mintiin se asennetaan näillä ohjeilla.

Snap Store on keskitetty varasto ja Ubuntun App Center noutaa näitä paketteja. Siellä on monien isojen yhtiöiden virallisia ohjelmistoja kuten Spotify.

Snapien ominaisuuksia:

♦ Snap-paketti sisältää kaiken tarvittavan mitä sovelluksen toiminta vaatii; se ei ole riippuvainen mistään muista paketeista (tai Linux-jakelustakaan).

♦ Käyttöjärjestelmän eri versiokaan (eri kirjastot, Ubuntu 22.04 LTS / Ubuntu 23.10 / jne.) ei vaikuta. Kaikki tarpeet ovat 100% paketissa.

♦ Asennukset / päivitykset keskitetystä Snap-kaupasta. Oli käytössä mikä Linux tahansa on asennustapa yhtenevä. Monet pitävät tätä yksinkertaistavana etuna. Jotkut taas toivoisivat hajautettua mallia.

♦ Päivitykset tapahtuvat taustalla automaattisesti koska on todettu että jopa valtaosa ei päivitä asennukseen jälkeen koskaan! Automaattiset päivitykset saa kuitenkin pois käskyttäen päätteestä:

sudo snap refresh --hold

♦ Laaja tuki eri ohjelmatyypeille. Työpöytä, palvelinkäyttö, jopa Linuxin ytimen voi paketoida Snapiksi ja se toimii kuten odottaa sopii.

♦ Snap-sovellukset ajetaan lähtökohtaisesti hiekkalaatikossa – ne eivät siis vaikuta muuhun järjestelmään. Tuohon rajaukseen voi tarvittaessa tehdä myönnytyksiä; Snap-paketin oikeuksia voidaan siis tarvittaessa lisätä.

♦ Hiekkalaatikointi voi olla hyödyllinen käytettäessä suljetun lähdekoodin ohjelmia (joiden toimintaa ei voida tarkistaa). Itse käyttöjärjestelmä pysyy paremmassa turvassa.

♦ Snapit ja snapd ovat lähdekoodiltaan avoimia – palvelinpuoli taas ei ole. Canonical teki saman LaunchPadin kanssa alussa (avaten sen myöhemmin). Alan Pope selventää miksi. Käyttäessä omisteista kauppaa- ei se eroa tavanomaisten nettisivujen kuten vaikkapa Redditin, Facebookin tai Twitterin käyttämisestä.

♦ Snap-sovellukset voidaan rullata versiossa taaksepäin tarpeen vaatiessa. Käyttiksessäsi saa myös olla saman sovelluksen eri versioita snapina vierekkäin – eivätkä ne vaikuta toisiinsa.

♦ Jakelusta riippumaton asennus tapahtuu päätteestä kommennolla snap install paketti vaikka jakelussa ei olisi työpöytääkään!

2. Flatpak

Flatpak-paketoidut ohjelmat ovat Snapien tavoin riippumattomia siitä mikä Linux on käytössä kun se asennetaan.

Flatpak on vakiollisesti mukana mm. Linux Mintissä ja Fedora Linuxissa.

Flatpak-tuen saat asennettua Ubuntuun täältä.

Flatpakin ominaisuuksia:

♦ Riippumattomat paketit mutta riippuvaisuuksia voidaan jakaa eri sovellusten kesken – eli Snapin tapaan Flatpak-paketti ei aina sisällä 100% kaikkia riippuvaisuuksia itsessään – mutta levytilaa voi säästyä hiukan.

♦ Hajautettu lähtökohta – mutta suosittu keskitetty pakettivarasto on mainittu Flathub josta ohjelmat ovat asennettavissa luotettavasti.

♦ Mahdollisuus käyttää lähteenä kenen tahansa pakettivarastoja (jonka esim. kehittäjät voivat nähdä ongelmana kuten PPA-lähteissä).

♦ Hyvä sulautuvuus työpöytäympäristöihin teemoineen.

♦ Ehdottomampi hiekkalaatikointi. Tämä antaa lisäturvaa ja sovellus ei pääse käsiksi muuhun järjestelmään. Flatseal sovelluksen avulla käyttäjä voi kuitenkin itse erikseen säätää ja myöntää lupia tiettyihin kansioihin.

♦ Voit käyttää Flatpak-sovelluksia vierekkäin tavanomaisesti asennetun saman ohjelman kera.

3. AppImage

AppImage eroaa kahdesta edellisistä enemmän. Yksi AppImage-ohjelma on käytännössä yksi suoritettava tiedosto.

Teknisesti AppImage on levykuva joka sisältää kaikki ohjelman suorittamiseen tarvittavat tiedostot sisällään (Snapin tapaan).

AppImagen etuna voidaan pitää yhden tiedoston lataamista joka toimii sellaisenaan ilman erillistä paketin purkamista mihinkään.

Haittana on vaatimus saattaa AppImage -tiedosto ajettavaksi erikseen ladatun tiedoston ominaisuuksista. Uusi käyttäjä ei välttämättä voi tietää tätä ja paketti ei käynnisty. Mm. Ubuntussa pitää asentaa erikseen paketti FUSE jotta AppImageja voidaan ajaa.


1. Napsauta hiiren oikealla ladatun AppImagen päällä. 2. Ominaisuudet. 3. Ruksaa laatikko ”merkitse ajettavaksi”.


Ominaisuuksia:

♦ Yksi suoritettava tiedosto joka sisältää kaiken tarvittavan

♦ Ei pääkäyttäjän (juuri) oikeuksia vaativaa asentamista

♦ Ei keskitettyä pakettivarastoa (josta asennus ja päivitykset tapahtuisivat) käsin tai automaattisesti

♦ Paketti ei päivity; uusi versio pitää ladata aina erikseen lataamalla uusi tiedosto. AppImage ei siis päivity itsessään sisäisesti

♦ Samasta ohjelmasta voi olla rinnakkain useita versioita (eri tiedostot, toisistaan riippumattomina)

Lopun lätinät

Muistutus: nämä eivät vie pois vanhoja asennusmalleja. Voit rakentaa edelleen sovelluksesi vaikkapa suoraan lähdekoodista.

Kukaan ei varsinaisesti vanno Snapien, Flatpakien, AppImagejen tai minkään muunkaan paketoinnin nimeen kadulla lippua heiluttaen.

Kyse on apuvälineistä – kaikilla on omat käyttökohteensa. Kehittäjät kiittävät, ja jopa pelejä on alettu paketoimaan yhä enemmän näihin uuden ajan jupinoihin.

Tyypillinen käyttäjä valitsee sen, mikä on saatavilla haluamalleen ohjelmalle. Ohjelmaa ei välttämättä löydy jakelun omasta kaupasta (tai tiettyä versiota siitä).

Nämä universaalit paketointitavat madaltavat kynnystä siirtyä vapaaseen Linuxiin.

Kaikki nippuun?

Tätä asetelmaa olisi hyvä ehkä loiventaa edelleen; ollaan rajauduttu käytännössä kolmeen paketointiin jotka voivat toimia missä tahansa.

Manjaro Linux käyttää Bauh-työkalua joka yhdistää nämä kaikki. Käyttäjä ei välttämättä edes tiedä missä pakettimuodossa sovellus tuli. Se vain toimii haluttuna tuoreena julkaisuna.

Tulevaisuudessa vain asennetaan – oli muoto tai jakelu mikä tahansa. Hiekkalaatikointi on joka tapauksessa avainasemassa; ajan henki vaatii sitä.

✍️@Kopimi


Kysy lisätietoja

®LINUX-SAUNA @