Benutzer-Werkzeuge

Webseiten-Werkzeuge


guideos_snap_installer

GuideOS Snap Installer

Übersicht

Der GuideOS Snap Installer ist ein Zenity-basiertes Bash-Skript zur grafischen Installation und Deinstallation von Snap auf GuideOS.

Entwickler actionschnitzel
Dateiname guideos-snap-installer.sh
Benutzeroberfläche Zenity (GTK-Dialoge)
Funktion Snap installieren/deinstallieren
Liezens MIT

Zweck

Das Tool ermöglicht die einfache Installation oder Deinstallation von Snap (Canonicals universelles Paketformat) auf GuideOS. Es kümmert sich automatisch um alle notwendigen Schritte:

  • AppArmor-Installation
  • Snapd-Dienst einrichten
  • PATH-Konfiguration
  • Automatische Desktop-Menü-Integration
  • Benutzer zur Snap-Gruppe hinzufügen

Snap Pakete können danach über das Programm Software aus dem GNOME-Projekt installiert werden.

Funktionen

  • Installation: Vollständige Snap-Umgebung einrichten
  • Deinstallation: Snap komplett vom System entfernen
  • AppArmor-Setup: Automatische Installation von AppArmor (erforderlich für Snap)
  • Desktop-Integration: Automatische Verlinkung von Snap-Apps ins Anwendungsmenü
  • PATH-Konfiguration: /snap/bin wird dauerhaft zum PATH hinzugefügt
  • Systemd-Integration: Automatische Synchronisation bei neuen Snap-Installationen

Bedienung

Programm starten

./guideos-snap-installer.sh

Oder aus dem Anwendungsmenü starten.

Snap installieren

  1. Programm starten
  2. Sudo-Passwort eingeben
  3. Willkommensinfo bestätigen
  4. Falls Snap nicht installiert: „Installieren“ wählen
  5. Fortschrittsanzeige beobachten mit folgenden Schritten:
    • AppArmor-Komponenten installieren (5%)
    • Paketliste aktualisieren (10%)
    • Snapd und GNOME Software Plugin installieren (30%)
    • /snap Symlink erstellen (35%)
    • PATH dauerhaft setzen (40%)
    • Snapd-Dienst aktivieren (50%)
    • Automatische Menü-Verlinkung einrichten (70%)
    • Snap Core installieren (90%)
  6. Abschlussmeldung: System neu starten

Snap deinstallieren

  1. Programm starten
  2. Sudo-Passwort eingeben
  3. Falls Snap installiert: „Deinstallieren“ wählen
  4. Fortschrittsanzeige beobachten mit folgenden Schritten:
    • Snap Store entfernen (10%)
    • GNOME Software Plugin entfernen (50%)
    • Snapd vollständig entfernen (90%)
  5. Abschlussmeldung: System neu starten

Installation von Snap-Paketen

Nach erfolgreicher Installation von Snap können Pakete installiert werden:

# Snap-Paket suchen
snap find <suchbegriff>
 
# Snap-Paket installieren
sudo snap install <paketname>
 
# Installierte Snaps anzeigen
snap list
 
# Snap-Paket aktualisieren
sudo snap refresh <paketname>
 
# Snap-Paket deinstallieren
sudo snap remove <paketname>

Technische Details

Installierte Komponenten

Komponente Zweck
snapd Snap-Daemon (Hauptkomponente)
gnome-software Software-Center
gnome-software-plugin-snap Snap-Integration in Software-Center
apparmor Sicherheits-Framework (erforderlich für Snap)
apparmor-utils AppArmor-Hilfsprogramme

Erstellte Dateien

Datei/Verzeichnis Zweck
/snap Symlink nach /var/lib/snapd/snap
/snap/bin Snap-Executable-Verzeichnis
/etc/profile.d/snap_path.sh PATH-Konfiguration für alle Benutzer
/usr/local/bin/snap-desktop-sync.sh Skript zur Desktop-Menü-Synchronisation
/etc/systemd/system/snap-desktop-sync.service Systemd-Service für Desktop-Sync
/etc/systemd/system/snap-desktop-sync.path Systemd Path-Watcher für automatische Sync

Desktop-Menü-Integration

Das Tool richtet automatische Desktop-Integration ein:

Funktionsweise:

  1. Systemd Path-Unit überwacht /var/lib/snapd/desktop/applications/
  2. Bei neuen .desktop-Dateien wird automatisch snap-desktop-sync.sh ausgeführt
  3. Symlinks werden von /var/lib/snapd/desktop/applications/ nach ~/.local/share/applications/ erstellt
  4. Neue Snap-Apps erscheinen automatisch im Anwendungsmenü

PATH-Konfiguration

Das Skript /etc/profile.d/snap_path.sh fügt /snap/bin zum PATH hinzu:

# Snap PATH
if [ -d "/snap/bin" ] && ! echo "$PATH" | grep -q "/snap/bin" ; then
  export PATH="$PATH:/snap/bin"
fi

Dies wird automatisch für alle Benutzer beim Login geladen.

Wichtige Hinweise

  • Neustart erforderlich: Nach Installation oder Deinstallation muss das System neu gestartet werden
  • AppArmor erforderlich: Snap funktioniert nur mit aktiviertem AppArmor
  • Sudo-Rechte: Das Skript benötigt Administratorrechte
  • Snap-Gruppe: Benutzer wird automatisch zur snap-Gruppe hinzugefügt
  • PATH: /snap/bin wird nach Neustart automatisch verfügbar
  • Deinstallation: Entfernt alle Snaps und deren Daten

Was ist Snap?

Snap ist ein universelles Paketformat von Canonical (Ubuntu):

  • Container-basiert: Apps laufen isoliert vom System
  • Plattformübergreifend: Funktioniert auf vielen Linux-Distributionen
  • Automatische Updates: Snaps aktualisieren sich selbstständig
  • Versionierung: Mehrere Versionen parallel installierbar
  • Sandboxing: Apps sind durch AppArmor abgesichert

Snap vs. andere Paketformate

Merkmal Snap Flatpak APT/DEB
Container Ja Ja Nein
Sandboxing AppArmor Bubblewrap Nein
Automatische Updates Ja Optional Nein
Systemintegration Mittel Gut Sehr gut
Größe Größer Größer Kleiner
Anbieter Canonical Community Distribution

Häufig verwendete Snap-Pakete

Beispiele beliebter Snap-Pakete:

# Entwicklung
sudo snap install code --classic           # Visual Studio Code
sudo snap install pycharm-community --classic  # PyCharm
 
# Multimedia
sudo snap install vlc
sudo snap install spotify
sudo snap install obs-studio
 
# Kommunikation
sudo snap install discord
sudo snap install telegram-desktop
sudo snap install slack --classic
 
# Produktivität
sudo snap install libreoffice
sudo snap install gimp
sudo snap install inkscape

Hinweis: –classic erlaubt vollständigen Systemzugriff (weniger Sandboxing).

Problembehandlung

Snap-Befehl nicht gefunden

# PATH manuell laden
source /etc/profile.d/snap_path.sh
 
# Oder System neu starten
reboot

AppArmor nicht aktiv

# AppArmor-Status prüfen
sudo systemctl status apparmor
 
# AppArmor aktivieren
sudo systemctl enable --now apparmor

Snap-Apps erscheinen nicht im Menü

# Desktop-Sync manuell ausführen
sudo /usr/local/bin/snap-desktop-sync.sh
 
# Systemd Path-Unit prüfen
systemctl status snap-desktop-sync.path
 
# Desktop-Datenbank aktualisieren
update-desktop-database ~/.local/share/applications

Snapd-Dienst startet nicht

# Dienst-Status prüfen
sudo systemctl status snapd
 
# Dienst neu starten
sudo systemctl restart snapd
 
# Logs anzeigen
sudo journalctl -u snapd -n 50

Installation schlägt fehl

# Internet-Verbindung prüfen
ping -c 3 snapcraft.io
 
# APT-Cache aktualisieren
sudo apt update
 
# Manuell installieren
sudo apt install snapd apparmor

Snap-Befehle Übersicht

Befehl Funktion
snap find <suche> Pakete suchen
snap info <paket> Paket-Informationen anzeigen
snap install <paket> Paket installieren
snap install <paket> –classic Paket mit vollem Systemzugriff installieren
snap list Installierte Pakete auflisten
snap refresh Alle Pakete aktualisieren
snap refresh <paket> Bestimmtes Paket aktualisieren
snap remove <paket> Paket deinstallieren
snap revert <paket> Auf vorherige Version zurücksetzen
snap version Snap-Version anzeigen
snap connections <paket> Berechtigungen anzeigen

Vorteile von Snap

  • Aktuelle Software: Immer neueste Versionen verfügbar
  • Einfache Installation: Ein Befehl für alle Distributionen
  • Sicherheit: Sandboxing durch AppArmor
  • Rollback: Einfache Rückkehr zu alter Version
  • Entwicklerfreundlich: Einfaches Packaging für Entwickler

Nachteile von Snap

  • Größere Dateien: Enthalten alle Abhängigkeiten
  • Langsamerer Start: Container-Overhead
  • Snap Store: Zentralisiert bei Canonical
  • Integration: Manchmal weniger gut als native Pakete
  • Proprietary: Snap Store Backend ist nicht Open Source
guideos_snap_installer.txt · Zuletzt geändert: von ktt73

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki