Ubuntu-Flavours verzichten auf Flatpaks

  Ralf Hersel   Lesezeit: 6 Minuten  🗪 7 Kommentare

Es sollen nur noch das DEB- und SNAP-Format unterstützt werden. Canonical geht wieder einen Sonderweg und spaltet damit die Community.

ubuntu-flavours verzichten auf flatpaks

Wie Canonical auf dem Ubuntu-Discourse-Kanal vorgestern mitteilte, hat man sich zusammen mit den Ubuntu-Flavors entschieden, zukünftig das Paketformat Flatpak nicht mehr standardmässig zu unterstützen. Die Begründung für diesen Schritt ist lang und nachvollziehbar. Ich möchte diese herausdestillieren und anschliessend meine Meinung zu dieser Entscheidung mitteilen.

Da die Begründung lang und salbungsvoll ist, gebe ich hier die Essenz wieder:

Die Ubuntu-Flavours werden als Ökosystem von Linux-Variationen bezeichnet, die Auswahl und Vielfalt fördern. Sie bauen auf einem gemeinsamen Kern auf, bei dem sofort klar ist, dass man Ubuntu verwendet, und bieten darüber hinaus ihre eigenen Feinheiten.

Ein solcher grundlegender Aspekt einer jeden Linux-Distribution ist die Paketierung. Die grossen Distributionen haben alle ihre eigenen Entscheidungen getroffen, um Konsistenz in ihrem Ökosystem zu gewährleisten. Ubuntu baut auf einer Grundlage von Deb-Paketen auf und glaubt an die Vorteile von Snaps. Das Ziel ist es, eine sichere und einfache Benutzererfahrung zu bieten und die Wartung von Paketen zu vereinfachen.

In einer idealen Welt gibt es für die Benutzer nur eine einzige Möglichkeit, Software zu installieren. Dabei kann man erwarten, dass dieser Mechanismus von der Gemeinschaft unterstützt wird und die meiste Aufmerksamkeit erhält, wenn es um die Lösung von Problemen in Softwarepaketen geht. Wenn eine neue Paketierungstechnologie standardmässig bereitgestellt wird, wird erwartet, dass die Distribution die Community unterstützt und sich an der Entwicklung beteiligt, um Probleme zu lösen. Dies führt zu einer Fragmentierung, anstatt sich auf die Verbesserung der für die Distribution ausgewählten Technologien zu konzentrieren.

Ubuntu und seine Varianten betrachten Debs und Snaps als ihren Standard. Die Benutzer haben die freie Wahl, ihre Software aus anderen Quellen zu beziehen, einschliesslich Flatpak. Eine Möglichkeit, diese Alternativen zu installieren, ist und wird auch weiterhin zur Verfügung stehen.

Das Flatpak-Format sowie die Pakete zur Integration von Flatpak in das jeweilige Software-Center werden in der nächsten, im April 2023 erscheinenden Version, Lunar Lobster, nicht mehr standardmässig installiert. Nutzer, die bisher Flatpak verwendet haben, sind vom Upgrade nicht betroffen. Diejenigen, die noch nicht mit Flatpak gearbeitet haben, werden Software aus den Ubuntu-Repositories und dem Snap Store 11 erhalten.

Meine Meinung

Ich halte die vorgebrachten Argumente für gut und richtig. In den alten Zeiten haben wir GNU/Linux-Distributionen dafür gelobt, dass sie die Repository-basierte Softwarebereitstellung hatten, lange bevor andere Betriebssystem-Hersteller auf diese Idee kamen. Zwar gab und gibt es die nativen Paketformate, die zu einem Distributions-Stamm gehören (deb, rpm, usw.); man hatte jedoch nur eine Paketquelle für die Distro seiner Wahl zur Verfügung. Das war die ideale Welt, die Canonical weiter oben beschreibt.

Mit dem Aufkommen der Container-Formate (Flatpak, Snap, AppImage) sollte primär eine Herausforderung für Entwickler:innen gelöst werden, nämlich die Plattform-übergreifende Erzeugung von Paketen. Dieses Ziel hätte erreicht werden können, wenn man sich auf ein Format geeinigt und die nativen Formate damit abgelöst hätte.

