Fedora: Wie man Skype per SNAP installiert

Weil Microsoft den Support via RPM eingestellt hat, müssen wir uns heute leider mit der Installation von Skype via SNAP befassen, kein sehr angenehmes Thema. Der Ein oder Andere würde jetzt kontern: Was ist Skype? … Brauche ich zum telefonieren, obwohl ich im Abnabelprozess bin 😉

Fedora: Wie man Skype per SNAP installiert

Ohne das Thema mit den Unzulänglichkeiten von SNAP in die Länge zuziehen, hier die Anweisungen:

$ sudo -i
$ dnf install snapd
$ systemctl enable –now snapd

das sieht dann so aus:

[linuxamdienstag@fedora ~]$ sudo -i
[sudo] Passwort für linuxamdienstag:
[root@fedora ~]# dnf install snapd
Aktualisiere und lade Paketquellen:
Paketquellen geladen.
Paket Architektur Version Paketquelle Größe
Installiere:
snapd x86_64 2.67-0.fc41 updates 54.9 MiB
Abhängigkeiten werden installiert:
snap-confine x86_64 2.67-0.fc41 updates 10.6 MiB
snapd-selinux noarch 2.67-0.fc41 updates 44.4 KiB
xdelta x86_64 3.1.0-19.fc41 fedora 189.8 KiB

Transaktionszusammenfasung:
Installiere: 4 Pakete

Die vollständige Größe eingehender Pakete ist 20 MiB. Heruntergeladen werden müssen 20 MiB.
Nach dieser Operation werden 66 MiB mehr benötigt (installiere 66 MiB, entferne 0 B).
Is this ok [y/N]: j
Is this ok [y/N]: y
[1/4] snapd-selinux-0:2.67-0.fc41.noarch 100% | 584.7 KiB/s | 82.4 KiB | 00m00s
[2/4] snap-confine-0:2.67-0.fc41.x86_64 100% | 7.3 MiB/s | 2.9 MiB | 00m00s
[3/4] xdelta-0:3.1.0-19.fc41.x86_64 100% | 320.1 KiB/s | 90.6 KiB | 00m00s
[4/4] snapd-0:2.67-0.fc41.x86_64 100% | 14.6 MiB/s | 17.2 MiB | 00m01s
———————————————————————————————————————————————————————————————————————————————-
[4/4] Total 100% | 12.3 MiB/s | 20.3 MiB | 00m02s
Transaktion wird ausgeführt
[1/6] Verifiziere Paket Dateien 100% | 75.0 B/s | 4.0 B | 00m00s
[2/6] Transaktion vorbereiten 100% | 5.0 B/s | 4.0 B | 00m01s
[3/6] Installiere xdelta-0:3.1.0-19.fc41.x86_64 100% | 2.9 MiB/s | 191.3 KiB | 00m00s
[4/6] Installiere snapd-selinux-0:2.67-0.fc41.noarch 100% | 3.9 KiB/s | 45.4 KiB | 00m12s
[5/6] Installiere snap-confine-0:2.67-0.fc41.x86_64 100% | 170.3 MiB/s | 10.6 MiB | 00m00s
[6/6] Installiere snapd-0:2.67-0.fc41.x86_64 100% | 24.9 MiB/s | 54.9 MiB | 00m02s
>>> Führe post-install scriptlet aus: snapd-0:2.67-0.fc41.x86_64
>>> Fertiggestellt post-install scriptlet: snapd-0:2.67-0.fc41.x86_64
>>> Scriptlet Ausgabe:
>>> Created symlink ‚/etc/systemd/system/sockets.target.wants/snapd.socket‘ → ‚/usr/lib/systemd/system/snapd.socket‘.
>>> Created symlink ‚/etc/systemd/user/sockets.target.wants/snapd.session-agent.socket‘ → ‚/usr/lib/systemd/user/snapd.session-agent.socket‘.
>>>
Abgeschlossen!
[root@fedora ~]# systemctl enable –now snapd
Created symlink ‚/etc/systemd/system/multi-user.target.wants/snapd.service‘ → ‚/usr/lib/systemd/system/snapd.service‘.
[root@fedora ~]#

