Unten eine vollständige, schrittweise Anleitung (auf Deutsch), wie du eine AppImage unter /opt ablegst, ins Startmenü einbindest und optional ein Icon extrahierst. Ich gebe dir Beispielbefehle — ersetze die Platzhalter durch den echten Dateinamen/deine App-Namen. Voraussetzungen - Du brauchst sudo-Rechte. - AppImage-Datei (z. B. ExampleApp.AppImage) ist im Downloads-Ordner. Schritt 1 — AppImage ausführbar machen Öffne ein Terminal und mache die Datei ausführbar: ``` cd ~/Downloads chmod +x ExampleApp.AppImage ``` Schritt 2 — AppImage nach /opt verschieben Erstelle ein Unterverzeichnis unter /opt (z. B. /opt/exampleapp) und verschiebe die AppImage dort hin: ``` sudo mkdir -p /opt/exampleapp sudo mv ExampleApp.AppImage /opt/exampleapp/ sudo chown -R root:root /opt/exampleapp ``` Optional: Um den Namen konsistent zu halten, kannst du die Datei umbenennen: ``` sudo mv /opt/exampleapp/ExampleApp.AppImage /opt/exampleapp/exampleapp.AppImage ``` Schritt 3 — Einfachen Startbefehl anlegen (Symlink oder Wrapper) Damit die App systemweit mit kurzem Namen startet, lege einen Symlink oder ein kleines Wrapper-Skript in /usr/local/bin an. Variante A — Symlink: ``` sudo ln -s /opt/exampleapp/exampleapp.AppImage /usr/local/bin/exampleapp sudo chmod +x /usr/local/bin/exampleapp ``` Variante B — Wrapper-Skript (empfohlen, falls Argumente weitergeleitet werden sollen): ``` sudo tee /usr/local/bin/exampleapp > /dev/null <<'EOF' #!/bin/sh exec /opt/exampleapp/exampleapp.AppImage "$@" EOF sudo chmod +x /usr/local/bin/exampleapp ``` Schritt 4 — Icon aus dem AppImage extrahieren (optional, aber empfohlen) Viele AppImages haben ein eingebettetes Icon (.DirIcon) oder eine .png-Datei. So extrahierst du es: ``` cd /tmp /opt/exampleapp/exampleapp.AppImage --appimage-extract # die extrahierten Dateien liegen jetzt in /tmp/squashfs-root ``` Suche das Icon: ``` ls squashfs-root | grep -i DirIcon || ls squashfs-root | grep -i png ``` Beispiel: wenn squashfs-root/.DirIcon vorhanden ist, kopiere es als PNG in die Icon-Hierarchie: ``` sudo mkdir -p /usr/share/icons/hicolor/256x256/apps sudo cp squashfs-root/.DirIcon /usr/share/icons/hicolor/256x256/apps/exampleapp.png sudo chmod 644 /usr/share/icons/hicolor/256x256/apps/exampleapp.png ``` (Optional) Icon-Cache aktualisieren: ``` sudo gtk-update-icon-cache /usr/share/icons/hicolor ``` Aufräumen: ``` rm -rf /tmp/squashfs-root ``` Hinweis: Wenn du die App nur für deinen Benutzer installierst, kopiere das Icon nach ~/.local/share/icons/hicolor/256x256/apps/ statt /usr/share/... Schritt 5 — .desktop-Datei anlegen (Startmenü-Eintrag) Siehe auch hier: [[Linux .desktop Dateien]] Systemweit (für alle Benutzer): ``` sudo tee /usr/share/applications/exampleapp.desktop > /dev/null <<'EOF' [Desktop Entry] Name=ExampleApp GenericName=Example Application Comment=Beschreibung der Anwendung Exec=/usr/local/bin/exampleapp %U Icon=exampleapp Terminal=false Type=Application Categories=Utility;Application; StartupWMClass=ExampleApp EOF ``` Alternativ für nur deinen Benutzer: ``` mkdir -p ~/.local/share/applications tee ~/.local/share/applications/exampleapp.desktop > /dev/null <<'EOF' [Desktop Entry] Name=ExampleApp GenericName=Example Application Comment=Beschreibung der Anwendung Exec=/usr/local/bin/exampleapp %U Icon=/home/deinuser/.local/share/icons/hicolor/256x256/apps/exampleapp.png Terminal=false Type=Application Categories=Utility;Application; StartupWMClass=ExampleApp EOF ``` Wichtige Felder: - Exec: Pfad zur ausführbaren Datei oder zu deinem Symlink (/usr/local/bin/exampleapp). %U erlaubt URLs/Dateien als Argumente. - Icon: entweder der einfache Icon-Name (ohne Endung), wenn du das Icon in /usr/share/icons/hicolor abgelegt hast, oder ein voller Pfad. - Categories: für die Kategorisierung im Menü (z. B. Utility, Development, Office). - Terminal=false, falls kein Terminal nötig. Setze die richtigen Rechte: ``` sudo chmod 644 /usr/share/applications/exampleapp.desktop # oder für user: chmod 644 ~/.local/share/applications/exampleapp.desktop ``` Schritt 6 — Desktop-Datenbank aktualisieren (falls nötig) Für Systemmenüs: ``` sudo update-desktop-database ``` Für GNOME/andere DEs: in der Regel reicht Aus- und Einloggen oder Neustart des Shells/Session. Schritt 7 — Testen - Öffne dein Startmenü / Activities und suche nach "ExampleApp". - Alternativ im Terminal: `exampleapp` (oder `/opt/exampleapp/exampleapp.AppImage`). Optionale Hinweise - Automatische Updates: Manche AppImages unterstützen AppImageUpdate (z. B. mit zsync) oder du kannst AppImageLauncher verwenden, das AppImage-Integration & Updates verwaltet. - Sicherheitsaspekt: AppImages laufen nicht automatisch in einem Sandbox; für zusätzliche Isolation kannst du firejail verwenden. - Entfernen: Entferne /opt/exampleapp, den Symlink und die .desktop/Icons, um die App rückstandsfrei zu löschen. Kurzbeispiel (kompakt) Angenommen Datei heißt ExampleApp.AppImage in ~/Downloads und dein Benutzername ist user: ``` cd ~/Downloads chmod +x ExampleApp.AppImage sudo mkdir -p /opt/exampleapp sudo mv ExampleApp.AppImage /opt/exampleapp/exampleapp.AppImage sudo ln -s /opt/exampleapp/exampleapp.AppImage /usr/local/bin/exampleapp # Icon extrahieren (falls vorhanden) /opt/exampleapp/exampleapp.AppImage --appimage-extract sudo cp squashfs-root/.DirIcon /usr/share/icons/hicolor/256x256/apps/exampleapp.png rm -rf squashfs-root # .desktop anlegen sudo tee /usr/share/applications/exampleapp.desktop > /dev/null <<'EOF' [Desktop Entry] Name=ExampleApp Exec=/usr/local/bin/exampleapp %U Icon=exampleapp Terminal=false Type=Application Categories=Utility; EOF sudo chmod 644 /usr/share/applications/exampleapp.desktop sudo update-desktop-database ``` Wenn du willst, schreibe mir: - Wie die AppImage-Datei heißt, und - ob du die Installation systemweit (für alle Benutzer) oder nur für dich wünschst. Dann passe ich die Befehle genau für deine App an.