Appimage

Aus Linux Bibel
Wechseln zu: Navigation, Suche

Informationen

Wenn man sich die großen und kleinen Linux-Distributionen so ansieht heben sich drei Paket-Formate heraus, also unter Debian, Ubuntu und darauf basierende Distributionen nutzen Software-Pakete im DEB-Format, open SuSE, Mandriva, Fedora und darauf basierende Systeme das RPM-Format und Slackware, Gentoo und wiederum darauf basierende Systeme das Tar.gz-Format. Die meisten großen Distributionen haben ihre eigenen Repositorys für auf das System abgestimmte Software, Ubuntu bietet aktuellere Software als etwa das stabile Debian, open SuSE wiederum bietet Software die weder Debian noch Ubuntu haben und umgekehrt.

Nun entstanden in letzter Zeit zwei neue Paket-Formate, das Eine nennt sich Snappy und wurde von Ubuntu entwickelt, wurde vor allem dazu entwickelt Software-Pakete für Ubuntu (und darauf basierende Distributionen wie Kubuntu, Linux Mint, ...) einfacher zu erstellen - solche sollten nun auch unter Debian nutzbar sein - jedoch gibt es bisher keine Hinweise das solche Software-Pakete auch unter anderen Distributionen eingesetzt werden (wollen). Das andere Paket-Format nennt sich Flatpack und ist tatsächlich ein Format das unter allen Distributionen lauffähig sein wird.

Welchen Vorteil haben diese Paket-Formate?

Ein Debian-Paket kann man nicht (oder nur nach Konvertierung) unter Fedora installieren, umgekehrt genauso wenig, es liegt meist daran das Software verschiedene Abhängigkeiten benötigen die installiert sein müssen damit die jeweilige Software auch funktioniert, dazu muss meist auch noch die Version genaue der Abhängigkeiten vorhanden sein - oft eine schier unlösliche Aufgabe. Die neuen Paket-Formate haben nun nicht nur die gewünschte Software integriert sondern auch die benötigten Abhängigkeiten - dies macht die Installations-Pakete und die genutzte Software natürlich etwas größer - bedeutet also die Software belegt mit den Abhängigkeiten auch mehr Platz auf der Festplatte, aber sie funktioniert. Ein weiterer Vorteil - die genutzte Software ist vom restlichen System wie in einer Sandbox abgeschottet.

== Ganz anders als die beiden bisher genannten neuen Paket-Formate ist das Format "Appimage", wie die zuvor genannten beinhaltet ein Appimage-Paket alle nötigen Dateien die die Software zum funktionieren benötigt - jedoch ist dieses Paket-Format viel einfacher zu nutzen, es werden so gut wie keine Befehle und keine Administrator-Berechtigungen benötigt - und ja, dieses Paket-Format wird selbst von Linus Torwalds bevorzugt. Wer mehr darüber wissen möchte was dahinter steckt findet unter Appimage die nötigen Informationen. Das Paket-Format ist zwar schon einige Tage älter als das der anderen, es gibt jedoch derzeit noch weniger Software davon, ist aber wie schon beschrieben viel einfacher zu nutzen.

== Ganz anders als die beiden bisher genannten neuen Paket-Formate ist das Format "Appimage", wie die zuvor genannten beinhaltet ein Appimage-Paket alle nötigen Dateien die die Software zum funktionieren benötigt - jedoch ist dieses Paket-Format viel einfacher zu nutzen, es werden so gut wie keine Befehle und keine Administrator-Berechtigungen benötigt - und ja, dieses Paket-Format wird selbst von Linus Torwalds bevorzugt. Wer mehr darüber wissen möchte was dahinter steckt findet unter Appimage die nötigen Informationen. Das Paket-Format ist zwar schon einige Tage älter als das der anderen, es gibt jedoch derzeit noch weniger Software davon, ist aber wie schon beschrieben viel einfacher zu nutzen.

Appimage

Ganz anders als die beiden bisher genannten neuen Paket-Formate ist das Format "Appimage", wie die zuvor genannten beinhaltet ein Appimage-Paket alle nötigen Dateien die die Software zum funktionieren benötigt - jedoch ist dieses Paket-Format viel einfacher zu nutzen, es werden so gut wie keine Befehle und keine Administrator-Berechtigungen (Administrator - root) benötigt - und ja, dieses Paket-Format wird selbst von Linus Torwalds bevorzugt. Wer mehr darüber wissen möchte was dahinter steckt findet unter Appimage die nötigen Informationen. Das Paket-Format ist zwar schon einige Tage älter als das der anderen, es gibt jedoch derzeit noch weniger Software davon, ist aber wie schon beschrieben viel einfacher zu nutzen.