Jetzt müssen wir Skype installieren

Das ist genauso einfach:

$ snap install skype
2025-02-06T09:45:10+01:00 INFO Waiting for automatic snapd restart…
skype 8.136.0.203 from Skype✓ installed

Jetzt haben wir Skype drauf, nun brauchen wir als User nur noch Skype bei jedem Start per Hand in der Konsole starten, weil Snaps leider der totale Scheiß sind!

[linuxamdienstag@fedora ~]$ snap run skype

Die gestartete Skype UI und eine Menge an Fehlermeldungen vom Start. Nicht so wichtig.

Wie integriert man das jetzt richtig?

Ihr kopiert diesen Block in eine Datei: /usr/share/applications/skypeforlinux.desktop

[Desktop Entry]
Name=Skype for Linux
Comment=Skype Internet Telephony
Exec=/usr/bin/snap run skype
Icon=skypeforlinux
Terminal=false
Type=Application
StartupNotify=false
X-GNOME-Autostart-enabled=true

jetzt habt Ihr einen Eintrag im Anwendungsmenü, den Ihr starten könnt und via Startprogramme auch in den Autostart vom Desktop bekommt.

Wieso sind Snaps jetzt scheiße?

Auch wenn die Installation ganz leicht war, wäre da zum einen der Punkt mit der mangelnden Desktopdatei und zum anderen das hier:

[marius@eve ~]$ df -h
Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf

/dev/loop0 128K 128K 0 100% /var/lib/snapd/snap/bare/5
/dev/loop1 56M 56M 0 100% /var/lib/snapd/snap/core18/2846
/dev/loop4 92M 92M 0 100% /var/lib/snapd/snap/gtk-common-themes/1535
/dev/loop5 182M 182M 0 100% /var/lib/snapd/snap/skype/380
/dev/loop6 45M 45M 0 100% /var/lib/snapd/snap/snapd/23545
/dev/loop2 165M 165M 0 100% /var/lib/snapd/snap/gnome-3-28-1804/198
/dev/loop3 182M 182M 0 100% /var/lib/snapd/snap/skype/378

Für jedes Paket das Snap als Abhängigkeit installiert, legt es einen Mountpoint an. d.h. habt Ihr 50 davon, habt Ihr auch 50 Mounts in der Liste.

Was könnte da wohl jetzt das Problem sein?

„Warnung: Das Laufwerk /var/lib/snapd/snap/bare/5 ist zu 100% voll.“
„Warnung: Das Laufwerk /var/lib/snapd/snap/core18/2846 ist zu 100% voll.“

usw.. jede Minute.. weil die Software, die die Laufwerke überwacht und einen warnt, so daß man keine Datenverluste hat wenn eine Platte vollläuft, jede Minute eine Audiowarnung für jedes volle Laufwerk von sich gibt.  JEDES!

Weil das öffentliche Mounts sind, tauchen die auch im Dateimanager auf. Völlig sinn- und zweckfrei versteht sich. Klar, man könnte sich ansehen was drin ist, aber das kann ich bei Flatpaks auch, ohne das es mir ständig unter die Benutzernase gerieben wird!

Wieso mountet man seine Pakete, die alle Schreibgeschützt sind und keinen jucken, überhaupt global ein? Ich kann es Euch nicht sagen. Flatpaks sieht man nicht im System als Laufwerke.

Also Ihr Vers**** bei Canonical, bekommt den Scheiß in den Griff und zwar Pronto!

Ich hab mußte Drittherstellersoftware anpassen, nur weil Ihr so einen Blödsinn veranstaltet!

Wie deinstalliert man das alles wieder?

[root@fedora ~]# rm -f /usr/share/applications/skypeforlinux.desktop
[root@fedora ~]# snap remove skype
skype removed
[root@fedora ~]# systemctl stop snapd
Stopping ’snapd.service‘, but its triggering units are still active:
snapd.socket
[root@fedora ~]# dnf remove snapd
Paket Architektur Version Paketquelle Größe
Wird entfernt:
snapd x86_64 2.67-0.fc41 updates 54.9 MiB
Nicht benötigte Abhängigkeiten werden entfernt:
snap-confine x86_64 2.67-0.fc41 updates 10.6 MiB
snapd-selinux noarch 2.67-0.fc41 updates 44.4 KiB
xdelta x86_64 3.1.0-19.fc41 fedora 189.8 KiB

