AppImage: Unterschied zwischen den Versionen
K Textersetzung - „Man-Pages“ durch „Man-Page“ |
|||
(36 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
''' | '''AppImage''' stellt distributionsübergreifend Softwarepakete zur Verfügung | ||
= Beschreibung = | = Beschreibung = | ||
* System zur einfachen Nutzung von [https://de.wikipedia.org/wiki/Software Software] auf [https://de.wikipedia.org/wiki/Linux Linux]-Rechnern. | |||
* Alternative zu zentral verwalteten [https://de.wikipedia.org/wiki/Paketmanager Paketmanagersystemen] der [https://de.wikipedia.org/wiki/Linux-Distribution Linux-Distributionen] | |||
== Eigenschaften == | |||
* AppImages kommen ohne [https://de.wikipedia.org/wiki/Installation_(Computer) Installation] auf dem System aus | |||
** sie können sogar direkt von CD-ROM oder vom [https://de.wikipedia.org/wiki/USB-Stick USB-Stick] [https://de.wikipedia.org/wiki/Portable_Software portabel] benutzt werden. | |||
* Da AppImages alle verwendeten [https://de.wikipedia.org/wiki/Programmbibliothek Programmbibliotheken] mitführen | |||
** laufen diese auf allen verbreiteten Desktop-Distributionen wie [https://de.wikipedia.org/wiki/Ubuntu Ubuntu], [https://de.wikipedia.org/wiki/OpenSUSE openSUSE], [https://de.wikipedia.org/wiki/Fedora_(Linux-Distribution) Fedora], [https://de.wikipedia.org/wiki/Debian Debian], [https://de.wikipedia.org/wiki/Arch_Linux Arch Linux] oder [https://de.wikipedia.org/wiki/Red_Hat_Linux Red Hat Linux] gleichermaßen ohne spezifische Anpassungen. | |||
* Mit AppImage können Programme wie [https://de.wikipedia.org/wiki/LibreOffice LibreOffice], [https://de.wikipedia.org/wiki/Firefox Firefox], [https://de.wikipedia.org/wiki/Blender_(Software) Blender], [https://de.wikipedia.org/wiki/DigiKam DigiKam], [https://de.wikipedia.org/wiki/Kdenlive Kdenlive] oder [https://de.wikipedia.org/wiki/Gimp Gimp] in beliebigen Versionen verwendet werden, unabhängig von oder parallel zu der Version, die die Distribution selbst über ihr [https://de.wikipedia.org/wiki/Repository Repository] vertreibt. | |||
= Installation = | = Installation = | ||
= Syntax = | = Syntax = | ||
Zeile 9: | Zeile 19: | ||
== Dateien == | == Dateien == | ||
= | = Anwendung = | ||
== Verwendung == | == Verwendung == | ||
Das Kopieren und Starten von AppImages erfordert keine [https://de.wikipedia.org/wiki/Root_Account root]-Rechte. | |||
* Es reicht aus, die entsprechende Datei in das Nutzerverzeichnis oder auf einen beliebigen Datenträger zu kopieren, sie ausführbar zu machen und anschließend zu starten. | |||
* Viele AppImages fragen beim ersten Start, ob sie in ein Menü eingebunden werden sollen. | |||
* Einige AppImages suchen nach Aufforderung nach neueren Versionen und schlagen ggf. einen entsprechenden Download vor. | |||
Möchte man die jeweilige Applikation nicht mehr nutzen, muss nur die entsprechende Datei gelöscht werden. | |||
* Die Dateiendung (oft app oder AppImage) ist dabei unwichtig, sie kann sogar entfallen. | |||
Möchte man die jeweilige Applikation nicht mehr nutzen, muss nur die entsprechende Datei gelöscht werden. Die Dateiendung (oft app oder AppImage) ist dabei unwichtig, sie kann sogar entfallen. | |||
== Funktionsweise == | == Funktionsweise == | ||
Für jede Anwendung wird nur eine einzige Datei, meist mit der Endung .AppImage (oder .app) benötigt. | |||
* Diese stellt ein komprimiertes Dateisystem-Abbild dar, ähnlich einem [https://de.wikipedia.org/wiki/ISO-Abbild ISO-Abbild]. | |||
* Die Datei wird beim Start der eingebetteten Anwendung zeitweilig in das Dateisystem eingebunden (engl. “mounted”) und mittels eines Wrapper-Skripts gestartet. | |||
* Auf diese Weise kann ein AppImage-Benutzer sogar verschiedene Versionen derselben Anwendung gleichzeitig auf demselben System nutzen. | |||
* Die Datei enthält neben der eigentlichen Programmdatei alle nötigen [https://de.wikipedia.org/wiki/Programmbibliothek Bibliotheken] und andere Komponenten, von denen das Hauptprogramm abhängt. | |||
Die AppImage-Datei kann entweder von einem entsprechenden Server aus dem Internet heruntergeladen oder selbst erzeugt werden. | |||
* Dazu stehen auf der AppImage-Homepage sogenannte „Rezepte“ zur Verfügung. | |||
Die AppImage-Datei kann entweder von einem entsprechenden Server aus dem Internet heruntergeladen oder selbst erzeugt werden. Dazu stehen auf der AppImage-Homepage sogenannte „Rezepte“ zur Verfügung. Diese laden automatisch alle benötigten Komponenten von den Seiten der Hersteller herunter und verpacken sie in eine Image-Datei. | * Diese laden automatisch alle benötigten Komponenten von den Seiten der Hersteller herunter und verpacken sie in eine Image-Datei. | ||
Um die Sicherheit der Anwendung zu erhöhen, kann diese in einer [https://de.wikipedia.org/wiki/Sandbox Sandbox] wie FireJail, [https://de.wikipedia.org/wiki/AppArmor AppArmor] oder BubbleWrap ausgeführt werden. | Um die Sicherheit der Anwendung zu erhöhen, kann diese in einer [https://de.wikipedia.org/wiki/Sandbox Sandbox] wie FireJail, [https://de.wikipedia.org/wiki/AppArmor AppArmor] oder BubbleWrap ausgeführt werden. | ||
== Nachteile == | == Nachteile == | ||
Anwendungen mit AppImage laufen zwar unabhängig von der Distribution, sind aber eher schlecht ins Gesamtsystem integrierbar. | |||
* Da alle Abhängigkeiten mit eingebettet sind, versagen hier die Aktualisierungssysteme der Distributionen, da sie nichts innerhalb des AppImages aktualisieren können. | |||
* Die Sicherheit des Systems hängt also mit jedem installierten AppImage auch von einer weiteren Aktualisierungsinstanz ab. | |||
* Allerdings gibt es Werkzeuge, die es ermöglichen, Updates aus dem Programm und den eingebetteten Bibliotheken, Strukturen und Diensten automatisch zu bauen und über einen Delta-Update-Mechanismus an die Nutzer zu verteilen. | |||
Die AppImages benötigen längere Startzeiten im Vergleich zu herkömmlich über Paketmanagement installierte Anwendungen. | |||
* Die mitgebrachten Abhängigkeiten werden unabhängig instanziert, belegen also Speicher, selbst wenn die gleichen Bibliotheken bereits von anderen Programmen geladen und instanziert wurden. | |||
* Das Teilen von Ressourcen, ein wesentlicher Bestandteil des Betriebskonzeptes, wird somit unterlaufen. | |||
Für die Isolation eines AppImage-Programms muss ein externes Sandboxprogramm verwendet werden. | |||
Im Zuge eines im Dezember 2021 aufgedeckten sicherheitskritischen Fehlers in der Javabibliothek "log4j" hat sich die Softwareinstallation via AppImage als problematisch erwiesen, weil sich unter Umständen in etlichen AppImage-Dateien eigene Kopien fehlerhafter Bibliotheken befinden und diese von außen nur schwer erkannt und kaum "gefixt" werden können. | |||
= Sicherheit = | |||
= Dokumentation = | |||
== RFC == | |||
== Man-Page == | |||
== Info-Pages == | |||
== Projekt == | |||
= Links = | |||
== Siehe auch == | == Siehe auch == | ||
* [https://de.wikipedia.org/wiki/Autopackage Autopackage] | * [https://de.wikipedia.org/wiki/Autopackage Autopackage] | ||
* [https://de.wikipedia.org/wiki/Zero_Install Zero Install] | * [https://de.wikipedia.org/wiki/Zero_Install Zero Install] | ||
Zeile 125: | Zeile 70: | ||
* [https://de.wikipedia.org/wiki/Flatpak Flatpak] | * [https://de.wikipedia.org/wiki/Flatpak Flatpak] | ||
== Intern == | |||
== Weblinks == | == Weblinks == | ||
# [https://appimage.github.io/apps/ AppImage Hub] Aktuelles zentrales AppImage-Verzeichnis | |||
# [https://www.linux-apps.com/ Linux Apps] Weiteres Verzeichnis, auf dem es auch (aber nicht nur) AppImages gibt | |||
# [https://www.opendesktop.org/browse/cat/233/ Apps] Apps bei Opendesktop oft auch als AppImages | |||
# Tony Mobily: [http://freesoftwaremagazine.com/articles/simon_peter_interview/ „Interview with Simon Peter, creator of klik“] im Free Software Magazine, 7. April 2006 (englisch) | |||
# [http://appimage.org/ AppImage.org] Nachfolgeprojekt für portable Applikationen | |||
# [https://github.com/AppImage/AppImageKit/wiki/AppImages github.com/AppImage/AppImageKit/wiki/AppImages] Ältere Übersicht von AppImages bei github, die nicht mehr aktualisiert wird | |||
# Simon Peter: [https://web.archive.org/web/20101129031656/http://portablelinuxapps.org/docs/1.0/AppImageKit.pdf AppImageKit Documentation 1.0.] (PDF; 38 kB) (Nicht mehr online verfügbar.) PortableLinuxApps.org, 2010, S. 2–3, archiviert vom [https://giftbot.toolforge.org/deref.fcgi?url=http%3A%2F%2Fportablelinuxapps.org%2Fdocs%2F1.0%2FAppImageKit.pdf Original] am 29. November 2010; abgerufen am 29. Juli 2011 (englisch): „The AppImage format has been created with specific objectives in mind: Be Simple [...] Maintain binary compatibility [...] Be distribution-agnostic [...] Remove the need for installation [...] Allow to put apps anywhere [...] Do not require recompilation [...] Keep base operating system untouched [...] Do not require root [...]“ | |||
# [https://github.com/probonopd/AppImageKit/blob/master/README.md AppImageKit.] [https://de.wikipedia.org/wiki/Github github.com], abgerufen am 27. Januar 2020. | |||
# [https://de.wikipedia.org/wiki/Wikipedia:Kategorien Kategorien]: * [https://de.wikipedia.org/wiki/Kategorie:Linux-Software Linux-Software] | |||
# [https://de.wikipedia.org/wiki/Kategorie:Installationssoftware Installationssoftware] | |||
[[Kategorie:Linux | [[Kategorie:Linux/Software/Verwaltung]] |
Aktuelle Version vom 6. November 2024, 12:34 Uhr
AppImage stellt distributionsübergreifend Softwarepakete zur Verfügung
Beschreibung
- System zur einfachen Nutzung von Software auf Linux-Rechnern.
- Alternative zu zentral verwalteten Paketmanagersystemen der Linux-Distributionen
Eigenschaften
- AppImages kommen ohne Installation auf dem System aus
- Da AppImages alle verwendeten Programmbibliotheken mitführen
- laufen diese auf allen verbreiteten Desktop-Distributionen wie Ubuntu, openSUSE, Fedora, Debian, Arch Linux oder Red Hat Linux gleichermaßen ohne spezifische Anpassungen.
- Mit AppImage können Programme wie LibreOffice, Firefox, Blender, DigiKam, Kdenlive oder Gimp in beliebigen Versionen verwendet werden, unabhängig von oder parallel zu der Version, die die Distribution selbst über ihr Repository vertreibt.
Installation
Syntax
Parameter
Optionen
Konfiguration
Dateien
Anwendung
Verwendung
Das Kopieren und Starten von AppImages erfordert keine root-Rechte.
- Es reicht aus, die entsprechende Datei in das Nutzerverzeichnis oder auf einen beliebigen Datenträger zu kopieren, sie ausführbar zu machen und anschließend zu starten.
- Viele AppImages fragen beim ersten Start, ob sie in ein Menü eingebunden werden sollen.
- Einige AppImages suchen nach Aufforderung nach neueren Versionen und schlagen ggf. einen entsprechenden Download vor.
Möchte man die jeweilige Applikation nicht mehr nutzen, muss nur die entsprechende Datei gelöscht werden.
- Die Dateiendung (oft app oder AppImage) ist dabei unwichtig, sie kann sogar entfallen.
Funktionsweise
Für jede Anwendung wird nur eine einzige Datei, meist mit der Endung .AppImage (oder .app) benötigt.
- Diese stellt ein komprimiertes Dateisystem-Abbild dar, ähnlich einem ISO-Abbild.
- Die Datei wird beim Start der eingebetteten Anwendung zeitweilig in das Dateisystem eingebunden (engl. “mounted”) und mittels eines Wrapper-Skripts gestartet.
- Auf diese Weise kann ein AppImage-Benutzer sogar verschiedene Versionen derselben Anwendung gleichzeitig auf demselben System nutzen.
- Die Datei enthält neben der eigentlichen Programmdatei alle nötigen Bibliotheken und andere Komponenten, von denen das Hauptprogramm abhängt.
Die AppImage-Datei kann entweder von einem entsprechenden Server aus dem Internet heruntergeladen oder selbst erzeugt werden.
- Dazu stehen auf der AppImage-Homepage sogenannte „Rezepte“ zur Verfügung.
- Diese laden automatisch alle benötigten Komponenten von den Seiten der Hersteller herunter und verpacken sie in eine Image-Datei.
Um die Sicherheit der Anwendung zu erhöhen, kann diese in einer Sandbox wie FireJail, AppArmor oder BubbleWrap ausgeführt werden.
Nachteile
Anwendungen mit AppImage laufen zwar unabhängig von der Distribution, sind aber eher schlecht ins Gesamtsystem integrierbar.
- Da alle Abhängigkeiten mit eingebettet sind, versagen hier die Aktualisierungssysteme der Distributionen, da sie nichts innerhalb des AppImages aktualisieren können.
- Die Sicherheit des Systems hängt also mit jedem installierten AppImage auch von einer weiteren Aktualisierungsinstanz ab.
- Allerdings gibt es Werkzeuge, die es ermöglichen, Updates aus dem Programm und den eingebetteten Bibliotheken, Strukturen und Diensten automatisch zu bauen und über einen Delta-Update-Mechanismus an die Nutzer zu verteilen.
Die AppImages benötigen längere Startzeiten im Vergleich zu herkömmlich über Paketmanagement installierte Anwendungen.
- Die mitgebrachten Abhängigkeiten werden unabhängig instanziert, belegen also Speicher, selbst wenn die gleichen Bibliotheken bereits von anderen Programmen geladen und instanziert wurden.
- Das Teilen von Ressourcen, ein wesentlicher Bestandteil des Betriebskonzeptes, wird somit unterlaufen.
Für die Isolation eines AppImage-Programms muss ein externes Sandboxprogramm verwendet werden.
Im Zuge eines im Dezember 2021 aufgedeckten sicherheitskritischen Fehlers in der Javabibliothek "log4j" hat sich die Softwareinstallation via AppImage als problematisch erwiesen, weil sich unter Umständen in etlichen AppImage-Dateien eigene Kopien fehlerhafter Bibliotheken befinden und diese von außen nur schwer erkannt und kaum "gefixt" werden können.
Sicherheit
Dokumentation
RFC
Man-Page
Info-Pages
Projekt
Links
Siehe auch
Intern
Weblinks
- AppImage Hub Aktuelles zentrales AppImage-Verzeichnis
- Linux Apps Weiteres Verzeichnis, auf dem es auch (aber nicht nur) AppImages gibt
- Apps Apps bei Opendesktop oft auch als AppImages
- Tony Mobily: „Interview with Simon Peter, creator of klik“ im Free Software Magazine, 7. April 2006 (englisch)
- AppImage.org Nachfolgeprojekt für portable Applikationen
- github.com/AppImage/AppImageKit/wiki/AppImages Ältere Übersicht von AppImages bei github, die nicht mehr aktualisiert wird
- Simon Peter: AppImageKit Documentation 1.0. (PDF; 38 kB) (Nicht mehr online verfügbar.) PortableLinuxApps.org, 2010, S. 2–3, archiviert vom Original am 29. November 2010; abgerufen am 29. Juli 2011 (englisch): „The AppImage format has been created with specific objectives in mind: Be Simple [...] Maintain binary compatibility [...] Be distribution-agnostic [...] Remove the need for installation [...] Allow to put apps anywhere [...] Do not require recompilation [...] Keep base operating system untouched [...] Do not require root [...]“
- AppImageKit. github.com, abgerufen am 27. Januar 2020.
- Kategorien: * Linux-Software
- Installationssoftware