GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren und verwenden Sie Flatpak unter Linux

In diesem Tutorial werden wir sehen, was Flatpak ist, wie Flatpak unter Linux installiert wird und wie die Flatpak-Befehlszeilen-Benutzeroberfläche zum Installieren von Anwendungen verwendet wird.

Einführung in Flatpak

Es gibt so viele Linux-Distributionen und das Packen von Anwendungen für all diese Linux-Distributionen ist eine ziemlich zeitaufwändige und schwierige Aufgabe. Obwohl es viele Paketkonverter gibt, haben sie alle eingeschränkte Funktionalität und Kompatibilitätsprobleme.

Um dieses Problem zu lösen, wurde ein Anwendungspaketformat namens Snap wurde von Canonical eingeführt. Snaps wurden ursprünglich für das Ubuntu-Betriebssystem entwickelt, werden aber jetzt von den wichtigsten Linux-Distributionen übernommen, darunter Arch, Gentoo, Fedora, openSUSE usw.

Ein Snap ist ein einzelnes Binärpaket, das mit allen erforderlichen Bibliotheken und Abhängigkeiten gebündelt ist. Sie können es auf jeder Linux-Distribution installieren, unabhängig von Version und Architektur. Es ist nicht erforderlich, für jede Distribution eine separate Anwendung zu entwickeln!

Ähnlich wie bei Snap gibt es noch ein weiteres Tool zum Formatieren von Anwendungspaketen namens Flatpak . Flatpak ist ein System zum Erstellen, Installieren und Ausführen von Anwendungen und Laufzeiten auf verschiedenen Linux-Distributionen.

Sie können jetzt eine einzelne Flatpak-Anwendung erstellen und auf verschiedenen Linux-Versionen installieren. Sie müssen sich keine Gedanken über die Bibliotheken und Abhängigkeiten machen, alles ist in einer einzigen App selbst gebündelt.

Ein weiteres bemerkenswertes Merkmal ist, dass wir mehrere Versionen derselben Anwendung gleichzeitig im Linux-System installieren können. Beispielsweise ist es möglich, die VLC-Player-Versionen 2.1, 2.2 und 2.3 auf demselben System zu installieren. Als Entwickler können Sie verschiedene Versionen einer Anwendung gleichzeitig testen.

Flatpak wurde ursprünglich von Alex Larsson entwickelt und später von Red Hat, Endless Computers und Collabora unterstützt. Es wird jetzt aktiv von einer unabhängigen Gemeinschaft gepflegt, die sich aus Mitwirkenden, Freiwilligen und unterstützenden Organisationen zusammensetzt. Das Flatpak-Framework ist in C geschrieben und veröffentlicht unter LGPL Lizenz.

Laufzeiten

Jede Flatpak-Anwendung hängt von einer Laufzeit ab, um auf einem Hostsystem ordnungsgemäß zu funktionieren. Eine Laufzeit ist nichts anderes als ein Satz grundlegender Abhängigkeiten (Bibliotheken), die von einer Anwendung benötigt werden.

Wenn wir eine Anwendung mit dem Flatpak-Befehl installieren, wird automatisch eine Laufzeitumgebung installiert. Die Laufzeiten sind verteilungsunabhängig, sodass sie auf jeder Linux-Distribution funktionieren können. Mehrere Anwendungen können eine einzelne Laufzeit verwenden.

Derzeit sind drei Hauptlaufzeiten verfügbar:Freedesktop , GNOME und KDE . Diese werden alle auf Flathub gehostet Repository.

Gebündelte Bibliotheken

Die Bibliotheken, die nicht in einer Laufzeit verfügbar sind, werden von den Entwicklern zusammen mit der Anwendung gebündelt. Die Bibliotheken können auch andere Versionen von Bibliotheken sein als diejenigen, die sich in einer Laufzeit befinden und/oder gepatchte Versionen von Bibliotheken.

Sandboxen

Eine Flaptpak-App wird in einer isolierten Umgebung namens „Sandbox“ erstellt und ausgeführt. Mit anderen Worten, die Flatpak-Apps sind vom Rest des Host-Betriebssystems und anderen Anwendungen isoliert.

Jede Sandbox enthält die Anwendung und ihre Laufzeit. Eine Flatpak-Anwendung kann standardmäßig nur auf den Inhalt ihrer Sandbox zugreifen. Der Zugriff auf die Benutzerdateien, das Netzwerk, die Grafiken und die Geräte muss vom Benutzer ausdrücklich erteilt werden.

Repositorys

