Iepakojums

Salīdzinājums Snap vs Flatpak vs AppImage

Salīdzinājums Snap vs Flatpak vs AppImage
Jauni iepakojuma formāti, piemēram, Snap, Flatpak un AppImage, nodrošina izplatīšanas agnostikas paketes, kas darbojas lielākajā daļā Linux izplatīšanas. Tas atrisina iepakojuma problēmas, ar kurām saskaras lietotņu izstrādātāji, kuri vēlas izplatīt savas lietotnes vairākos Linux izplatījumos. Tagad viņi var koncentrēties uz vienu uzbūvi, kas darbojas visur, nevis iziet dažādus iepakojuma standartus.

Šajā rakstā tiks uzskaitītas galvenās atšķirības starp šiem trim iepakojuma formātiem no tiešā lietotāja viedokļa. Šeit netiks aplūkotas atšķirības iepakojuma arhitektūrā un iepakojuma vienkāršība no izstrādātāju viedokļa.

Zemāk esošajā tabulā ir apkopotas galvenās atšķirības starp Snap, Flatpak un AppImage failu formātiem. Lielākā daļa no tiem ir pašsaprotami, citi punkti ir paskaidroti zem salīdzināšanas tabulas.

Snap Flatpak AppImage
Android, piemēram, atļauju kontrole pārslēdzas (GUI un CLI)
Smilšu kastes atbalsts
Obligāts smilšu bokss
Vietējo tēmu atbalsts Jā (ar iebildumiem) Jā (ar iebildumiem) Jā (ar iebildumiem)
Atbalsts komplektētajām bibliotēkām
Lietotnes pārnesamība Jā (ar iebildumiem) Jā (ar iebildumiem)
Pilnībā ietverts viens izpildāms atbalsts (līdzīgs .exe faili logos)
Tiešsaistes App Store
Spraudņi darbvirsmas App Store programmatūrai
Vairāku versiju paralēlu lietotņu atbalsts
Automātiski atjauninājumi Jā (ar iebildumiem)
Chrome OS atbalsts (izmantojot Crostini konteinerus)
Lietotnes lielums Atšķiras, bet ir augstāka nekā AppImage Atšķiras, bet ir augstāka nekā AppImage Zemākais
Lietotņu skaits, kas pieejamas App Store Augstākais Zemākais Kaut kur pa vidu

Atļauju kontrole lietotājiem

Snap nodrošina gan grafiskas, gan komandrindas saskarnes lietotāju kontrolētām atļaujām. Varat izmantot iepriekš instalētu lietotni “Ubuntu Software”, lai pārvaldītu papildprogrammas atļaujas.

Lai skatītu papildprogrammas atļaujas, izmantojot komandrindas saskarni, palaidiet zemāk esošo komandu:

$ snap savienojumi hroms

Aizstājiet “hroms” ar savas snap lietotnes nosaukumu.

Lai skatītu visu instalēto papildprogrammu sarakstu, palaidiet zemāk esošo komandu:

$ snap saraksts

Lai piešķirtu kameras atļauju hroma fiksēšanai, izmantojiet tālāk norādīto komandu:

$ snap connect hroms: kamera

Lai atsauktu kameras atļauju, izpildiet tālāk norādīto komandu:

$ snap atvienojiet hromu: kamera

Atļauju pārvaldībai piemērotas komandas var atrast kolonnā “Spraudnis” (parādīts iepriekš redzamajā ekrānuzņēmumā).

Flatpak nodrošina arī saskarni atļauju piešķiršanai un atsaukšanai. Jūs varat izmantot GNOME programmatūras lietotni (nepieciešama GNOME 3.32.x) pārvaldīt atļaujas, izmantojot grafisko metodi. Lai skatītu Flatpak lietotnes atļaujas, palaidiet zemāk esošo komandu:

$ flatpak info - show-permissions org.kde.Platforma

Aizstāt “org.kde.Platforma ”ar jūsu Flatpak lietotnes nosaukumu.

Lai skatītu visu jūsu sistēmā instalēto Flatpak lietojumprogrammu sarakstu, palaidiet zemāk esošo komandu:

$ flatpak saraksts

Lai mainītu Flatpak lietotnes atļaujas, jums ir jāmaina mainīgo lielumi, kas parādīti iepriekš redzamajā ekrānuzņēmumā. Piemēram, zemāk esošā komanda padarīs visu failu sistēmu pieejamu flappak lietotnei:

$ sudo flatpak ignorē org.kde.Platforma - failu sistēma = resursdators

AppImage pašlaik neatbalsta detalizētas atļauju vadīklas, taču izstrādātāji ir devuši mājienu, ka Android stila atļauju vadīklas var tikt ieviestas nākotnē.

Smilšu bokss

