Vi forklarte hva Flatpak, Snap ogAppImage er i artikkelen How Do They Stack? publisert for over 2 år siden, og selv om teknologiene har forbedret seg mye siden den gang, vurderer jeg dem fra perspektivet til en programvareutvikler.
Sandboksing / innesperring
Du kan kjøre AppImage uten sandboxing samt bruke det med forskjellige sandkasser f.eks. AppArmor og Firejail.
Snap kan kjøres uten sandkasse, men du kan ikke bruke den med forskjellige sandkasser da den er tett koblet til AppArmor.
Flatpak kan verken kjøre uten sandboxing og kan heller ikke brukes med andre sandkasser enn Bubblewrap .
Installasjon / Utførelse
Man kan kjøre en AppImage etter å ha satt den kjørbare filen uten root-tilgang, uten å dekomprimere den, og på et frakoblet system.
Snap må installeres innen snapd, kan ikke kjøres uten rottilgang før etter at den er installert, og dens nedlastbare fil kan heller ikke plasseres ved siden av exe
og dmgsom brukere kan installere på offline-systemer, men det kan kjøres fra en ukomprimert kilde.
Flatpak må installeres av et Flatpak klientsideverktøy, kan ikke kjøre uten root-tilgang før etter installasjon, kan ikke kjøre fra en ukomprimert kilde. Også flatpakref
filer krever Internett og flatpak bunter krever en kjøretid for å bli installert.
AppImage kan lagre og kjøre applikasjoner fra ikke-standardplasseringer som CD-ROM og nettverksdelinger. Flatpak kan gjøre det samme etter litt konfigurasjon, mens Snap for øyeblikket ikke kan.
I denne delen tar AppImage kaken fordi applikasjonene er mer fleksible.
Aplikasjonsdistribusjon og oppdateringer
Sentrallageret for Flatpak og Snap er FlatHub, og Snap Store henholdsvis. Brukere kan laste ned AppImage fra AppImageHub, som er en katalogiseringsplattform for programvare tilgjengelig som AppImage-bunter.
I motsetning til AppImage og FlatPak, menSnap Store er den eneste dominerende appbutikken med én repo per enhet. Om det er en god eller dårlig ting er opp til deg å avgjøre.
Apper pakket med alle 3 metodene kan ha flere versjoner som kjører parallelt og kan enkelt kopieres til en annen maskin. Imidlertid har de sine unike implementeringer.
Alle 3 støtter binære deltaoppdateringer, men bare AppImage apper kan selvoppdatere som Snap apper trenger snapd for å være installert og Flatpak apper trengerFlatpak skal installeres.
Opsummert
AppImages og Snap forblir komprimert til enhver tid ( Flatpak komprimeres bare på serversiden) og er vanligvis mindre enn Flatpak apper . AppImage er også uavhengig av enhver distroprodusent og har som mål å forene Linux-plattformens økosystemer.
Snap eies av Canonical og plasserer dens basissnap over den underliggende distroen, mens Flatpak er et Red Hat initiativ som plasserer en Yocto-distro over den underliggende distroen.Også, i motsetning til Snap der utviklere må betale til Canonical, AppImage og Flatpak er gratis å bruke.
Fra der jeg står, er AppImages den ideelle pakkemetoden å bruke fordi den er den mest praktiske for både utviklere og sluttbrukere. Imidlertid er det mulig for dem å eksistere side om side, spesielt når det er tilfeller utviklere vil foretrekke å bruke en av de andre. Fortell oss hva du synes i kommentarfeltet nedenfor.
Min forskning for denne artikkelen ble sterkt påvirket av lignende prosjekter og Reddit-trådene her og her. Sjekk dem gjerne for mer innsikt.