AppImage: Einfaches Deployment von Apps für Linux
AppImage ist ein portables Paketformat für Linux, das es ermöglicht, Anwendungen ohne Installation direkt auszuführen. Es bringt alle benötigten Abhängigkeiten mit und funktioniert unabhängig von der verwendeten Linux-Distribution.
AppDirs und ihre Struktur
AppImage basiert auf dem Konzept der AppDirs, einer speziellen Verzeichnisstruktur für Anwendungen. Dieses Format stammt ursprünglich aus ROX Filer. Eine AppDir enthält mindestens folgende Elemente:
AppRun
Eine ausführbare Datei oder ein Skript als Einstiegspunkt der Anwendung. Wird genutzt, um Pfade relativ zur AppDir zu berechnen.myapp.desktop
Eine .desktop-Datei mit Metadaten zur Anwendung. Beschreibt die App und sorgt für die Integration ins System. Es darf nur eine .desktop-Datei in der AppDir enthalten sein.myapp.<icon-ext> (myapp.png, myapp.svg)
Das Icon der Anwendung in bestmöglicher Qualität (idealerweise als Vektorgrafik). Wird oft als .DirIcon-Symlink verwendet.Der Dateiname sollte dem Icon-Eintrag in der .desktop-Datei entsprechen (ohne Dateiendung).
Diese Komponenten sind erforderlich, damit eine AppDir als konformes AppImage erkannt wird. Weitere Conventionen sind optional. Mehr zur Struktur hier hier
Um aus einer AppDir eine AppImage-Datei zu erzeugen, wird häufig das appimagetool verwendet, ein offizielles Tool zur Erstellung von AppImages aus vorbereiteten AppDirs.
Beispiel
ARCH=i686 appimagetool.AppImage $APPIMAGE_DIR
Dieser Befehl erzeugt eine 32-Bit AppImage-Datei aus einem AppDir, dessen Pfad in der Variable $APPIMAGE_DIR
gespeichert ist.
AppImage ist ein praktisches Format für portable Software, insbesondere für Entwickler und Nutzer, die eine einfache, installationsfreie Lösung suchen. AppImage ist jedoch weniger in Linux-Ökosysteme integriert als klassische Paketformate wie .deb
oder .rpm
.