Alle Flatpak-Anwendungen und ihre Laufzeiten werden an einem zentralen Ort namens "Repositories" gespeichert. Flathub ist das offizielle Repository aller Flatpak-Anwendungen. Wir können über die Flatpak-Befehlszeilenschnittstelle auf die Anwendungen und Laufzeiten zugreifen und diese installieren.

Flatpak unter Linux installieren

Flatpak ist in den Standard-Repositories gängiger Linux-Distributionen wie Arch Linux, Debian, Fedora, Gentoo, Red Hat, Linux Mint, openSUSE, Solus, Mageia und Ubuntu-Distributionen verfügbar.

Um Flatpak auf Arch Linux zu installieren und seine Varianten wie EndeavourOS und Manjaro Linux , ausführen:

$ sudo pacman -S flatpak

Flatpak ist in den Standard-Repositories von Debian verfügbar Buster und neuere Versionen. Um Flatpak unter Debian zu installieren, führen Sie Folgendes aus:

$ sudo apt install flatpak

Wenn Sie GNOME DE unter Debian verwenden, installieren Sie das Flatpak-Plugin für GNOME-Software mit dem Befehl:

$ sudo apt install gnome-software-plugin-flatpak

Auf Fedora , Flatpak ist standardmäßig installiert. Sie müssen lediglich Flathub aktivieren, wie im nächsten Abschnitt beschrieben.

Nur für den Fall, dass es aus irgendeinem Grund nicht installiert ist, führen Sie Folgendes aus:

$ sudo dnf install flatpak

Auf RHEL 7 , ausführen:

$ sudo yum install flatpak

Unter CentOS 7 , Flatpak wird standardmäßig installiert. Also keine Einrichtung erforderlich!

Ab Linux Mint 18.3 , flatpak wird standardmäßig installiert. Es ist also keine Einrichtung erforderlich.

Auf openSUSE Tumbleweed, Flatpak kann mit Zypper installiert werden:

$ sudo zypper install flatpak

Auf Ubuntu 18.10 (Cosmic Cuttlefish) und neuere Ubuntu-Versionen installieren Sie flatpak mit diesem Befehl:

$ sudo apt install flatpak

Fügen Sie bei älteren Ubuntu-Versionen das folgende Repository hinzu und installieren Sie Flatpak wie unten gezeigt.

$ sudo add-apt-repository ppa:alexlarsson/flatpak
$ sudo apt update
$ sudo apt install flatpak

Das Flatpak-Plug-in für die GNOME-Software-App ermöglicht es, Apps zu installieren, ohne die Befehlszeile zu benötigen. Um dieses Plug-in zu installieren, führen Sie Folgendes aus:

$ sudo apt install gnome-software-plugin-flatpak

Auf Solus , installieren Sie Flatpak mit dem Befehl:

$ sudo eopkg install flatpak xdg-desktop-portal-gtk

Auf Mageia 6 und neuere Versionen können Sie Flatpak mit DNF installieren:

$ sudo dnf install flatpak 

Oder installieren Sie mit urpmi , wie unten:

$ sudo urpmi flatpak

Pop!_OS 20.04 hat Flatpak installiert und Flathub standardmäßig konfiguriert. Wenn Sie Pop!_OS 19.10 oder frühere Versionen verwenden, führen Sie Folgendes aus:

$ sudo apt install flatpak

elementares OS 5.1 und neuere Versionen werden standardmäßig mit Flatpak-Unterstützung geliefert.

Für andere Linux-Distributionen siehe den offiziellen Installations-Link .

Ein Anfängerleitfaden für Flatpak

Es gibt viele beliebte Anwendungen wie Gimp, Kdenlive, Steam, Spotify und Visual Studio Code usw., die als Flatpaks erhältlich sind. Um eine Flatpak-App zu installieren, müssen wir zuerst Flatpak-Repositories (oder Remotes) hinzufügen.

1. Remote-Repositories hinzufügen

Wie ich bereits erwähnt habe, werden die Anwendungen und Laufzeiten in einem Repository oder Remote gespeichert. Das offizielle Repository für Flatpak ist Flathub .

Um das Flathub-Repository unter Linux zu aktivieren, führen Sie einfach diesen Befehl aus:

$ sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Es sind viele andere inoffizielle Flatpak-Repositories verfügbar. Führen Sie eine schnelle Websuche durch, um sie zu finden.

2. Fernbedienungen auflisten

Um alle konfigurierten Remote-Repositories aufzulisten, führen Sie Folgendes aus:

$ Flatpak-Fernbedienungen

Beispielausgabe:

Name Optionsflathub system

