Linuxové systémy jsou oblíbené z mnoha důvodů, ale instalace aplikací mezi ně nepatří. Aplikace v Linuxu jsou dodávány jako balíčky a přicházejí v nejrůznějších variantách. Systémy balení se liší z hlediska instalace, použitelnosti a mechanismů aktualizace.
Níže se podíváme a porovnáme tři prominentní formáty balíčků: Snap, AppImage a Flatpak, všechny nezávislé na distribuci.
Jaké jsou formáty balíčků?
Formáty balíčků jsou archivy, které obsahují programový kód a metadata potřebná k jejich spuštění. Linux podporuje několik formátů balíčků a vývojáři se mohou rozhodnout zabalit svou aplikaci do libovolného formátu. Jako uživatel si budete muset stáhnout požadovaný balíček a nainstalovat jej prostřednictvím správce balíčků, abyste mohli aplikaci spustit.
Ubuntu a další distribuce založené na Debianu použít .deb formát balíčku nativně, zatímco Fedora, RHEL a CentOS používají .ot./min. Nativní balíčky jsou rychlé, protože jsou navrženy a zkompilovány speciálně pro systém, a také sdílejí knihovny, díky čemuž jsou aplikace menší. Nativní balíčky však vyžadují, aby si uživatelé sami aktualizovali a udržovali závislosti.
Nezávislé balíčky od distribuce jako Snap, AppImage a Flatpak poskytují aplikace, které lze spustit na různých počítačích. Odstraňují problémy se závislostmi, kterým čelí mnoho uživatelů Linuxu každý den, a výrazně usnadňují život vývojářům. Z toho však vyplývají i větší dvojhvězdy.
Snap vs. AppImage vs. Flatpak
Jak je uvedeno výše, všechny tři Snap, AppImage a Flatpak poskytují prostředky pro balení aplikací nezávisle na distribuci Linuxu. Pojďme se blíže podívat na některé z jejich pozoruhodných vlastností a také na jejich klady a zápory.
1. Snap
Snap je balicí systém vyvinutý společností Canonical a má významnou firemní podporu. Když nainstalujete snapovou verzi aplikace, obsahuje všechny knihovny a závislosti potřebné ke spuštění dané aplikace. To správcům aplikací šetří čas potřebný k zavedení různých sestavení pro různé systémy.
Můžeš nainstalovat snapy z obchodu Snap Store přímo nebo přes příkazový řádek. Mnoho populárních distribucí Linuxu přijalo Snap, včetně Ubuntu, Manjaro, Linux Mint, Debian, Kali a RHEL. Další klíčovou výhodou aplikací Snap je, že také běží na systémech IoT a Cloud bez úprav.
Snaps také umožňuje uživatelům mít více verzí stejné aplikace. Samoaktualizační povaha snapů zajišťuje, že se uživatelé nemusí starat o manuální aktualizace. Jelikož však snap balíčky obsahují všechny potřebné závislosti, jsou objemnější než vanilka .deb nebo .ot./min balíčky. Navíc verze snap mnoha aplikací běží pomaleji než AppImages nebo Flatpaks.
Níže jsou uvedeny některé uchopovací příkazy, které mohou být užitečné, pokud s nimi právě začínáte. Funkce každého příkazu je uvedena jako komentáře.
# nainstalujte VLC Media Player
snap install vlc# seznam nainstalovaných snapů
snap list# aktualizace VLC Media Player
snap refresh vlc# vrátit VLC Media Player na předchozí verzi
snap revert vlc
# odebrat VLC Media Player
snap odstranit vlc
2. AppImage
AppImage je skvělý způsob, jak vyzkoušet nové aplikace, aniž byste je museli instalovat do počítače. Koncept AppImage je poměrně jednoduchý: jeden soubor na aplikaci. Tímto způsobem mohou vývojáři zajistit přenositelnost svých aplikací a uživatelé mohou vyzkoušet nové balíčky bez instalace. Hlavní výhodou AppImages je, že nevyžadují oprávnění sudo v Linuxu.
Chcete-li vyzkoušet AppImage, vše, co musíte udělat, je stáhnout balíček, nastavit jej jako spustitelný a spustit. Je to podobné jak .exe soubory fungují ve Windows.
Příbuzný: Může Linux spouštět soubory Windows EXE?
AppImageHub je centrální úložiště pro balíčky AppImage a obsahuje mnoho oblíbených aplikací. AppImages si také můžete stáhnout z webových stránek dodavatelů, pokud jsou k dispozici. Ale držte se dál od AppImages stažených z nedůvěryhodného zdroje.
AppImages jsou obvykle rychlejší než snaps nebo flatpaks a potřebují méně úložného prostoru. Lze je také snadno odstranit, protože soubory AppImage můžete kdykoli odstranit, aniž byste přerušili ostatní systémové procesy.
Níže jsou uvedeny příkazy potřebné ke spuštění souboru AppImage v Linuxu z příkazového řádku:
# udělte oprávnění ke spuštění souboru
chmod a+x *.AppImage
# spusťte AppImage
./*.AppImage
3. Flatpak
Flatpak je další distro agnostický balicí systém, který dodává aplikace s požadovanými závislostmi. Uživatelé mohou najít a nainstalovat ploché balíčky z distribučního obchodu populárních systémů Linux nebo prostřednictvím rozhraní CLI.
Flatpak je decentralizovaný systém, což znamená, že můžete získat balíčky z několika repozitářů nebo vzdálených zařízení (v podmínkách Flatpak). Flathub je nejoblíbenější dálkový ovladač a má tisíce aplikací.
Aplikace Flatpak se standardně spouštějí v sandboxu, což je prostředí aplikace oddělené od běhového prostředí hostitelského systému. Tento sandbox obsahuje vše potřebné ke spuštění softwaru. Izolovaná povaha balíčků Flatpak je činí ze své podstaty bezpečnými a systémové změny mohou nastat pouze v případě, že uživatel poskytne výslovné oprávnění.
Balíčky Flatpak však obvykle zabírají více místa než Snaps nebo AppImages. Jsou také pomalejší ve srovnání s AppImages, ale rychlejší než balíčky Snap. Flatpak je standardně nainstalován na moderních distribucích Linuxu. Pokud tomu tak není, můžete jej nainstalovat pomocí následujících příkazů:
Na Ubuntu/Debian:
sudo apt nainstalovat flatpak
Na Arch Linuxu:
sudo pacman -S flatpak
Na Fedoře, RHEL a CentOS:
sudo dnf nainstalovat flatpak
Úložiště Flathub můžete přidat do svého systému pomocí níže uvedeného úryvku:
flatpak remote-add --if-not-exists flathub \ https://flathub.org/repo/flathub.flatpakrepo
Použijte nainstalovat flatpak příkaz k instalaci balíčků. Níže uvedený příkaz nainstaluje VLC flatpak z Flathub:
flatpak nainstalujte flathub org.videolan. VLC
Snap vs. AppImage vs. Flatpak: Jakou cestou se vydat?
Protože všechny tři formáty balíčků jsou nezávislé na operačním systému, můžete si vybrat kterýkoli z nich. Existují však scénáře, kdy každý z nich překonává ostatní. Pokud vám například nejvíce záleží na rychlosti aplikace a velikosti programu, pak by AppImage byla ideálním řešením.
Pokud ale chcete svou aplikaci provozovat na různých platformách, Snaps by měla být správná cesta. Flatpaks na druhou stranu nabízí vývojářům větší kontrolu. Pokud jste tedy vývojář, můžete si vybrat Flatpak před Snaps. Dostupnost aplikací je také důležitým faktorem při výběru mezi Snap, AppImage a Flatpak.
Nejlepší systém balení nezávislý na Distro pro Linux
Balíčky nezávislé na Distro jsou skvělým způsobem, jak zajistit přenositelnost softwaru. Všechny tři Snap, AppImage a Flatpak mají něco jedinečného, co mohou koncovým uživatelům nabídnout. I tak je ale jen na vás, kterou z nich budete chtít používat. Ještě lépe, vyzkoušejte některé z nejlepších linuxových aplikací ze všech tří oblastí a uvidíte, co funguje.
Ať už jste v Linuxu nováčci nebo jste ostřílení uživatelé, zde jsou nejlepší linuxový software a aplikace, které byste dnes měli používat.
Přečtěte si další
- Linux
- Aplikace pro Linux
- Správci balíčků
Rubaiat je CS grad se silnou vášní pro open-source. Kromě toho, že je unixovým veteránem, věnuje se také zabezpečení sítě, kryptografii a funkčnímu programování. Je vášnivým sběratelem knih z druhé ruky a nikdy nekončící obdiv ke klasickému rocku.
Přihlaste se k odběru našeho newsletteru
Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné e-knihy a exkluzivní nabídky!
Chcete-li se přihlásit k odběru, klikněte sem