Bisher wurde eher das Gegenteil erreicht. Es gibt immer noch die "alten" Formate und drei der neuen. Somit werden immer noch DEBs, RPMs, Arch-Pakete, sowie Flatpaks, AppImages und Snaps gebaut. Der Turmbau von Babel schreitet voran. Hoffentlich befinden wir uns in einer Konsolidierungsphase, an deren Ende ein Paketformat herauskommen wird. Ich schätze die Situation so ein, dass Flatpak sich als Standardformat durchsetzen wird.

Aus der Sicht von Anwenderinnen und Anwendern hat sich auch nichts verbessert. Während man bisher einen Paketmanager hatte, der die gesamte Softwarepalette in einem Format anbot (z.B.: Apt für DEB-Pakete), findet der User heute eine Vielzahl von Formaten im Paketmanager der Distribution. Hier ein Beispiel aus Pamac, dem grafischen Paketmanager von Manjaro:

Dort seht ihr Inkscape als Arch-Paket, Flatpak und aus dem AUR (Arch User Repository). Hätte ich Snap eingeschaltet, würdet ihr auch dieses sehen. Für die Endanwenderin ist diese Situation nicht optimal. Welches Paket soll man installieren? Die meisten Anwender sind mit dieser Entscheidung überfordert. Für Fortgeschrittene muss das kein Nachteil sein, weil nicht alle Pakete gleich gut funktionieren. Ich führe eine Liste von Anwendungen, in der ich notiere, welches Paketformat am besten läuft (ja, Paket ist nicht gleich Paket).

Auch dieses Beispiel zeigt, dass die Entscheidung von Canonical und den Ubuntu-Flavours richtig ist. Die Anwenderin möchte für eine Applikation gerne ein Paket angeboten bekommen, statt vier verschiedene. Ein gut gepflegtes Software-Repository, welches von der Distribution optimal unterstützt wird, ist besser als vier schlecht gepflegte.

Somit haben die Ubuntus alles richtig gemacht, bis auf einen entscheidenden Fehler. Sie hätten das Snap-Format in die Wüste schicken und stattdessen Flatpak zum Standard erklären sollen. Warum? Weil sich die Mehrheit der Entwickler-Community bereits für das Flatpak-Format entschieden hat und die Mehrheit der Distributionen dieses Format bevorzugen. Ausserdem möchte niemand ein proprietäres Backend haben. Die Entscheidung von Canonical führt zum Gegenteil des Wünschenswerten. Statt das Paket-Babel einzufrieden, wird nun die Paket-Spaltung zementiert.

Auf lange Zeit werden wir ein unnötiges Nebeneinander von Snaps und Flatpak sehen. AppImages spielen keine grosse Rolle und die nativen Formate werden langfristig verschwinden. Meiner Meinung nach hat sich Canonical erneut für die Spaltung der Community entschieden. Hätte Mark Shuttleworth seine Snaps aufgegeben und sich für Flatpaks entschieden, hätte die Freie Software Welt einen grossen Schritt vorwärtsgemacht.

Quelle: https://discourse.ubuntu.com/t/ubuntu-flavor-packaging-defaults/34061?u=d0od

Tags

Ubuntu, Flavour, Flatpak, Snap, Paketformat

Samuel
Geschrieben von Samuel am 23. Februar 2023 um 10:32

Canonical kann die Snaps nicht in die Wüste schicken.

Fakt ist das Canonical mit Ubuntu Server und Ubuntu IoT Geld verdient. Ubuntu Desktop (und seine Flavors) sind reine Nischenprodukte.

Snaps sind den Flatpaks wenn es um Server-Anwendungen geht haushoch überlegen.

Snaps können als root laufen, Snaps können eigene Systemd Services mitbringen, Snaps benötigen keine laufende GUI-Session um zu starten.

Flatpaks sind okay - für den Desktop - aber sonst unbrauchbar. Und genau deswegen kann Canonical nicht von Snaps weg.

Snaps können eine Alternative zu Flatpak sein aber das funktioniert nicht umgekehrt.

Horst
Geschrieben von Horst am 23. Februar 2023 um 10:39

..., bis auf einen entscheidenden Fehler...

Kann man so sagen, LOL.

