Zum Inhalt springen

Flatpak: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Tuxnix (Diskussion | Beiträge)
http://flatkill.org
K syntaktische und stilistische überarbeitung
 
(3 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{righttoc}}
Flatpak ist eine distributionsübergreifende Möglichkeit, Programme inklusive ihrer Abhängigkeiten in Form containerartiger Softwarepakete zu installieren.


Flatpak stellt eine distributionsübergreifende Möglichkeit dar, Programme zu installieren.
{{installation|flatpak}}
Traditionell werden die einzelne Pakete von Maintainern der jeweiligen Distribution gewartet, angepasst und kompiliert über die Repositorien dem Benutzer zur Verfügung gestellt.
Die Paketabhängigkeiten werden von einer Paketverwaltung gemanagt, sodass jede Ressource im System nur einmal vorgehalten und gepflegt werden muss.


Flatpak liefert die Programme komplett inklusive der abhängigen Pakete in einem Bundle aus.
Die Verwaltung der Softwarepakete findet dann mittels diverser Parameter des Befehls {{ic|flatpak}} statt.
Vorteile ergeben sich hierbei (für nicht rollende Distributionen) in der Aktualität der Software und einer distributionsübergreifenden Standardisierung.
Dies erleichtert proprietären  Anbietern den Programm Support in einer heterogenen Linuxlandschaft. Zudem erleichtert es bei größeren Installationen den Admins das Ausrollen der Anwendungssoftware unabhängig vom Stand der jeweils verwendeten Distribution.