In einem praktischen Beispiel werde ich zeigen wie man damit arbeitet. In diesem Beispiel geht es um die professionelle Grafik-Software Krita die selbst Photoshop in so einigen Kunst-Universitäten abgelöst hat, die Software wird es wahrscheinlich nicht in die Repositorys von Debian Stretch schaffen aus Gründen der Stabilität. So suche ich ganz einfach auf der Webseite von Krita Krita-Download das Appimage-Paket herunter und speichere dieses in einem beliebigen Verzeichnis - das Datei-Icon sieht in den meisten Desktop-Umgebungen etwas anders aus - hier etwa unter KDE:

AppImage - das einfachste universelle Paket-Format unter Linux

Die Datei-Endung nennt sich wie man sieht ganz einfach ".appimage", alles was nun wirklich nötig ist, ist die Datei ausführbar zu machen. Dies gelingt sehr einfach über das Terminal / Konsole / Kommandozeile indem man darauf ganz einfach in das Verzeichnis wechselt in dem die Datei liegt und diese dann mit dem nötigen Befehl als ausführbar kennzeichnet, im Beispiel nennt sich die Datei "krita-3.0.1.1-x86_64.appimage", der nötige Befehl dazu lautet nun ganz einfach:

chmod +x krita-3.0.1.1-x86_64.appimage

Für Nutzer die mit dem Terminal nichts zu tun haben wollen klicken die Datei im jeweiligen Dateimanager ganz einfach rechts an und wählen im Kontextmenü den Eintrag "Eigenschaften / Berechtigungen" wie etwa hier unter KDE:

AppImage - das einfachste universelle Paket-Format unter Linux

Aktivieren Sie nun die Option "Ausführbar" und schon hat sich die Geschichte erledigt. Um die Software zu starten klicken Sie die Datei einfach an (je nach Desktop-Umgebung einfach oder doppelt) oder Sie nutzen das Terminal durch den Befehl:

./dateiname.appimage

In meinem Beispiel also:

./krita-3.0.1.1-x86_64.appimage

Schon startet die Software - in diesem Fall also Krita hier unter Debian Stretch:

AppImage - das einfachste universelle Paket-Format unter Linux

Zum einfachen Start trägt man die Software am einfachsten in das Anwendungsmenü ein, meist ganz einfach per Rechtsklick auf das Menü - hier etwa unter KDE

AppImage - das einfachste universelle Paket-Format unter Linux

Appimage mit Firejail absichern

Gerade bei Software bei der man sich nicht sicher ist ob diese auch wirklich nicht nur gutes im Schilde führt - wie bei vieler Software unter Microsoft Windows der Fall ist (Malware, Spionage, Crypto-Software, ...) sollte man etwas sicher gehen und diese in eine Sandbox sperren - die Software kann also etwa nicht auf das System / Dateien zugreifen.

Eine solche Software die solche Sandboxen erstellt nennt sich nun "Firejail", sie lässt sich unter auf Debian basierenden Systemen wie natürlich auch Ubuntu, Kubuntu, Linux Mint und so weiter ganz einfach über die Paket-Verwaltung APT - Software installieren, löschen, aktualisieren durch das Paket "firejail" installieren. Im Beispiel mit unserem Krita zuvor würde der Befehl zum Starten der Software ganz einfach so lauten:

firejail ./krita-3.0.1.1-x86_64.appimage

Damit lassen sich natürlich auch ganz normal installierte Anwendungen starten, etwa Firefox:

firejail firefox

Die Software hat eine Unmenge an Optionen die regeln was Software darf und was nicht, Sie können loggen welche Zugriffe auf das System und Dateien die Software haben möchte und vieles mehr - dazu mehr in der Manpage Hilfe unter Linux der Software durch den Befehl:

man firejail

Woher bekommt man AppImage-Software

Meist finden sich solche AppImages gleich auf den Webseiten der jeweiligen Entwickler, aber natürlich gibt es auch Homepages die so einiges an solcher Software auf ihrer Seite versammeln, hier eine kleine Liste:

Github Sammlung

Bintray Sammlung

Sammlung

Kdenlive, neueste Version der KDE-Videobearbeitung

Krita, neueste Version der KDE-Bildbearbeitung

Linux-Apps Sammlung

Musecore, aktuellste Version