noisefloor
Geschrieben von noisefloor am 23. Februar 2023 um 15:50

Euer Text ist doch irreführend. Canonical und die Ubuntu Flavors haben sich dazu entschieden, standardmäßig auf DEB und snap zu setzen, soweit richtig. Flatpak wird (bei manchen Flavors) nicht mehr mit installiert, ABER ist in den Repos nach wie vor verfügbar, installierbar und nutzbar.

Zitat aus der Meldung: "Users have the freedom of choice to get their software from other sources, including Flatpak. A way to install these alternatives is, and will continue to be, available for installation from the Ubuntu archive with a simple command.". Womit sich die Situation z.B. für Ubuntu (also das "Hauptflavour") gar nicht geändert hat.

Da wurde gar nichts in die Wüste geschickt und auch keine Unterstützung gekappt. Es wurde lediglich innerhalb der *buntus vereinheitlicht, was OOTB installiert wird. Was unterm Strich nicht anders ist als bei Distro, die nur deren Paketverwaltung und Flatpak vorinstallieren und snapd ggf. nur optional über die Paketquellen anbieten.

Außerdem ist das Backend von snap nicht proprietär sondern quelloffen. snapd gibt's bei Github: https://github.com/snapcore/snapd

Fabian Schaar
Geschrieben von Fabian Schaar am 23. Februar 2023 um 16:33

Danke für deinen Kommentar. Ralf hat in seinem Artikel, so wie ich ihn verstanden habe, davon geschrieben, dass Canonical snap hätte (!) in die Wüste schicken sollen, nicht, dass Flatpak jetzt dorthin geschickt wurde. Snapd ist nur der verwaltende Daemon hinter Snap, aber nicht das Backend. Dieses, sprich: der Snap-Store bzw. das snapcraft.io-Repo sind proprietär und nur durch Canonical kontrolliert. Im Gegensatz zu Flatpak oder den herkömmlichen Paketformaten ist es bei Snap also nicht möglich, eigene/dritte Repositorien aufzusetzen.

Ralf Hersel
Geschrieben von Ralf Hersel am 23. Februar 2023 um 18:23

Danke noisefloor. Steht doch genau so im Text: "Die Benutzer haben die freie Wahl, ihre Software aus anderen Quellen zu beziehen, einschliesslich Flatpak. Eine Möglichkeit, diese Alternativen zu installieren, ist und wird auch weiterhin zur Verfügung stehen."

fedora
Geschrieben von fedora am 23. Februar 2023 um 18:39

Canonical hat bei Snap gut nachgebessert und aktuell läuft es unter Ubuntu22.4 LTS recht gut. Problematisch ist nur der Ubuntu Store der durch anheben der Versionen von 20.4 auf 22.4 parallel installierte und für einen Einsteiger Fragezeichen am Horizont hinterließ da Gnome Software und Ubuntu Software aka Snapstore in den Programmen auftauchte und im Ubuntu Store KEINE Flatpacks verwaltet werden können. Der Gnome Software Store ist von den Icons immer Fehlerhaft und wenig Intuitiv. Ich verwende unter Fedora Flats und unter Ubuntu meist Snaps und sonst ist es relativ egal denn funktionieren tun beide. Die Speicherproblematik ist aktuell vorhanden aber nicht von Relevanz. Der ewige negative Tenor zum Thema Proprietär ist müßig zumal vermutlich 90% der Anwender parallel Windows, OSX, Android oder iOS verwenden.

Torsten
Geschrieben von Torsten am 25. Februar 2023 um 14:35

Ich sehe die Sache so: Wäre Snap optional, sehe ich darin kein Problem. Aber Snap wird einem schon fast aufgezwungen und NOCH kann man es von Ubuntu entfernen, aber bald nicht mehr (ist schon ab 22.10 nicht mehr möglich). Andere Distros überlassen dem Nutzer ja auch die Wahl, ob sie Flatpak oder Snap nutzen wollen oder nicht und da wird einem nichts aufgezwungen. DAS ist dass eigentliche Problem mit Snaps. Und so ganz ausgereift u. stabil scheint mir Snap immer noch nicht zu sein, obwohl es mittlerweile schon besser geworden ist.