Snap, Flatpak un AppImage atbalsta smilškastes lietotņu vides ārpus kastes. Smilšu kaste ir vide (vai konteiners / failu sistēma / arhīvs), kas ir pilnībā izolēta un attālināta no resursdatora sistēmas. Jebkura mijiedarbība ar resursdatora sistēmu tiek veikta, izmantojot ierobežotu API un atļauju kontroli. Dažām no šīm atļaujām nepārprotami ir jāpiedalās lietotājiem, vai galalietotāji tās var pilnībā atspējot. Smilškastes lietotne ir droša nekā jebkura cita lietotne, kurai ir pilna piekļuve resursdatora sistēmai. Visas Android lietotnes darbojas smilšu kastē, un šie trīs iepakojuma formāti darbojas līdzīgi.

Vietējo tēmu atbalsts

Visi trīs iepakojuma formāti atbalsta vietējo GTK un Qt lietotņu izskatu, kaut arī ar dažiem ierobežojumiem. Piemēram, Snap un Flatpak pieprasa, lai sistēmas tēmas būtu iepakotas attiecīgajos formātos. Ja izmantojat trešo pušu motīvus un ikonu pakotnes, iespējams, nederēsiet pareizas motīvu, kursora un lietotņu ikonas. Integrācija ir uzlabojusi virsstundas, taču tām nedaudz pietrūkst salīdzinājumā ar lietotnēm, kas instalētas no izplatīšanas oficiālā pakotņu pārvaldnieka.

Lietotnes pārnesamība

AppImage lietotne ir viens izpildāms fails (līdzīgs Windows .exe faili). Jūs to varat viegli kopīgot starp sistēmām vai augšupielādēt mākonī. Snap un Flatpak lietotnes var padarīt pārnēsājamas, iekļaujot pašu lietotni, kā arī bērnu krātuves, no kurām lietotne ir atkarīga. Tomēr process nav tik vienkāršs kā AppImage, un, lai sasniegtu tādus pašus rezultātus, ir nepieciešams izmantot vairākas komandas.

Automātiski atjauninājumi

Snap un Flatpak lietotnes tiek instalētas no centralizētām lietojumprogrammu krātuvēm, un lietotnes var automātiski atjaunināt bez lietotāja iejaukšanās. AppImage trūkst spēcīga automātiskās atjaunināšanas mehānisma. Lai instalētu atjauninājumus, lietotājiem ir manuāli jāielādē jauns binārs AppImage un jāaizstāj esošais. AppImage lietotņu uzturētāji dažreiz iekļauj savu atjaunināšanas mehānismu, kas periodiski pārbauda atjauninājumu pieejamību savos serveros vai prasa lietotāja iejaukšanos. Nesen AppImage izstrādātāji nodrošināja rīku, lai atjauninātu esošos bināros failus, nodrošinot delta atjauninājumus. Tomēr tam joprojām ir nepieciešams lejupielādēt atjaunināšanas rīku un manuāli to izmantot ar esošu bināro AppImage. Lietotnei AppImage vēl nav pieejams brīvroku atjaunināšanas mehānisms.

Lietotnes lielums

AppImage ir mazākais lietotnes izmēra nospiedums, iespējams, tāpēc, ka tas bināros failus apkalpo saspiestā formātā. Snap un Flatpak lietotņu izmēri dažādās lietotnēs ir ļoti atšķirīgi, un ir grūti noteikt, kurš nodrošina mazāku instalācijas lielumu. Tikai atsaucei - Inkscape AppImage šī raksta tapšanas brīdī bija aptuveni 98 MB, Snap bija aptuveni 183 MB un Flatpak - aptuveni 109 MB.

Secinājums

Universālās lietotņu paketes ir izdevīgas gan izstrādātājiem, gan galalietotājiem. Šie iepakojuma formāti ļauj daudz ātrāk piegādāt drošas lietotnes. Viņi arī paver durvis izstrādātājiem, kuri ir izvairījušies no Linux atšķirīgo iepakojuma standartu dēļ, ko izmanto dažādos izplatījumos. Šajos trīs iepakojuma formātos ir jāatceļ daži jautājumi. Tomēr tie visi tiek aktīvi attīstīti, un šie jautājumi tiks fiksēti virsstundas. Universālās savstarpējās izplatīšanas paketes ir nākotne, un to pieņemšana palielināsies. Lēnām, bet vienmērīgi, izplatījumi nākotnē var pāriet uz Snap, Flatpak vai AppImage būvējumiem, izņemot pamata bibliotēkas un būtiskas pakotnes, kas nepieciešamas OS darbībai.

Peles kreisā klikšķa poga nedarbojas operētājsistēmā Windows 10
Ja ar klēpjdatoru vai galddatoru izmantojat īpašu peli, bet nedarbojas peles kreisās klikšķa poga kādu iemeslu dēļ operētājsistēmā Windows 10/8/7 šeit...
Rakstot Windows 10, kursors lec vai pārvietojas nejauši
Ja atklājat, ka peles kursors automātiski, nejauši lec vai pārvietojas pats, rakstot Windows klēpjdatorā vai datorā, daži no šiem ieteikumiem var palī...
Kā mainīt peles un skārienpaliktņu ritināšanas virzienu operētājsistēmā Windows 10
Pele un SkārienpaliktnisTas ne tikai padara skaitļošanu vienkāršu, bet arī efektīvāku un mazāk laikietilpīgu. Mēs nevaram iedomāties dzīvi bez šīm ier...