V tomto tutoriálu uvidíme, co je Flatpak, jak nainstalovat Flatpak na Linux a jak používat Flatpak uživatelské rozhraní příkazového řádku k instalaci aplikací.
Úvod do Flatpak
Existuje tolik linuxových distribucí a balících aplikací pro všechny tyto linuxové distribuce je poměrně časově náročný a obtížný úkol. I když existuje mnoho převaděčů balíčků, všechny mají omezenou funkčnost a problémy s kompatibilitou.
K překonání tohoto problému byl použit formát balíčku aplikace s názvem Snap byl představen společností Canonical. Snaps byly původně vyvinuty pro operační systém Ubuntu, ale nyní jsou převzaty hlavními distribucemi Linuxu včetně Arch, Gentoo, Fedora, openSUSE atd.
Snap je jediný binární balíček svázaný se všemi požadovanými knihovnami a závislostmi. Můžete jej nainstalovat na jakoukoli distribuci Linuxu bez ohledu na její verzi a architekturu. Není třeba vyvíjet samostatnou aplikaci pro každou distribuci!
Podobně jako Snap existuje ještě další nástroj pro formátování balíčku aplikací s názvem Flatpak . Flatpak je systém pro vytváření, instalaci a spouštění aplikací a běhových prostředí v různých distribucích Linuxu.
Nyní můžete vytvořit jednu aplikaci Flatpak a nainstalovat ji na různé verze Linuxu. Nemusíte se starat o knihovny a závislosti, vše je součástí jediné aplikace.
Další pozoruhodnou funkcí je, že v systému Linux můžeme nainstalovat více verzí stejné aplikace současně. Například je možné nainstalovat VLC player verze 2.1, 2.2 a 2.3 na stejný systém. Pokud jste vývojář, můžete testovat různé verze aplikace najednou.
Flatpak původně vyvinul Alex Larsson a později schválený společnostmi Red Hat, Endless Computers a Collabora. Nyní je aktivně udržována nezávislou komunitou složenou z přispěvatelů, dobrovolníků a podpůrných organizací. Rámec Flatpak je napsán v C a vydané pod LGPL licence.
Běhové časy
Každá aplikace flatpak závisí na běhovém prostředí, aby správně fungovala na hostitelském systému. Runtime není nic jiného než sada základních závislostí (knihoven), které aplikace vyžaduje.
Když nainstalujeme aplikaci pomocí příkazu flatpak, automaticky se nainstaluje runtime. Runtime jsou distribučně nezávislé, takže mohou fungovat na jakékoli distribuci Linuxu. Jedno běhové prostředí může používat více než jedna aplikace.
Aktuálně jsou k dispozici tři hlavní běhové prostředí:Freedesktop , GNOME a KDE . Všechny jsou hostovány na Flathub úložiště.
Spojené knihovny
Knihovny, které nejsou k dispozici v běhovém prostředí, jsou vývojáři přibaleny k aplikaci. Knihovny mohou být také různé verze knihoven od těch, které jsou v běhovém prostředí a/nebo opravené verze knihoven.
Sandboxy
Aplikace Flaptpak je vytvořena a spuštěna v izolovaném prostředí známém jako „Sandbox“. Jinými slovy, aplikace flatpak jsou izolované od zbytku hostitelského operačního systému a dalších aplikací.
Každý sandbox obsahuje aplikaci a její runtime. Aplikace flatpak má ve výchozím nastavení přístup pouze k obsahu své karantény. Přístup k uživatelským souborům, síti, grafice a zařízením musí uživatel výslovně poskytnout.
Úložiště
Všechny aplikace flatpak a jejich běhové prostředí jsou uloženy na centrálním místě zvaném „úložiště“. Flathub je oficiálním úložištěm všech aplikací Flatpak. K aplikacím a runtimem můžeme přistupovat a instalovat je pomocí rozhraní příkazového řádku flatpak.
Nainstalujte Flatpak na Linux
Flatpak je k dispozici ve výchozích repozitářích populárních distribucí Linuxu, jako je Arch Linux, Debian, Fedora, Gentoo, Red Hat, Linux Mint, openSUSE, Solus, Mageia a distribuce Ubuntu.
Chcete-li nainstalovat Flatpak na Arch Linux a jeho varianty jako EndeavourOS a Manjaro Linux , spustit:
$ sudo pacman -S flatpak
Flatpak je dostupný ve výchozích úložištích Debianu Buster a novější verze. Chcete-li nainstalovat Flatpak na Debian, spusťte:
$ sudo apt install flatpak
Pokud v Debianu používáte GNOME DE, nainstalujte si plugin Flatpak pro GNOME Software pomocí příkazu:
$ sudo apt install gnome-software-plugin-flatpak
Na Fedoře , Flatpak je nainstalován ve výchozím nastavení. Vše, co musíte udělat, je povolit Flathub, jak je popsáno v další části.
Pro případ, že z nějakého důvodu není nainstalován, spusťte:
$ sudo dnf nainstalovat flatpak
Na RHEL 7 , spustit:
$ sudo yum nainstalovat flatpak
V systému CentOS 7 , Flatpak je standardně nainstalován. Není tedy potřeba žádné nastavení!
Počínaje verzí Linux Mint 18.3 , je standardně nainstalován flatpak. Není tedy potřeba žádné nastavení.
Na openSUSE Tumbleweed, Flatpak lze nainstalovat pomocí Zypper:
$ sudo zypper nainstalovat flatpak
Na Ubuntu 18.10 (Cosmic Cuttlefish) a novější verze Ubuntu, nainstalujte flatpak pomocí tohoto příkazu:
$ sudo apt install flatpak
Na starších verzích Ubuntu přidejte následující úložiště a nainstalujte Flatpak, jak je znázorněno níže.
$ sudo add-apt-repository ppa:alexlarsson/flatpak
Aktualizace $ sudo apt
$ sudo apt install flatpak
Zásuvný modul Flatpak pro aplikaci GNOME Software umožňuje instalovat aplikace bez potřeby příkazového řádku. Chcete-li nainstalovat tento plugin, spusťte:
$ sudo apt install gnome-software-plugin-flatpak
Na Solus , nainstalujte flatpak pomocí příkazu:
$ sudo eopkg install flatpak xdg-desktop-portal-gtk
Na webu Mageia 6 a novější verze, můžete nainstalovat Flatpak s DNF:
$ sudo dnf nainstalovat flatpak
Nebo nainstalujte pomocí urpmi
, jako níže:
$ sudo urpmi flatpak
Pop!_OS 20.04 má nainstalovaný Flatpak a standardně nakonfigurovaný Flathub. Pokud používáte Pop!_OS 19.10 nebo starší verze, spusťte:
$ sudo apt install flatpak
základní OS 5.1 a novější přichází s podporou Flatpak ihned po vybalení.
U ostatních distribucí Linuxu se podívejte na oficiální instalační odkaz .
Průvodce Flatpakem pro začátečníky
Existuje mnoho populárních aplikací, jako je Gimp, Kdenlive, Steam, Spotify a kód Visual Studio atd., které jsou k dispozici jako ploché balíčky. Chcete-li nainstalovat aplikaci flatpak, musíme nejprve přidat úložiště flatpak (nebo dálkové ovladače).
1. Přidejte vzdálená úložiště
Jak jsem již zmínil, aplikace a runtime jsou uloženy v úložišti nebo vzdáleném. Oficiální úložiště pro flatpak je Flathub .
Chcete-li povolit úložiště Flathub v systému Linux, jednoduše spusťte tento příkaz:
$ sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
K dispozici je mnoho dalších neoficiálních úložišť flatpak. Proveďte rychlé vyhledávání na webu a najděte je.
2. Seznam dálkových ovladačů
Chcete-li zobrazit seznam všech nakonfigurovaných vzdálených úložišť, spusťte:
Dálkové ovladače $ flatpak
Ukázkový výstup:
Možnosti názvu systémuflathub
Jak můžete vidět, výše uvedený příkaz uvádí seznam dálkových ovladačů, které jste přidali do vašeho systému. Také uvádí, zda bylo dálkové ovládání přidáno pro uživatele nebo pro celý systém. V mém případě jsem přidal úložiště flathub pro celý systém.
3. Nainstalujte aplikace Flatpak
V této části uvidíme, jak nainstalovat aplikace flatpak.
Chcete-li nainstalovat aplikaci Flatpak, například boxy GNOME, spusťte:
$ flatpak nainstalovat flathub org.gnome.Boxes
Výše uvedený příkaz nainstaluje aplikaci v celém systému.
Pokud nechcete instalovat aplikace v celém systému, můžete také nainstalovat aplikace flatpak pro každého uživatele, jak je uvedeno níže.
$ instalace flatpak --user
Všechny nainstalované aplikace budou uloženy v $HOME/.var/app/
umístění.
$ ls $HOME/.var/app/ com.github.calo001.fondo com.github.tchx84.Flatseal org.gnome.Boxes
4. Spusťte aplikace Flatpak
Nainstalované aplikace můžete kdykoli spustit ze spouštěče aplikací. Z příkazového řádku jej můžete spustit, například boxy GNOME, pomocí příkazu:
$ flatpak spouští org.gnome.Boxes
Flatpak přidá položky nabídky pro všechny aplikace flatpak. Můžete tedy spustit přímo z nabídky nebo spouštěče aplikací.
5. Vyhledejte aplikace flatpak
Chcete-li vyhledat aplikaci:
$ flatpak search gimp
Ukázkový výstup:
Název Popis ID aplikace Verze Pobočka RemotesGNU Image Manipulati… Vytvářejte obrázky a upravujte fotografie org.gimp.GIMP 2.10.20 stabilní flathub Uživatelská příručka GIMP Uživatelská příručka GIMP org.gimp.GIMP.Manual 2.10 2.10 flathubResynthesizer Sada zásuvných modulů GIMP, které léčit (in-paint), syntetizovat texturu, motivovat obrázek a další …p.GIMP.Plugin.Resynthesizer 2.0.3 2-3.36 flathubGimpLensfun GimpLensfun je plugin Gimp pro korekci zkreslení čočky pomocí knihovny a databáze lensfun. org.gimp.GIMP.Plugin.Lensfun 0.2.4 2-3.36 flathubFourier Jednoduchý zásuvný modul GIMP pro provedení Fourierovy transformace na vašem obrázku. org.gimp.GIMP.Plugin.Fourier 0.4.3 2-3.36 flathubBIMP Batch Image Manipulation Program, zásuvný modul GIMP pro aplikaci sady manipulací na celý gr… org.gimp.GIMP.Plugin.BIMP 2.4 2-3.36 flathubLiquidRescale LiquidRescale plugin pro nestejnoměrnou změnu velikosti obrázků při zachování jejich vlastností, tj. avo… …p.GIMP.Plugin.LiquidRescale 0.7.2 2-3.36 flathubG'MIC GREYC's Magic for Image Computing org.gimp.GIMP.Plugin.GMic 2.9.2 2- 3.36 flathubFocusBlur Focus Blur plug-in crete efekt rozmazání podobný Depth of Field. ….gimp.GIMP.Plugin.FocusBlur 3.2.6 2-3.36 flathubGlimpse Vytvářejte obrázky a upravujte fotografie org.glimpse_editor.Glimpse 0.2.0 stabilní flathubSkenuje do PDF Vytvářejte malé soubory PDF s možností vyhledávání z naskenovaných dokumentů com.github.unrud.djpdf 0. 2 stabilní flathub
Tento příkaz vrátí všechny aplikace, které odpovídají řetězci "gimp" ze všech dálkových ovladačů.
6. Vypsat místně nainstalované aplikace flatpak a runtime
Chcete-li zobrazit všechny nainstalované aplikace a běhové moduly flatpak ve vašem systému, spusťte:
seznam $ flatpak
Ukázkový výstup:
Název ID aplikace Verze Pobočka InstalaceFondo com.github.calo001.fondo 1.3.8 stable systemFlatseal com.github.tchx84.Flatseal 1.5.2 stabilní systém výchozí …reedesktop.Platform.GL.výchozí 19.08 systemIntel …eedeskVAAPItop. Intel 19.08 systemopenh264 ….freedesktop.Platform.openh264 2.1.0 2.0 systemGNOME Boxes org.gnome.Boxes 3.36.6 stabilní systém GNOME Application Platform ve… org.gnome.Platform 3.36 systemAmbiance Gtk motiv.3Gm2 org.gtkar. Gtk Theme org.gtk.Gtk3theme.Yaru-light 3.22 system
Pokud chcete zobrazit seznam nainstalovaných aplikací a modulů runtime s instalovanou velikostí , použijte -d
vlajka.
seznam $ flatpak -d
Ukázkový výstup:
… … … Verze Branch Arch Origin Instalace Ref Aktivní potvrzení Nejnovější potvrzení Instalovaná velikost …… … … 1.3.9 stabilní x86_64 flathub systém com.github.calo001.fondo/x86_64/stable 4755529773f0 - 89,3 MB …… … … 1.6. 2 stabilní systém plochého náboje x86_64 com.github.tchx84.Flatseal/x86_64/stable 4e1efc03269e - 2,9 MB …… … 19,08 x86_64 systém plochého náboje x8… systém org.freedesktop.Platform.VAAPI.Intel/x86_64/19.08 19fe8e74d641 - 37,0 MB …… … … 2.1.0 2.0 x86_64 systém plochého hubu org.freedesktop.Platform.openh283/f72396_6 -264/f7386_6. … 6 stabilních x86_64 flathub systému org.gnome.Boxes/x86_64/stable 98c619ed7873 – 706,9 MB …… … … 3,36 x86_64 flathub system org.gnome.Platform/x86_64/3,36 d79ff93caf2d - 934,6 MB …… … … 3,22 x86_64 flathub system org.gtk.Gtk3theme.Ambiance…692f4316. flathub system org.gtk.Gtk3theme.Yaru-light/x86_64/3.22 2573259417d8 - 718,3 kB …
Vypsat pouze runtime s příkazem:
seznam $ flatpak --runtime
Ukázkový výstup:
Název ID aplikace Verze Pobočka InstallationLocale com.github.calo001.fondo.Locale stable systemdefault …reedesktop.Platform.GL.default 19.08 systemIntel …eedesktop.Platform.VAAPI.Intel 19.08 systemopenh264 ….form422openh.P. 2.0 systemLocale org.gnome.Boxes.Locale stabilní systémGNOME Application Platform ve… org.gnome.Platform 3.36 systemAmbiance Gtk téma org.gtk.Gtk3theme.Ambiance 3.22 systemYaru-light Gtk téma org.gtk.Gtk3theme2.3Yart před>Chcete-li zobrazit pouze aplikace, nikoli časy běhu, použijte tento příkaz.
seznam $ flatpak --appUkázkový výstup:
Název ID aplikace Verze Pobočka InstalaceFondo com.github.calo001.fondo 1.3.8 stabilní systémFlatseal com.github.tchx84.Flatseal 1.5.2 stabilní systém GNOME Boxes org.gnome.Boxes 3.36.6 stabilní systém7. Seznam vzdálených aplikací a runtime
Můžete také zobrazit seznam dostupných aplikací a běhových modulů ze vzdálených úložišť.
Chcete-li zobrazit seznam aplikací a běhových modulů ze všech vzdálených ovladačů, použijte příkaz:
$ flatpak remote-lsVypsat pouze runtime:
$ flatpak remote-ls --runtimeUveďte pouze aplikace:
$ flatpak remote-ls --appSeznam aplikací a běhových modulů z konkrétního úložiště, například flathub , spustit:
$ flatpak remote-ls flathubChcete-li vypsat pouze aplikace ze vzdáleného úložiště, spusťte:
$ flatpak remote-ls flathub --app8. Aktualizujte aplikace flatpak
Chcete-li aktualizovat všechny aplikace flatpak, spusťte:
Aktualizace $ flatpakAktualizaci konkrétní aplikace provedeme takto:
Aktualizace $ flatpak org.gnome.Boxes9. Zobrazit podrobnosti o aplikaci flatpak
Chcete-li zobrazit podrobnosti o nainstalované aplikaci, spusťte:
$ flatpak info org.gnome.BoxesUkázkový výstup:
Boxy GNOME – Jednoduché vzdálené a virtuální stroje ID:org.gnome.Boxes Ref:app/org.gnome.Boxes/x86_64/stable Arch:x86_64 Větev:stabilní Verze:3.36.6 Licence:LGPL-2.1+ Původ:flathub Kolekce:org.flathub.StableInstallation:systém Instalovaný:706,9 MB Délka:org.gnome.Platform / x86_64 / 3.36 SDK:org.gnome.Sdk / x86_64 / 3,36 Commit:98c619ed78736e85433bcbecd5c4392ad30d4890a71ddc909f5b4c51dfcde340 Parent:72ec972e0ce7fdf640f478d406a8acad5f90ebd1f8c0ac330baa7ed3dd5ccd70 Předmět:Build VTE z git mistra ( a8cf05d9) Datum:2020-09-02 10:02:20 + 000010. Odinstalujte aplikace flatpak
Chcete-li odebrat aplikaci flatpak, spusťte:
$ sudo flatpak odinstalujte org.gnome.Boxes11. Odebrat vzdálená úložiště
Chcete-li odebrat dálkový ovladač, například flathub:
$ sudo flatpak remote-delete flathubZde, flathub je název dálkového ovladače.
12. Odstraňte nepoužívaná runtime
Poté, co odeberete všechny aplikace, které závisí na konkrétním běhovém prostředí, samotné běhové prostředí se automaticky neodstraní.
Chcete-li odebrat běhová prostředí a rozšíření, která nepoužívají žádné nainstalované aplikace, spusťte:
Odinstalace $ flatpak --unused13. Odebrat mezipaměť flatpak
Chcete-li odstranit zbývající mezipaměť flatpak v
tmp
umístění, spustit:$ sudo bash -c "! pgrep -x flatpak &&rm -r /var/tmp/flatpak-cache-*"Pokud používáte
systemd
jako výchozí správce systému můžete automatizovat úlohu čištění zbývající mezipaměti flatpak, jak je uvedeno níže.Vytvořte soubor služby s názvem
clear_flatpak_cache.service
v/lib/systemd/system/
adresář s následujícím obsahem:[Unit]Description=Čistič mezipaměti Flatpak[Služba]ExecStart=bash -c "! pgrep -x flatpak &&rm -r /var/tmp/flatpak-cache-*"[Install]WantedBy=multi-user.targetSpusťte a povolte tuto službu při spouštění:
$ sudo systemctl enable --now clear_flatpak_cacheOd této chvíle budou zbývající soubory mezipaměti flatpak vymazány při spuštění.
14. Opravte instalaci flatpak
Instalaci flatpak můžeme opravit oříznutím a opětovnou instalací neplatných objektů.
Chcete-li to provést, spusťte:
Oprava $ flatpakMůžete také provést opravu podle uživatele a systému pomocí
--user
a--system
příznaky.Opravit instalaci pro uživatele:
$ flatpak repair --userOprava instalace na systém:
$ flatpak repair --system15. Zobrazit historii flatpak
Možná jste nainstalovali nějaké aplikace, aktualizovali je nebo je odstranili. Všechny transakce flatpak budou protokolovány flatpakem.
Můžete se podívat na tyto protokoly a zjistit, jaké změny byly v průběhu času provedeny ve vaší instalaci Flatpak.
Historie $ flatpak16. Zobrazit sekci nápovědy flatpak
Pro nápovědu k flatpaku spusťte:
$ flatpak --helpTento příkaz zobrazí seznam všech dostupných voleb flatpak a dílčích příkazů s malým popisem.
Závěr
Tento tutoriál flatpak vám poskytl krátký úvod do Flatpak a základních technologií používaných ve Flatpak, jako jsou runtime, vzdálená ovládání, přibalené knihovny a sandboxy atd. A pak také vysvětlil, jak nainstalovat a používat flatpak v distribucích Linuxu.
Doporučeno:
- Jak snadno nakonfigurovat oprávnění Flatpak Apps pomocí Flatseal
- Porovnání správců balíčků Linux – AppImage vs Snap vs Flatpak