The wikis are now using the new authentication system.
If you did not migrate your account yet, visit https://idp-portal-info.suse.com/

Flatpak

Wechseln zu: Navigation, Suche
Flatpak ist ein freies und quelloffenes Paketverwaltungssystem zum Erstellen und Verteilen von Desktop-Anwendungen unter Linux. Die Anwendungen laufen unabhängig vom Hostsystem in einer Sandbox-Umgebung, mit dem Ziel, sie konfliktfrei neben der "standardmäßigen" Paketverwaltung zu installieren.


Getestet mit openSUSE Empfohlene Artikel Verwandte Artikel
Icon-checked.png

Icon-manual.png Icon-help.png


Flatpak

Flatpak.jpg

Virtualisierung von Desktop-Applikationen auf Linux-Systemen

Download für openSUSE:



Lizenz: LGPL
Webseite: https://flatpak.org/

Flatpak legt Binaries, Bibliotheken, Konfigurationsdateien und sonstige Dateien ins Verzeichnis /var/lib/flatpak/app/. Eine Flatpak-Applikation ist somit ohne weiteren Anpassungen in der Regel auf sämtlichen Linux-Distributionen mit installiertem Flatpak lauffähig. Dabei benötigt jede Applikation eine Laufzeitumgebung ("Runtime"), die z.B. für Gnome und KDE entsprechend gross sind. Mehrere Flatpak-Applikationen können sich dieselbe Laufzeitumgebung teilen, sofern die Applikationen die gleiche Version der Umgebung nutzen. Fehlt eine Laufzeitumgebung, wird diese automatisch mit installiert. Es können auch mehrere Laufzeitumgebungen in verschiedenen Version parallel installiert werden.

Installation

Flatpak wir über die "standardmäßige" Paketverwaltung Zypper installiert:

sudo zypper install flatpak 

Anschließend muss das Flathub-Repository hinzugefügt werden, damit Flatpak Anwendungen auch finden kann:

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

Um die Installation abzuschliessen startet man den Rechner am besten einmal neu.

Update

Vor der ersten Benutzung muss Flatpak einmal upgedatet werden:

flatpak update

Um nach Anwendungen zu suchen benutzt man:

flatpak search <Name>

Danach kann die Anwendung installiert werden:

flatpak install telegram

Um sie wieder zu deinstallieren:

flatpak uninstall <name>

Updates werden mit dem Befehl

flatpak update <name>

oder alles nur mit:

flatpak update

Eine Liste aller Apps erhält man mit:

flatpak list

Problembehandlung

Falls bei der Installation einer Anwendung mit Flatpak Fehler auftreten, kann man einen Reparaturversuch starten:

flatpak repair

Cache löschen

Sollte es weiter Probleme geben, kann der Cache gelöscht werden:

sudo rm /var/lib/flatpak/repo/tmp/cache/summaries/*
flatpak repair
flatpak update

Verzeichnisse fehlen

Bei der Installation von Flatpak scheinen notwendige Verzeichnisse und Dateien zu fehlen:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
  error: While opening repository /var/lib/flatpak/repo: opendir(objects): No such file or directory

bzw. auf deutsch:

Fehler: Während des Öffnens der Quelle /var/lib/flatpak/repo: opendir(objects): Datei oder Verzeichnis nicht gefunden

Das Löschen des Verzeichnis /var/lib/flatpak/repo/ vor dem Versuch, ein Repo hinzuzufügen, behebt das Problem. Beim Hinzufügen des Repos werden danach die erforderlichen Ordner und Dateien erstellt:

rm -rf /var/lib/flatpak/repo/

Dem GPG-Schlüssel wird nicht vertraut

Beim Hinzufügen des Flatpak-Repos wird als Fehler aufgrund der Signatur angezeigt:

flatpak --system remote-add flathub https://flathub.org/repo/flathub.flatpakrepo
 Fehler: Signature made Do 01 Jan 1970 01:00:00 CET using [unknown name] key ID 562702E9E3ED7EE8
 BAD signature from "Flathub Repo Signing Key <flathub@flathub.org>"

Das Setzen von gpg-verify-summary=false in /var/lib/flatpak/repo/config für das Flathub-Repo funktioniert als vorübergehende Abhilfe. Danach folgt ein Update:

sudo flatpak update --appstream

Weitere Möglichkeiten

Über die Softwareverwaltung Discover oder Software kann man auch Anwendungen von Flatpak verwalten und sie installieren oder updaten.

Kritik

In der Regel löst openSUSE Paketabhängigkeiten über den Paketmanager zypper automatisch auf. Die Softwareinstallation wird dadurch vereinfacht, bringt aber auch Nachteile mit sich: Solche automatischen Systeme sind häufig nicht sehr flexibel, wenn man genau die Version eines Programms benötigt, die nicht in den Paketquellen enthalten ist, oder die Anwendung ganz in den Paketquellen fehlt, kann die Installation schwierig werden.

Ein aktueller Ansatz dieses Problem zu lösen, sind Applikations-Container wir Flatpak, oder eben auch Snap oder AppImage. Die Container selbst sind gebündelte Applikationen, die alle zum Betrieb benötigten Abhängigkeiten wie Bibliotheken (Libraries) enthalten. Man kann damit auch mehrere Versionen des gleichen Programms nebeneinander installieren. Das Widerspricht allerdings einem wichtigen Grundsatz von Linux, da jeder Container seine eigenen Bibliotheken mitbringt, können sie mehrfach auf dem System vorhanden sein. Dadurch wird zusätzlicher Speicherplatz benötigt und alle Duplikate müssen aktuell gehalten werden, um die Sicherheit des Systems zu gewährleisten.

Solche Container werden häufig auch nicht über die Distribution aktualisiert und die Sicherheit der Anwendung ausschliesslich durch die Entwicklerin des Containers und die Aktualisierung der Containerverwaltung, also z.B. über flatpak update gewährleistet.


Externe Links