Wie Sie sehen können, listet der obige Befehl die Fernbedienungen auf, die Sie in Ihrem System hinzugefügt haben. Es listet auch auf, ob die Fernbedienung pro Benutzer oder systemweit hinzugefügt wurde. In meinem Fall habe ich das Flathub-Repository systemweit hinzugefügt.

3. Flatpak-Anwendungen installieren

In diesem Abschnitt werden wir sehen, wie Flatpak-Apps installiert werden.

Um eine Flatpak-Anwendung zu installieren, beispielsweise GNOME-Boxen, führen Sie Folgendes aus:

$ flatpak install flathub org.gnome.Boxes

Der obige Befehl installiert die Anwendung systemweit.

Wenn Sie Apps nicht systemweit installieren möchten, können Sie auch Flatpak-Apps wie unten beschrieben pro Benutzer installieren.

$ flatpak install --user 

Alle installierten Apps werden in $HOME/.var/app/ gespeichert Ort.

$ ls $HOME/.var/app/ com.github.calo001.fondo com.github.tchx84.Flatseal org.gnome.Boxes

4. Flatpak-Anwendungen ausführen

Sie können die installierten Anwendungen jederzeit über den Anwendungsstarter starten. Von der Befehlszeile aus können Sie es ausführen, zum Beispiel GNOME-Boxen, mit dem Befehl:

$ flatpak führt org.gnome.Boxes aus

Flatpak fügt die Menüeinträge für alle Flatpak-Apps hinzu. So können Sie direkt über das Menü oder den Anwendungsstarter starten.

5. Suchen Sie nach Flatpak-Anwendungen

So suchen Sie nach einer Anwendung:

$ flatpak search gimp

Beispielausgabe:

Name Beschreibung Application ID Version Branch RemotesGNU Image Manipulati… Bilder erstellen und Fotos bearbeiten org.gimp.GIMP 2.10.20 stable flathubGIMP User Manual GIMP User Manual org.gimp.GIMP.Manual 2.10 2.10 flathubResynthesizer Satz von GIMP Plug-Ins, die heilen (In-Paint), Textur synthetisieren, ein Bild gestalten und mehr …p.GIMP.Plugin.Resynthesizer 2.0.3 2-3.36 flathubGimpLensfun GimpLensfun ist ein Gimp-Plug-in zum Korrigieren von Linsenverzerrungen mithilfe der Lensfun-Bibliothek und -Datenbank. org.gimp.GIMP.Plugin.Lensfun 0.2.4 2-3.36 flathubFourier Ein einfaches GIMP-Plug-in zur Fourier-Transformation Ihres Bildes. org.gimp.GIMP.Plugin.Fourier 0.4.3 2-3.36 flathubBIMP Batch-Bildbearbeitungsprogramm, ein GIMP-Plug-in zum Anwenden einer Reihe von Manipulationen auf eine ganze Gr… org.gimp.GIMP.Plugin.BIMP 2.4 2-3.36 flathubLiquidRescale LiquidRescale Plugin, um die Größe von Bildern nicht einheitlich zu ändern, während ihre Eigenschaften beibehalten werden, d. 3.36 flathubFocusBlur Focus Blur-Plug-in erzeugt einen Unschärfeeffekt ähnlich dem Tiefenschärfeeffekt. ….gimp.GIMP.Plugin.FocusBlur 3.2.6 2-3.36 flathubGlimpse Bilder erstellen und Fotos bearbeiten org.glimpse_editor.Glimpse 0.2.0 stable flathubScans to PDF Kleine, durchsuchbare PDFs aus gescannten Dokumenten erstellen com.github.unrud.djpdf 0.1. 2 stabile Flathub

Dieser Befehl gibt alle Anwendungen zurück, die mit der Zeichenfolge "gimp" von allen Fernbedienungen übereinstimmen.

6. Listen Sie lokal installierte Flatpak-Anwendungen und Laufzeiten auf

Um alle installierten Flatpak-Anwendungen und Laufzeiten auf Ihrem System anzuzeigen, führen Sie Folgendes aus:

$-Flatpak-Liste

Beispielausgabe:

Name Anwendungs-ID Version Branch InstallationFondo com.github.calo001.fondo 1.3.8 stabiles SystemFlatseal com.github.tchx84.Flatseal 1.5.2 stabiles Systemdefault …reedesktop.Platform.GL.default 19.08 systemIntel …eedesktop.Platform.VAAPI. Intel 19.08 systemopenh264 ….freedesktop.Platform.openh264 2.1.0 2.0 systemGNOME Boxes org.gnome.Boxes 3.36.6 stable systemGNOME Application Platform ve… org.gnome.Platform 3.36 systemAmbiance Gtk theme org.gtk.Gtk3theme.Ambiance 3.22 systemYaru-light Gtk-Design org.gtk.Gtk3theme.Yaru-light 3.22 system