Die Nachteile ergeben sich durch die Umgehung der Maintainer als wichtige Kontrollinstanz, sowie der Gefahr, dass so mehrere Paketversionen in teilweise ungewarteten Versionen auf dem Rechner verbleiben können.
== Paketverwaltung mit Flatpak ==
Dieser Gefahr soll die durch Kapselung in einer Sandbox und der Begrenzung des Zugriffs auf Systemressourcen begegnet werden. Weiterhin ergibt sich hier die Gefahr,  dass flatpaks in Zukunft mit Addware und Spyware angereichert werden, da hier nur noch der jeweilige Anbieter Kontrolle über das binäre Gesamtpaket hat. Massive Kritik an Flatpak wird auf [http://flatkill.org/ flatkill.org] vorgetragen.
Flatpak bezieht installierbare Software aus Quellen die man vor Verwendung dem System mitteilen muss. In welcher Quellen sich ein Softwarepaket befindet, erfährt man beim Anbieter des Softwarepakets. Mittels des folgenden Befehls wird die Quelle unter der angegebenen ID hinzugefügt.


Mein persönliches Fazit:
flatpak remote-add --if-not-exists meinrepo <nowiki>https://example.com/flatpak</nowiki>
Flatpaks stellen eine gute Ergänzung dar. Das bisherige Distributions-Maintainment bleibt jedoch unersetzlich.


Eine weit verbreitete Quelle ist „Flathub“-Repository, dies wird wie folgt hinzugefügt.


Alternativen zu Flatpak sind AppImmage und das von Canonical betriebene [[Snap|Snap]]-Format.
flatpak remote-add --if-not-exists flathub <nowiki>https://flathub.org/repo/flathub.flatpakrepo</nowiki>


Eine Auflistung der installierten Quellen erhält man durch den Befehl
flatpak remote-list


Mittels {{ic|remote-ls}} wird die in einer Quelle (hier {{ic|flathub}}) verfügbare Software aufgelistet.


{{installation
flatpak remote-ls flathub
|repo=extra
|name=Das Paket
|paket=flatpak
}}


Um Softwarepakete unabhängig ihres Namens zu finden, kann man sich folgenden Befehls bedienen. Die Suchfunktion berücksichtigt auch die Beschreibung der jeweiligen Pakete.


Danach ist eine Softwarequelle zu integrieren. Zugang kann man direkt bei dem jeweiligen Softwareanbieter erhalten.
  flatpak search softwarename
  flatpak remote-add <Quelle>


Um ein Softwarepaket zu installieren, gibt man Quelle und Software-ID an. Im Beispiel wird {{paket|freecad|FreeCAD}} als Flatpak installiert. Mittels {{ic|--user}} wird explizit angegeben, die Software im Userkontext zu installieren. Will man die Software für alle User zugänglich machen, kann man hier {{ic|--system}} verwenden.


Oder man integriert das [https://flathub.org/  Flathub Repositorium], das eine zentrale Sammelstelle für flatpaks darstellt.
  flatpak --user install flathub org.freecad.FreeCAD
  <nowiki>
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
</nowiki>


Eine Auflistung der installierten Quellen erhält man durch den Befehl
Um ein installiertes Programm – beispielsweise FreeCAD – zu starten, ruft man wahlweise {{ic|flatpak}} mit entsprechenden Parametern auf, oder gibt die ID direkt an. Flatpak richtet automatisch entsprechende Verlinkungen ein.
  flatpak remote-list
 
flatpak run org.freecad.FreeCAD
org.freecad.FreeCAD
 
Ein Update aller installierten Flatpak-Anwendungen geschieht durch {{ic|flatpak update}}. Da Flatpak teilweise ungenutzte Pakete die als Abhängigkeit installiert werden mussten nicht automatisch entfernt, sollte man nach einem Update einmal folgenden Befehl ausführen, damit eventuell vorhandene ungenutzte Abhängigkeiten entfernt werden.
 
flatpak update
  flatpak uninstall --unused
 
Folgende Befehle können zum Auflisten der installierten Softwarepakete verwendet werden. Die Aufrufe können mittels {{ic|--user}}, {{ic|--system}}, und {{ic|--all}} spezifiziert werden.


flatpak list        # Alle Pakete, inklusive Librarys und Abhängigkeiten
flatpak list --app  # Nur gezielt installierte Anwendungen


Die Software Abfrage einer bestimmten Quelle, hier flathub, geschieht durch den Befehl
Unter [[Gnome]] kann man Flatpak-Anwendungen nach der Installation einer Quelle auch mit der GUI-Anwendung „Software“ verwalten. Als KDE-Pedant eignet sich hierfür „Discover“.
flatpak remote-ls flathub


== Betrachtung des Systems ==
Traditionell werden die einzelne Pakete von Maintainern der jeweiligen Distribution gewartet, angepasst und kompiliert über die Repositorien dem Benutzer zur Verfügung gestellt. Die Paketabhängigkeiten werden von einer Paketverwaltung gemanagt, sodass jede Ressource im System nur einmal vorgehalten und gepflegt werden muss.


Das installieren einer Softwareanwendung geschieht hier mit der Eingabe von
Flatpak liefert die Programme inklusive der abhängigen Pakete in einem Bundle aus, oder hat Abhängigkeiten zu anderer Flatpak-Software. Vorteile ergeben sich hierbei in einer distributionsübergreifenden Standardisierung. Dies erleichtert Anbietern der Programme den Support in einer heterogenen Linuxlandschaft. Zudem erleichtert es bei größeren Installationen den Admins das Ausrollen der Anwendungssoftware.
flatpak --user install flathub org.gnome.<flatpak>


Die Nachteile ergeben sich durch die Umgehung der Maintainer als wichtige Kontrollinstanz, sowie der Gefahr, dass so ungewartete Paketversionen verwendet werden. Dieser Gefahr wird durch die Kapselung in einer Sandbox und der Begrenzung des Zugriffs auf Systemressourcen begegnet.


In der grafischen Benutzerumgebung GNOME kann man flatpaks, nach der Installation eines Repositoriums, auch mit der GUI-Anwendung "Software" verwalten.
Alternativen zu Flatpak sind ''AppImage'' und das von Canonical geschaffene [[Snap|Snap]]-System.
Als KDE-Pedant eignet sich hierfür "Discover".


==Weblinks==
==Weblinks==
*[https://en.wikipedia.org/wiki/Flatpak Wikipedia]{{sprache|en}}
* [http://flatpak.org/ Offizielle Website] {{sprache|en}}
*[http://flatpak.org/ flatpak.org]{{sprache|en}}
* [https://flathub.org/de Flathub-Website] {{sprache|de}}
*[https://flathub.org/ Flathub Repositorium]{{sprache|en}}
 


[[en:Flatpak]]
[[en:Flatpak]]
[[ja:Flatpak]]
[[ja:Flatpak]]
 
[[Kategorie:Paketverwaltung]]
[[Kategorie:Systemverwaltung]]

Aktuelle Version vom 19. Oktober 2025, 21:21 Uhr

Flatpak ist eine distributionsübergreifende Möglichkeit, Programme inklusive ihrer Abhängigkeiten in Form containerartiger Softwarepakete zu installieren.

Installation

Das Programm ist als flatpak in extra verfügbar, und kann von dort mittels Pacman installiert werden.

pacman -S flatpak

Die Verwaltung der Softwarepakete findet dann mittels diverser Parameter des Befehls flatpak statt.

Paketverwaltung mit Flatpak

Flatpak bezieht installierbare Software aus Quellen die man vor Verwendung dem System mitteilen muss. In welcher Quellen sich ein Softwarepaket befindet, erfährt man beim Anbieter des Softwarepakets. Mittels des folgenden Befehls wird die Quelle unter der angegebenen ID hinzugefügt.

flatpak remote-add --if-not-exists meinrepo https://example.com/flatpak

Eine weit verbreitete Quelle ist „Flathub“-Repository, dies wird wie folgt hinzugefügt.

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

Eine Auflistung der installierten Quellen erhält man durch den Befehl

flatpak remote-list

Mittels remote-ls wird die in einer Quelle (hier flathub) verfügbare Software aufgelistet.

flatpak remote-ls flathub

Um Softwarepakete unabhängig ihres Namens zu finden, kann man sich folgenden Befehls bedienen. Die Suchfunktion berücksichtigt auch die Beschreibung der jeweiligen Pakete.

flatpak search softwarename

Um ein Softwarepaket zu installieren, gibt man Quelle und Software-ID an. Im Beispiel wird FreeCAD als Flatpak installiert. Mittels --user wird explizit angegeben, die Software im Userkontext zu installieren. Will man die Software für alle User zugänglich machen, kann man hier --system verwenden.

flatpak --user install flathub org.freecad.FreeCAD

Um ein installiertes Programm – beispielsweise FreeCAD – zu starten, ruft man wahlweise flatpak mit entsprechenden Parametern auf, oder gibt die ID direkt an. Flatpak richtet automatisch entsprechende Verlinkungen ein.

flatpak run org.freecad.FreeCAD
org.freecad.FreeCAD

Ein Update aller installierten Flatpak-Anwendungen geschieht durch flatpak update. Da Flatpak teilweise ungenutzte Pakete die als Abhängigkeit installiert werden mussten nicht automatisch entfernt, sollte man nach einem Update einmal folgenden Befehl ausführen, damit eventuell vorhandene ungenutzte Abhängigkeiten entfernt werden.

flatpak update
flatpak uninstall --unused

Folgende Befehle können zum Auflisten der installierten Softwarepakete verwendet werden. Die Aufrufe können mittels --user, --system, und --all spezifiziert werden.

flatpak list        # Alle Pakete, inklusive Librarys und Abhängigkeiten
flatpak list --app  # Nur gezielt installierte Anwendungen

Unter Gnome kann man Flatpak-Anwendungen nach der Installation einer Quelle auch mit der GUI-Anwendung „Software“ verwalten. Als KDE-Pedant eignet sich hierfür „Discover“.

Betrachtung des Systems

Traditionell werden die einzelne Pakete von Maintainern der jeweiligen Distribution gewartet, angepasst und kompiliert über die Repositorien dem Benutzer zur Verfügung gestellt. Die Paketabhängigkeiten werden von einer Paketverwaltung gemanagt, sodass jede Ressource im System nur einmal vorgehalten und gepflegt werden muss.

Flatpak liefert die Programme inklusive der abhängigen Pakete in einem Bundle aus, oder hat Abhängigkeiten zu anderer Flatpak-Software. Vorteile ergeben sich hierbei in einer distributionsübergreifenden Standardisierung. Dies erleichtert Anbietern der Programme den Support in einer heterogenen Linuxlandschaft. Zudem erleichtert es bei größeren Installationen den Admins das Ausrollen der Anwendungssoftware.

Die Nachteile ergeben sich durch die Umgehung der Maintainer als wichtige Kontrollinstanz, sowie der Gefahr, dass so ungewartete Paketversionen verwendet werden. Dieser Gefahr wird durch die Kapselung in einer Sandbox und der Begrenzung des Zugriffs auf Systemressourcen begegnet.

Alternativen zu Flatpak sind AppImage und das von Canonical geschaffene Snap-System.