Transaktionszusammenfasung:
Entferne: 4 Pakete

Nach dieser Operation werden 66 MiB frei (installiere 0 B, entferne 66 MiB).
Is this ok [y/N]: y
Transaktion wird ausgeführt
[1/5] Transaktion vorbereiten 100% [==================] | 1.0 B/s | 4.0 B | 00m00s
>>> Führe pre-uninstall scriptlet aus: snapd-0:2.67-0.fc41.x86_64
>>> Fertiggestellt pre-uninstall scriptlet: snapd-0:2.67-0.fc41.x86_64
>>> Scriptlet Ausgabe:
>>> Removed ‚/etc/systemd/system/multi-user.target.wants/snapd.service‘.
>>> Removed ‚/etc/systemd/system/sockets.target.wants/snapd.socket‘.
>>> Removed ‚/etc/systemd/user/sockets.target.wants/snapd.session-agent.socket‘.
>>> Stopping var-lib-snapd-snap-bare-5.mount
>>> Stopping unit var-lib-snapd-snap-bare-5.mount
>>> Warning: The unit file, source configuration file or drop-ins of var-lib-snapd-snap-bare-5.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Waiting until unit var-lib-snapd-snap-bare-5.mount is stopped [attempt 1]
>>> var-lib-snapd-snap-bare-5.mount is stopped.
>>> Removing snap bare
>>> Removing var-lib-snapd-snap-bare-5.mount
>>> Stopping var-lib-snapd-snap-core18-2846.mount
[1/5] Transaktion vorbereiten 100% | 1.0 B/s | 4.0 B | 00m03s
>>> Führe pre-uninstall scriptlet aus: snapd-0:2.67-0.fc41.x86_64 of var-lib-snapd-snap-core18-2846.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Fertiggestellt pre-uninstall scriptlet: snapd-0:2.67-0.fc41.x86_64 [attempt 1]
>>> Scriptlet Ausgabe:-core18-2846.mount is stopped.
>>> Removed ‚/etc/systemd/system/multi-user.target.wants/snapd.service‘.
>>> Removed ‚/etc/systemd/system/sockets.target.wants/snapd.socket‘.
>>> Removed ‚/etc/systemd/user/sockets.target.wants/snapd.session-agent.socket‘.
>>> Stopping var-lib-snapd-snap-bare-5.mount2d3\x2d28\x2d1804-198.mount
>>> Stopping unit var-lib-snapd-snap-bare-5.mountfile or drop-ins of var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-198.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Warning: The unit file, source configuration file or drop-ins of var-lib-snapd-snap-bare-5.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Waiting until unit var-lib-snapd-snap-bare-5.mount is stopped [attempt 1]
>>> var-lib-snapd-snap-bare-5.mount is stopped.
>>> Removing snap barenapd-snap-gnome\x2d3\x2d28\x2d1804-198.mount
>>> Removing var-lib-snapd-snap-bare-5.mountn\x2dthemes-1535.mount
>>> Stopping var-lib-snapd-snap-core18-2846.mountn\x2dthemes-1535.mount
>>> Stopping unit var-lib-snapd-snap-core18-2846.mountor drop-ins of var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1535.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Warning: The unit file, source configuration file or drop-ins of var-lib-snapd-snap-core18-2846.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Waiting until unit var-lib-snapd-snap-core18-2846.mount is stopped [attempt 1]
>>> var-lib-snapd-snap-core18-2846.mount is stopped.
>>> Removing snap core18pd-snap-gtk\x2dcommon\x2dthemes-1535.mount
>>> Removing var-lib-snapd-snap-core18-2846.mount
>>> Stopping var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-198.mount
>>> Stopping unit var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-198.mountr-lib-snapd-snap-snapd-23545.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Warning: The unit file, source configuration file or drop-ins of var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-198.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Waiting until unit var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-198.mount is stopped [attempt 1]
>>> var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-198.mount is stopped.
>>> Removing snap gnome-3-28-1804napd-23545.mount
>>> Removing var-lib-snapd-snap-gnome\x2d3\x2d28\x2d1804-198.mount
>>> Stopping var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1535.mountt 1]
>>> Stopping unit var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1535.mount
>>> Warning: The unit file, source configuration file or drop-ins of var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1535.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Waiting until unit var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1535.mount is stopped [attempt 1]
>>> var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1535.mount is stopped.
>>> Removing snap gtk-common-themesrvice
>>> Removing var-lib-snapd-snap-gtk\x2dcommon\x2dthemes-1535.mountvice not loaded.
>>> Stopping var-lib-snapd-snap-snapd-23545.mountstopped [attempt 1]
>>> Stopping unit var-lib-snapd-snap-snapd-23545.mount
>>> Warning: The unit file, source configuration file or drop-ins of var-lib-snapd-snap-snapd-23545.mount changed on disk. Run ’systemctl daemon-reload‘ to reload units.
>>> Waiting until unit var-lib-snapd-snap-snapd-23545.mount is stopped [attempt 1]
>>> var-lib-snapd-snap-snapd-23545.mount is stopped.
>>> Removing snap snapd.mounts-pre.target
>>> Removing var-lib-snapd-snap-snapd-23545.mount stopped [attempt 1]
>>> Stopping unit snapd.autoimport.service
>>> Waiting until unit snapd.autoimport.service is stopped [attempt 1]
>>> snapd.autoimport.service is stopped.
>>> Stopping unit snapd.seeded.serviceapd to helper tools
>>> Waiting until unit snapd.seeded.service is stopped [attempt 1]
>>> snapd.seeded.service is stopped.ate data
>>> Stopping unit snapd.apparmor.service
>>> Failed to stop snapd.apparmor.service: Unit snapd.apparmor.service not loaded.
>>> Waiting until unit snapd.apparmor.service is stopped [attempt 1]
>>> snapd.apparmor.service is stopped.
>>> Stopping unit snapd.mounts.target
>>> Waiting until unit snapd.mounts.target is stopped [attempt 1]
>>> snapd.mounts.target is stopped.
>>> Stopping unit snapd.mounts-pre.target
>>> Waiting until unit snapd.mounts-pre.target is stopped [attempt 1]
>>> snapd.mounts-pre.target is stopped.
>>> Discarding preserved snap namespaces
>>> Removing downloaded snaps
>>> Removing features exported from snapd to helper tools
>>> Final directory cleanup
>>> Removing leftover snap shared state data
>>> Removing snapd catalog cache
>>>
[2/5] Entferne snapd-0:2.67-0.fc41.x86_64 100% | 1.1 KiB/s | 91.0 B | 00m00s
>>> [RPM] Datei /var/snap: remove failed: Datei oder Verzeichnis nicht gefunden
>>> [RPM] Datei /var/lib/snapd/snap: remove failed: Datei oder Verzeichnis nicht gefunden
[3/5] Entferne snapd-selinux-0:2.67-0.fc41.noarch 100% | 0.0 B/s | 6.0 B | 00m11s
[4/5] Entferne snap-confine-0:2.67-0.fc41.x86_64 100% | 1.2 KiB/s | 33.0 B | 00m00s
[5/5] Entferne xdelta-0:3.1.0-19.fc41.x86_64 100% | 7.0 B/s | 10.0 B | 00m01s
Abgeschlossen!

Jetzt dürft Ihr noch alle SNAP Ordner in allen Homeverzeichnissen löschen, von Benutzern, die Skype gestartet haben und auch noch die snapd Restbestände löschen:

[root@fedora ~]# rm -rf /var/lib/snapd /home/*/snap

Und komme mir nie wieder jemand mit „Snaps wären geil“ .. waren sie nie und werden sie nie sein! Eine Ahnung was Microsoft da geritten hat.