Wenn Sie die Liste der installierten Anwendungen und Laufzeiten mit installierter Größe anzeigen möchten verwenden Sie -d Flagge.

$ Flatpak-Liste -d

Beispielausgabe:

… … … Version Branch Arch Ursprung Installation Ref Aktives Commit Letztes Commit Installierte Größe …… … … 1.3.9 stabiles x86_64 Flathub-System com.github.calo001.fondo/x86_64/stable 4755529773f0 - 89,3 MB …… … … 1.6. 2 stabiles x86_64-Flathub-System com.github.tchx84.Flatseal/x86_64/stable 4e1efc03269e - 2,9 MB …… … system org.freedesktop.Platform.VAAPI.Intel/x86_64/19.08 19fe8e74d641 - 37,0 MB …… … … 2.1.0 2.0 x86_64 flathub system org.freedesktop.Platform.openh264/x86_64/2.0 73f998362a6f - 778,2 kB. 6 stabiles x86_64-Flathub-System 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 …… … … Flathub-System org.gtk.Gtk3theme.Yaru-light/x86_64/3.22 2573259417d8 - 718,3 kB …

Listen Sie nur die Laufzeiten mit dem Befehl auf:

$ flatpak list --runtime

Beispielausgabe:

Name Anwendungs-ID Version Branch InstallationLocale com.github.calo001.fondo.Locale stable systemdefault …reedesktop.Platform.GL.default 19.08 systemIntel …eedesktop.Platform.VAAPI.Intel 19.08 systemopenh264 ….freedesktop.Platform.openh264 2.1.0 2.0 systemLocale org.gnome.Boxes.Locale stable systemGNOME Application Platform ve… org.gnome.Platform 3.36 systemAmbiance Gtk-Design org.gtk.Gtk3theme.Ambiance 3.22 systemYaru-light Gtk-Design org.gtk.Gtk3theme.Yaru-light 3.22 system 

Verwenden Sie stattdessen diesen Befehl, um nur die Anwendungen und nicht die Laufzeiten anzuzeigen.

$ flatpak list --app

Beispielausgabe:

Name Anwendungs-ID Version Branch InstallationFondo com.github.calo001.fondo 1.3.8 stabiles SystemFlatseal com.github.tchx84.Flatseal 1.5.2 stabiles SystemGNOME Boxes org.gnome.Boxes 3.36.6 stabiles System

7. Remote-Anwendungen und -Laufzeiten auflisten

Sie können auch die Liste der verfügbaren Anwendungen und Laufzeiten aus den Remote-Repositories anzeigen.

So listen Sie Anwendungen und Laufzeiten von allen Remotes mit dem Befehl auf:

$ flatpak remote-ls

Nur die Laufzeiten auflisten:

$ flatpak remote-ls --runtime

Nur die Anwendungen auflisten:

$ flatpak remote-ls --app

Listen Sie Anwendungen und Laufzeiten aus einem bestimmten Repository auf, zum Beispiel flathub , ausführen:

$ flatpak remote-ls flathub

Führen Sie Folgendes aus, um nur die Anwendungen aus einem Remote-Repository aufzulisten:

$ flatpak remote-ls flathub --app

8. Flatpak-Anwendungen aktualisieren

Um alle Ihre Flatpak-Anwendungen zu aktualisieren, führen Sie Folgendes aus:

$ Flatpak-Update

Um eine bestimmte Anwendung zu aktualisieren, gehen wir wie folgt vor:

$ flatpak aktualisiere org.gnome.Boxes

9. Details einer Flatpak-Anwendung anzeigen

Um die Details einer installierten Anwendung anzuzeigen, führen Sie Folgendes aus:

$ flatpak info org.gnome.Boxes

Beispielausgabe:

GNOME Boxes – Einfache entfernte und virtuelle Maschinen ID:org.gnome.Boxes Ref:app/org.gnome.Boxes/x86_64/stable Arch:x86_64 Branche:stable Version:3.36.6 Lizenz:LGPL-2.1+ Herkunft:flathub Collection:org.flathub.StableInstallation:system Installed:706.9 MB Runtime:org.gnome.Platform/x86_64/3.36 Sdk:org.gnome.Sdk/x86_64/3.36 Commit:98c619ed78736e85433bcbecd5c4392ad30d4890a71ddc909f5b4c51dfcde340 Parent:72ec972e0ce7fdf640f478d406a8acad5f90ebd1f8c0ac330baa7ed3dd5ccd70 Subject:Build vte from git master ( a8cf05d9) Datum:2020-09-02 10:02:20 +0000

