Seit einiger Zeit ist es bei vielen Distributionen und im Speziellen bei Ubuntu ein Reizthema: die alternativen Paketverwaltungssysteme wie Snap und Flatpak.
„Pakete im Griff“ lautet das Thema in der aktuellen Linuxuser. Ein Editorial und einige Artikel befassen sich mit den Vor- und Nachteilen von Snap, Flatpak & Co.
Für mich persönlich überwiegen als, zumindest bei diesem Thema, leidgeplagter Ubuntu User mit dem dort vertretenen Snap eindeutig die Nachteile:
- Pakete werden unnötig gross, weil sämtliche benötigte Bibliotheken erneut mitgeliefert werden.
Es gibt seit langer Zeit das Konzept der dynamischen Bibliotheken. Windowsuser kennen die .dll Dateien.
Sinn und Zweck ist hier, dass eben diese Bibliotheken zum einen erst geladen werden, wenn sie gebraucht werden und zum anderen einmal im System verfügbar sind und nicht für jede Applikation erneut mitgeliefert werden. Klassische Paketverwaltungssysteme prüfen bei einer Installation von Anwendungen diese Abhängigkeiten, also ob die benötigte Bibliothek in der richtigen Version, am erwarteten Platz verfügbar ist und installiert sie sonst, in der Regel aus der Paketverwaltung, für alle zentral nach.
Snap, Flatpak und Andere führen das nun ad absurdum und bringen all diese oft schon vorhandenen Bibliotheken erneut mit und blähen die Pakete somit unnötig auf.
- Immerhin spart sich der Paketbetreuer damit einiges an Arbeit, weil er das snap einmal packt und nicht für jedes Paketverwaltungssystem erneut, so der fromme Wunsch.
Ob dieser denn auch in Erfüllung geht, ist mehr als fraglich, denn zumindest derzeit paketiert er wohl schon mindestens 2 Mal, statt .deb und .rpm jetzt snap und flatpak. Dazu dann noch als standalone Variante zum selbst installieren und als Appimage.
- Der Anwender muss jetzt mehrere Paketverwaltungssysteme pflegen.
Zu einem
sudo apt update
sudo apt upgrade
kommt jetzt noch ein
sudo snap refresh
und ein
sudo flatpak update
hinzu.
Immerhin können Frontends wie Discover unter KDE das ganz gut abfangen.
Ich persönlich finde, zumindest mit snap (zu flatpak kann ich nicht viel sagen), wird das System damit nicht nur unnötig grösser, sondern auch unübersichtlicher und für Anwender weniger verstehbar.
Z.B. habe ich nicht schlecht gestaunt, als ich nach der Einführung von Snap irgendwann mal den mount Befehl benutzt habe und plötzlich solche Zeilen erhielt (Auszug):
~$ mount
/var/lib/snapd/snaps/onlyoffice-desktopeditors_121.snap on /snap/onlyoffice-desktopeditors/121 type squashfs (ro,nodev,relatime,errors=continue,x-gdu.hide)
/var/lib/snapd/snaps/onlyoffice-desktopeditors_133.snap on /snap/onlyoffice-desktopeditors/133 type squashfs (ro,nodev,relatime,errors=continue,x-gdu.hide)
/var/lib/snapd/snaps/snapd_17029.snap on /snap/snapd/17029 type squashfs (ro,nodev,relatime,errors=continue,x-gdu.hide)
/var/lib/snapd/snaps/snapd_17336.snap on /snap/snapd/17336 type squashfs (ro,nodev,relatime,errors=continue,x-gdu.hide)
/var/lib/snapd/snaps/telegram-desktop_4208.snap on /snap/telegram-desktop/4208 type squashfs (ro,nodev,relatime,errors=continue,x-gdu.hide)
/var/lib/snapd/snaps/telegram-desktop_4256.snap on /snap/telegram-desktop/4256 type squashfs (ro,nodev,relatime,errors=continue,x-gdu.hide)
Ich habe einmal nachgezählt, derzeit sind es hier 35 solcher Einträge. Nein, die Infos will ich nicht, wenn ich mount eingebe. Gut kann man filtern, aber schön ist anders.
Nicht falsch verstehen, wenn mir eine Anwendung alternativ als Snap, Flatpak, Appimage angeboten wird, z.B. in neueren oder unterschiedlichen Versionen zum Testen, ist das ok. Aber wenn, wie am Beispiel von Firefox, Ubuntu eben nur noch das snap anbietet, ist das einfach nur noch ärgerlich.
Linux wäre aber nicht Linux, wenn es nicht doch alternative Wege gäbe.
Im Chat wurde das thematisiert und schnell war eine Lösung zur Hand. Im Falle von Firefox gibts z.B. mindestens ein ppa.
Folgende Lösung hat bei mir prima geklappt:
Zuerst entfernen wir das Snap Paket:
sudo snap remove firefox
Dann fügen wir das Repository hinzu
sudo add-apt-repository ppa:mozillateam/ppa
Nun priorisieren wir die dort angebotene Version, sonst gibts danach wieder nur das snap oder die ESR Version (wobei die aktuell mit v102.x statt v106.x durchaus akzeptabel sein kann)
Wir erstellen die Datei /etc/apt/preferences.d/mozilla-firefox mit folgendem Inhalt:
Package: *
Pin: release o=LP-PPA-mozillateam
Pin-Priority: 1001
Schliesslich noch wie gewohnt die Paketverwaltung aktualisieren und firefox (samt Sprachpaket) installieren.
sudo apt update
sudo apt install firefox firefox-locale-de
snap befreite Grüsse, DxU
Hi DxU, das habe ich schon vor einigen Monaten gemacht. Allerdings klappt irgendetwas nicht. Bei jedem Update des snap-Firefox wird er installiert und ich muß danach manuell "apt update && apt upgrade" machen um den deb-Firefox wieder zu bekommen. Hast Du eine Idee woran das liegen könnte. Ciao, Stefan
Hi, wie machst du das update das dann zur Installation des snap führt?
Nutzt du das ppa wie im Text
" ppa:mozillateam/ppa "
Und NICHT das im Wiki von Ubuntuusers.de erwähnte
" ppa:ubuntu-mozilla-security/ppa " ?
Wenn doch nimm letzteres mal raus, deinstalliere FF und geh wie in der Anleitung hier beschrieben vor, dann sollte das gehen. Welche Ubuntu-Version hast du?
Ich kann jetzt nur spekulieren aber zeig doch mal die erwähnte
/etc/apt/preferences.d/mozilla-firefox
sieht die wie oben aus also auch wirklich 3 Zeilen?
Folgende Konfiguration stefan@htpc:~$ cat /etc/apt/preferences.d/mozillateam
Package: *
Pin: release o=LP-PPA-mozillateam
Pin-Priority: -1
Package: firefox
Pin: release o=LP-PPA-mozillateam
Pin-Priority: 1001
Package: thunderbird
Pin: release o=LP-PPA-mozillateam
Pin-Priority: 1001
stefan@htpc:~$ cat /etc/apt/sources.list.d/mozillateam.list
deb https://ppa.launchpadcontent.net/mozillateam/ppa/ubuntu jammy main
deb-src https://ppa.launchpadcontent.net/mozillateam/ppa/ubuntu jammy main
IMHO sollte die Pin-Prio ausreichen :-) Ich glaube auch nicht, daß es daran liegt. Der Update des snap-FF passiert nämlich automatisch, ohne irgendwelche manuallen Eingriffe. Und das deutet für mich darauf hin, daß da irgendein Ubuntu-Automatismus am Werk ist, den ich abschalten sollte. Mein Problem: ich kenne keinen solchen Automatismus. Und ich bin mir nicht bewußt einen eingeschaltet zu haben. Aber ausschliessen kann ich das auch nicht. Wenn das vor Jahren (sic!) passiert ist, dann weiß ich es leider nicht mehr.
Es fehlt wahrscheinlich um die Snap Installation zu verhindern folgendes.
nano /etc/apt/preferences.d/nosnap.pref
Package: snapd Pin: release a=* Pin-Priority: -10
Quelle dazu: https://axebase.net/blog/2020/06/16/ubuntu-snap-verhindern/ Bei LP-PPA-mozillateam könnte Pin-Priority 600 ausreichen.
Ich denke ich habe den Grund gefunden: es war (jetzt nicht mehr!) unattended-upgrades installiert. Es ist natürlich blöd, dass es FF updated und dabei anscheinend nicht dasselbe macht wie apt.
Es geht aber doch gar nicht darum snap komplett zu verhindern (das will ich auch gar nicht). Sondern darum das deb-FF-Paket mit einer höheren Prio zu installieren als das snap-FF-Paket. Und das ist bei mir auch so eingerichtet (nach obiger Methode). Aber irgendetwas ignoriert diese Methode. Und das ist bei mir vermutlich unattended-upgrades.
Ich könnte noch einen anderen Weg für -in meinem Fall- firefox und thunderbird anbieten. Ich habe das erste mal auf den beiden Seiten mir die firefox und thunderbird als tar.bz- Archive heruntergeladen und unter /opt/firefox bzw. /opt/thunderbird die Archive extrahiert. Anschließen jeweils einen Link gelegt in /usr/bin ln -sf /opt/firefox /firefox und ln -sf /opt/thunderbird/thunderbird. Schon kann ich die Anwendungen wo überall aufrufen. Falls ein Upgrade gemacht werden soll, rufe ich firefox und thunderbird auf und lasse sie nach einem Upgrade suchen. Mir wird bei Fund das Upgrade angeboten. Dieses lasse ich dann ausführen. Anschließend habe ich wieder ein aktualisiertes Produkt. Diese Methode finde ich um Längen besser als snap oder flatpak.
ja kann man mal so machen, Windows User machen das idR ja auch so. Das ist das Gegenteil von Paketverwaltungssystemen, jede Anwendung einzeln updaten ist noch schlimmer als mehrere Paketverwaltungssysteme zu managen
Ich benutze debian.
snap flatpack appimage sind lösungen für ein problem das es nicht gibt. mir reichen apt für das system und der pip-installer für mein python jupyterlab vollkommen aus.
ein überflüssiger Kommentar, sorry hilft wirkllich niemandem weiter sowas
Einer der Hauptgründe für snap und flatpack ist, das die Anwendung in einer Sandbox laufen. Das denke ich ist gerade bei Browsern sinnvoll.
Danke Tobias für den Hinweis, das ist tatsächlich ein Aspekt den ich schonmal auf dem Schirm hatte, aber hier im Artikel leider unterschlagen habe. Tatsächlich ein Argument für diese Alternativen. Wohl auch der Grund, warum ich neulich , allerdings wohl erst nach einem FF Update, Downloads nicht mehr ausserhalb $HOME speichern konnte. Kann man aber sicher irgendwo in der snap Konfiguration ändern. (ja jut oder unter $HOME downloaden und später ans Wusnchziel verschieben, wird nur problematisch bei großen Downloads und kleinem $HOME)
Für die Updates empfehle ich topgrade https://github.com/topgrade-rs/topgrade. Damit werden sowohl die nativen (DEB /RPM) als auch flatpack, snap und auch pip, cargo Installationen upgedated.
ja hatte ich auch noch auf meiner todo:
https://gnulinux.ch/alles-in-einem-rutsch-updaten-mit-topgrade
Ich sehe die Vorteile dort, wo Anwendungen nicht in den Paketquellen zur Verfügung stehen. Synology beispielsweise stellt seine Pakete nur als DEB zur Verfügung. Ich bräuchte aber ein RPM.
Klar, ich könnte Alien benutzen, die Dateien manuell an den richtigen Ort schieben (und damit ebenfalls die Paketverwaltung aushebeln sic), oder irgendein Repository von jemanden aus der Community einbinden, der das schon gemacht hat (Risikofaktor unbekannt)
ODER ich nehm das Flatpak. Das wird zwar ebenfalls von der Community gepflegt, aber wenigst kriege ich da nur ein Paket, kein ganzes Repository, und dieses Paket läuft auch noch in einem Container. Die Version aus Flatpak wird ausserdem ziemlich gut gepflegt (Updates werden zeitnahe nachgereicht)
Klar ich könnte auch noch keine Synology kaufen, aber ich hab sie nun mal, und solange sie läuft wird sie nicht ersetzt (QNAP ist nicht besser btw)
Dann wäre doch die „Enkelin“ Linux Mint eine Option – oder gleich die „Mutter“ Debian …
/!\ Wichtig /!\ Deinstallieren vom Thunderbird Snap LÖSCHT das Profil, unbedingt vorher sichern.
die Aussage ist nicht haltbar.
Bitte nicht solche Aussagen tätigen, wenn User dadurch unnötig verwirrt werden. Danke
Nein, der Snap-Thunderbird hat sein eigenes Verzeichnis, ebenso der Snap-Firefox.
Beide ignorieren auch bereits bestehende Verzeichnisse aus nativen Installationen.
Es ist also deine Aussage, die nicht haltbar ist.
Hallo Frank und Ubu (als Auslöser des Kommentars)
danke für die Hinweise, tatsächlich haben wir da alle ein wenig Recht und ein wenig Unrecht.
ich bin mal in mich gegangen und habe das mal genauer geprüft. (aber letztlich auch nicht in allen denkbaren Szenarien und Facetten)
Mit folgendem Ergebnis.
Tatsächlich legt sowohl Thunderbird als auch Firefox, bei nicht vorhandenem entsprechendem alten Profilen seine default oder auch neue Profile unter $HOME/snap/"APP" an. und löscht wie von euch richtig bemerkt die auch gnadenlos weg bei Deinstallation der Anwendungen. Finde ich ehrlich gesagt total ungeil
Aber, zum einen ging es hier im Artikel eben nicht um Thunderbird und zum zweiten wird bei einer Standardinstallation in (k)ubuntu Thunderbird eben noch als deb Paket und nicht als snap installiert. Letzteres kann aber nachinstalliert werden, wenn man das denn ausprobieren will (z.B. um neuere Version zu bekommen)
Firefox prüft immerhin ob es ein $HOME/.mozilla/firefox gibt und verwendet das dann auch. Sollte also bei einem releaseupgrade aus einer noch nicht snap Version, also schon vorhandenem $HOME samt seinen Inhalten kein Problem darstellen.
Oder man kopiert eben die Arbeitsordner aus einer alten Installation ins $HOME der neuen Installation rein, bevor man FF und Thunderbird erstmals startet.
Ob das künftig so bleibt und ob man sich darauf weiter verlassen sollte, ist natürlich fraglich. Aber dank regelmäßiger Backups sollte das ja kein unlösbares Problem sein.
Beste Grüße DxU
Mir fehlt im Artikel der Aspekt Confinement. Gegenüber mobilen Plattformen wie Ubuntu Touch, Android oder iOS, fehlt es dem klassischen Linux Desktop an einer Kapselung von Anwendungen. Ohne das bedroht eine Sicherheitslücke in einem Programm automatisch die kompletten Nutzerdaten aller Programme. Hier setzen snap/flat an.
Sehr schön, danke sehr. Hat ohne weiteres funktioniert. Vielleicht noch da Kommando zum Anlegen der Datei:
sudo nano /etc/apt/preferences.d/mozilla-firefox (manch einer mag vergessen, dass dazu root-Rechte benötigt werden)
Viele Grüße aus dem Wendland! Mixel
Hallo Mixel, Danke für deine Nachricht
Ja da hast Du recht, hab ich nur nicht erwähnt, weil der User idR recht schnell merkt, dass er ausserhalb $HOME sowieso keine Schreibrechte hat. Mit welchem Editor er das macht ist letztlich auch Geschmackssache. Eine Variante wäre auch echo ' Package: *
Pin: release o=LP-PPA-mozillateam
Pin-Priority: 1001 ' | sudo tee /etc/apt/preferences.d/mozilla-firefox erkältete Neujahrsgrüße zurück aus Berlin, DxU
Habe eben interessantes Verhalten bei im Artikel beschriebenen Prozess und xubuntu 220.4 erlebt.
sudo snap remove firefox
sudo add-apt-repository ppa:mozillateam/ppa
echo ' Package: *
Pin: release o=LP-PPA-mozillateam
Pin-Priority: 1001 ' | sudo tee /etc/apt/preferences.d/mozilla-firefox
sudo apt update
bis hierher alles ok. Jetzt habe ich aber mal zusätzlich, weil das System sowieso upgrade brauchte ein
sudo apt full-upgrade
eingefügt. Und da bekomme ich eine eigenartige Fehlermeldung
Die folgenden Pakete werden durch eine ÄLTERE VERSION ERSETZT (Downgrade): firefox firefox-locale-de firefox-locale-en
.....
Holen:11 https://ppa.launchpadcontent.net/mozillateam/ppa/ubuntu jammy/main amd64 firefox-locale-de amd64 109.0+build2-0ubuntu0.22.04.1~mt1 [625 kB]
Holen:12 https://ppa.launchpadcontent.net/mozillateam/ppa/ubuntu jammy/main amd64 firefox amd64 109.0+build2-0ubuntu0.22.04.1~mt1 [65,2 MB]
Jetzt stellen sich die 2 Fragen.
einfach nur: Danke
Hallo,
wie bleiben Lesezeichen, Einstellungen, ... erhalten?
Ich hab z.B. in den beiden Verzeichnissen ~/.mozilla/firefox/ und ~/snap/firefox/common/.mozilla/firefox/ die gleichen (bis auf's Datum) Inhalte (in der ersten Ebene, ein "diff -r" zeigt, dass es darunter sehr wohl Unterschiede gibt)
drwx------ 6 xyz xyz 4,0K Dez 21 2019 . drwx------ 6 xyz xyz 4,0K Jän 8 2023 .. drwx------ 2 xyz xyz 4,0K Dez 21 2019 1mfxggma.default drwx------ 21 xyz xyz 4,0K Jän 8 2023 59p0gsaz.default-release drwx------ 3 xyz xyz 4,0K Mai 15 2023 'Crash Reports' -rw-rw-r-- 1 xyz xyz 62 Dez 21 2019 installs.ini drwx------ 2 xyz xyz 4,0K Dez 21 2019 'Pending Pings' -rw-rw-r-- 1 xyz xyz 259 Dez 21 2019 profiles.ini
Reicht es, das alles von ~/snap/firefox/common/.mozilla/firefox/ auf ~/.mozilla/firefox/ zu kopieren, bevor das snap-firefox removed wird, und beim apt-update/install werden die (kopierten) Sachen in ~/.mozilla/firefox/ nicht überschrieben?
(war vorhin schlecht formatiert)
drwx------ 2 xyz xyz 4,0K Dez 21 2019 1mfxggma.default
drwx------ 21 xyz xyz 4,0K Jän 8 2023 59p0gsaz.default-release
drwx------ 3 xyz xyz 4,0K Mai 15 2023 'Crash Reports'
-rw-rw-r-- 1 xyz xyz 62 Dez 21 2019 installs.ini
drwx------ 2 xyz xyz 4,0K Dez 21 2019 'Pending Pings'
-rw-rw-r-- 1 xyz xyz 259 Dez 21 2019 profiles.ini
Schönen Sonntag allen,
Dem nicht endenden Thema Firefox ohne Snap und Flatpak hat sich nun wohl Mozilla selbst noch mal deutlicher angenommen. Es gab ja schon die hier beschriebene Anleitung mittels von mozilla bereitgestelltem ppa, das sich inzwischen wohl leicht geändert hat. Allerdings wurde mit ppa eben nur Ubuntu und darauf basierende Distributionen bedient.
https://support.mozilla.org/de/kb/firefox-unter-linux-installieren#w_installation-von-firefox-uber-das-deb-paket-fur-debian-basierte-distributionen
Dort ist jetzt beschrieben wie es auch ohne PPA geht. Eben ausprobiert klappt prima. Der ARtikel zeigt auch wo die Userprofile in zuvor genutzen Snap- oder Flatpak Installationen zu finden sind und wie diese übernommen werden.
Gruß DxU
P.S. und eben entdecke ich, dass Lioh dafür ja bereits vor Monaten ein schickes Video veröffentlicht hat. Für eher visuell orientierte User also bitteschön: https://yt.artemislena.eu/watch?v=oD4dqUkXOEk
Hallo, das Thema war neulich wieder auf dem Tisch. Und falls das mal wieder kommt, hier die aktuelle Anleitung von Mozilla
https://support.mozilla.org/de/kb/firefox-unter-linux-installieren#w_installation-von-firefox-uber-das-deb-paket-fur-debian-basierte-distributionen
vorherige Deinstallation des snap Pakets natürlich wie beschrieben. Eben wieder erfolgreich getestet unter einem frisch installierten kubuntu 24.04