AppImages sind nicht Flatpak oder Snap

Warum AppImages für den eigenen Linux-Desktop ungeeignet sind

In letzter Zeit ließt man im Zusammenhang mit den neuen, distributionsübergreifenden Paketverwaltungssystemen Flatpak und Snap immer wieder auch von AppImage. Dabei handelt es sich auch um eine Möglichkeit, Software distributionsübergreifend auf einem Linux-PC auszuführen. Als Paketverwaltung würde ich das dennoch nicht bezeichnen, denn AppImages sind lediglich ausführbare Dateien bestehend aus einem komprimierten Dateisystemabbild. Konkret muss man sich also eine AppImage Datei von entsprechender Software herunterladen und ausführen.

Ein Grund, warum (die meisten) Linux-Distros als Desktop OS besser sind als Windows

Ein Grund, warum ich Linux-Distributionen als Desktop OS besser finde als Windows, ist die zentrale Paketverwaltung. Vereinfacht kann man sagen, man verwaltet Software normalerweise mit einer Art "App Store". Je nach Belieben macht man das über das Terminal oder mittels einer grafischen Benutzeroberfläche wie KDE Discover, Gnome Software oder Pamac. Zum einen ist das effizient, man kann sein ganzes System auf einen Schub aktualisieren und neue Software ist mit einem oder zwei Befehlen bzw. zwei, drei Klicks installiert. Zum anderen kann man als Nutzer:in wenig falsch machen, wenn das System einmal eingerichtet ist: man weiß (hoffentlich!) aus welcher Bezugsquelle Software kommt und nach welchen Kriterien diese vor Veröffentlichung geprüft wird. Man bekommt mit an Sicherheit grenzender Wahrscheinlichkeit die Software, die man erwartet.

AppImages auf dem eigenen Linux-PC sind eine Windows-Krankeheit

AppImages machen aber genau die eben gennanten Vorteile wieder zunichte. Man muss wieder ins WWW gehen, die Website des Entwicklers besuchen und womöglich noch in den Downloadbereich navigieren, das AppImage herunterladen, einen Speicherort aussuchen und die Datei noch ausführbar machen. Je nach Software muss man sogar den Startmenüeintrag manuell anlegen. Komfortable Aktualisierung aller AppImage Programme ist auch Fehlanzeige. Zwar gibt es bei manchen Programmen einen integrierten Updatemechanismsus, aber erstens ist der nicht Softwareübergreifend, und zweitens haben den nicht alle Programme implementiert und drittens ist er programmspezifisch, wird also pro Programm und nicht für alle Programme auf einmal ausgeführt. Effizienz sieht anders aus. Zu guter Letzt öffnen AppImages wieder reichlich Spielraum für Phishing-Websites und E-Mails. Man lädt Software jedes Mal mit dem Zweifel, ob man sich nicht doch verklickt hat, oder ob das nun wirklich die Website des:r Entwickler:in ist und der Sorge, dass die unbedachten Bekannten wieder suspekte Anhänge in ihrem Postfach öffnen. Das ist keine gute Softwareverwaltung für einen Desktop-PC, das ist eine Windows-Krankheit.

Die Stärke von AppImages liegt in der Portabilität

Der Zweck von AppImages ist also nicht, das Paketsystem für das Desktop OS auf dem heimischen PC zu sein, sondern das einzige mir bekannte Paketsystem zu sein, dass portabel und ohne Installation ausführbar ist. AppImages können problemlos auf einen USB-Stick oder einen anderen externen Datenträger gespeichert, mitgenommen und von einem beliebigen anderen Linux-PC gestartet werden, sofern man auf diesem berechtigt ist, Binarys auszuführen. Neuere AppImages haben sogar einen portable mode mit dem die Programmdaten zusammen mit dem AppImage gespeichert werden können. Dazu muss im Verzeichnis, in dem das AppImage liegt, lediglich ein Verzeichnis nach dem Schema AppImageName.AppImage.config und AppImageName.AppImage.home erstellt werden, um dort die Konfigurationsdateien und die restlichen Daten zu speichern, die normalerweise im Homeverzeichnis eines Benutzers gespeichert werden. Damit kann man AppImages (theoretisch) unabhängig von dem PC verwenden, an dem man gerade arbeitet, was eine super Sache ist, wenn man nicht immer eine komplette Live-Linux-Distro dabei haben möchte.

AppImages sollten zusätzlich, aber nicht ausschließlich angeboten werden

Aus den genannten Gründen finde ich, dass Software von Entwickler:innen nicht ausschließlich als AppImage angeboten werden sollte, sondern, dass das AppImage lediglich zusätzlich vorhanden sein sollte, für die, die ein Programm portabel verwenden wollen. Der Hauptdistributionsweg sollte immer eine richtige Paketverwaltung sein.