10. Flatpak-Anwendungen deinstallieren

Um eine Flatpak-Anwendung zu entfernen, führen Sie Folgendes aus:

$ sudo flatpak uninstall org.gnome.Boxes

11. Entfernte Repositories entfernen

So entfernen Sie eine Fernbedienung, zum Beispiel Flathub:

$ sudo flatpak remote-delete flathub

Hier, Flathub ist der Name der Fernbedienung.

12. Nicht verwendete Laufzeiten entfernen

Nachdem Sie alle Anwendungen entfernt haben, die von einer bestimmten Laufzeit abhängen, wird die Laufzeit selbst nicht automatisch entfernt.

Um Laufzeiten und Erweiterungen zu entfernen, die nicht von installierten Anwendungen verwendet werden, führen Sie Folgendes aus:

$ flatpak uninstall --unused

13. Flatpak-Cache entfernen

Um übrig gebliebenen Flatpak-Cache im tmp zu entfernen Ort, führe aus:

$ sudo bash -c "! pgrep -x flatpak &&rm -r /var/tmp/flatpak-cache-*"

Wenn Sie systemd verwenden Als Ihr Standard-Systemmanager können Sie die Reinigungsaufgabe für Flatpak-Rest-Cache wie unten automatisieren.

Erstellen Sie eine Dienstdatei mit dem Namen clear_flatpak_cache.service in /lib/systemd/system/ Verzeichnis mit folgendem Inhalt:

[Unit]Description=Flatpak Cache Cleaner[Service]ExecStart=bash -c "! pgrep -x flatpak &&rm -r /var/tmp/flatpak-cache-*"[Install]WantedBy=multi-user.target 

Starten und aktivieren Sie diesen Dienst beim Booten:

$ sudo systemctl enable --now clear_flatpak_cache

Von nun an werden die verbleibenden Flatpak-Cache-Dateien beim Start gelöscht.

14. Flatpak-Installation reparieren

Wir können eine Flatpak-Installation reparieren, indem wir ungültige Objekte löschen und neu installieren.

Führen Sie dazu Folgendes aus:

$ Flatpak-Reparatur

Sie können mit --user auch eine benutzer- und systemspezifische Reparatur durchführen und --system Flaggen.

Installation pro Benutzer reparieren:

$ flatpak repair --user

Installation pro System reparieren:

$ flatpak repair --system

15. Flatpak-Verlauf anzeigen

Möglicherweise haben Sie einige Apps installiert, aktualisiert oder entfernt. Alle Flatpak-Transaktionen werden von Flatpak protokolliert.

Sie können sich diese Protokolle ansehen, um herauszufinden, welche Änderungen an Ihrer Flatpak-Installation im Laufe der Zeit vorgenommen wurden.

$ Flatpak-Verlauf

16. Flatpak-Hilfeabschnitt anzeigen

Führen Sie für Flatpak-Hilfe Folgendes aus:

$ flatpak --help

Dieser Befehl zeigt die Liste aller verfügbaren Flatpak-Optionen und Unterbefehle mit einer kleinen Beschreibung an.

Schlussfolgerung

Dieses Flatpak-Tutorial gab Ihnen eine kurze Einführung in Flatpak und die zugrunde liegenden Technologien, die in Flatpak verwendet werden, wie Laufzeiten, Remotes, gebündelte Bibliotheken und Sandboxen usw. Und dann wurde auch erklärt, wie Flatpak auf Linux-Distributionen installiert und verwendet wird>

Empfohlene Lektüre:

  • So konfigurieren Sie ganz einfach Flatpak-App-Berechtigungen mit Flatseal
  • Linux-Paketmanager im Vergleich – AppImage vs. Snap vs. Flatpak

Linux
  1. So installieren und verwenden Sie Telnet unter Kali Linux

  2. Wie installiere und verwende ich den Linux-Bildschirm?

  3. So installieren und verwenden Sie SSHFS unter Linux

  4. So installieren und verwenden Sie Slack unter Linux

  5. So installieren und verwenden Sie Traceroute unter Linux

So installieren und verwenden Sie Telnet auf Linux-Systemen

So installieren und verwenden Sie die ZSH-Shell unter Linux

So installieren und verwenden Sie den fd-Befehl unter Linux

So installieren und verwenden Sie Nu Shell unter Linux

So installieren und verwenden Sie Flatpak unter Linux

So installieren und verwenden Sie Snapcraft unter Linux