Welche Methode ist vorzuziehen, wenn ein Paket sowohl als Deb als auch als Snap verfügbar ist?

38

Natürlich ist die Antwort für die meisten Pakete trivial: Wenn es sich um ein Tool oder eine Bibliothek handelt, ist deb die einzige Option, während für einige proprietäre Software Snap die einzige Option ist.

Es sieht so aus, als ob Ubuntu Snap-Pakete stark pusht und fördert. Dabei werden Vorteile in Bezug auf Paketierung, Isolation, Sicherheit, Updates usw. angeführt. Alle mit Ubuntu 18.04 gelieferten Anwendungen sind jedoch als Deb-Pakete installiert.

Ein Beispiel ist Firefox, ein Paket, das aus Sicherheitsgründen auf dem neuesten Stand gehalten werden sollte und das in der Vergangenheit Konflikte mit den Betreibern von Distributionspaketen hinsichtlich Sicherheit und Branding hatte (Iceweasel). Dennoch hat Canonical Firefox als Deb-Paket ausgeliefert.

Für Pakete, die sowohl ein Snap als auch ein Deb haben, stellt sich die Frage: Welches sollten Sie installieren? Und wenn die Antwort schnell ist, sollte ich installierte Debs aktiv migrieren?

Pepijn
quelle

Antworten:

34

Generell würde ich sagen, dass Sie für die meisten Anwendungen, die auf Systembibliotheken basieren, bei DEB bleiben sollten. Dies hat den Vorteil, dass, wenn Sie diese eine Bibliothek aktualisieren, z. B. aus Sicherheitsgründen, alle Anwendungen, die diese Bibliothek verwenden, davon profitieren, auch wenn der Betreuer der ursprünglichen Anwendung die Sicherheitsanfälligkeit nicht kennt.

SNAPS eignet sich für Fälle, in denen Sie bestimmte Anwendungen aktualisieren möchten, ohne Ihr gesamtes System zu aktualisieren. Sie sind beispielsweise in einer LTS-Version, möchten aber die neueste Version einer bestimmten Anwendung haben. Im Vergleich zu PPAs, bei denen die Anwendungen gegen die "alten" systemweiten Bibliotheken kompiliert werden müssen, bringen die Anwendungen im Handumdrehen ihre eigenen Bibliotheken mit. Dies ist für Betreuer einfacher und kann Sie davon abhalten, in der Hölle der Abhängigkeit zu landen, wenn Sie ansonsten viele PPAs verwenden.

Bruni
quelle
"Sie möchten bestimmte Anwendungen aktualisieren, ohne Ihr gesamtes System zu aktualisieren. " Aber ist das nicht das, wofür PPAs gedacht sind (insbesondere die von launchpad.net)?
RonJohn
4
@RonJohn ja, aber wenn Sie ppa verwenden, müssen die Anwendungen gegen die "alten" systemweiten Bibliotheken kompiliert werden. Im Handumdrehen bringen die Anwendungen ihre eigenen Bibliotheken mit. Dies ist für Betreuer einfacher und kann Sie davon abhalten, in der Hölle der Abhängigkeit zu landen, wenn Sie ansonsten eine Menge von PPAs verwenden.
Bruni
Es wäre cool, wenn Sie Ihre PPA-Erklärung in Ihre Antwort aufnehmen würden.
Dcorking
1
@dcorking Ich habe die Antwort bearbeitet
Bruni
17

Einer der Hauptnachteile von Snaps ist der viel größere Platzbedarf, da jede Software ihre eigenen Abhängigkeiten aufweist, während Deb-Pakete systemweit gemeinsame Abhängigkeiten verwenden, was sich wesentlich weniger auswirkt.

Das Dienstprogramm von Snaps bietet sich an, wenn Sie Ihr System isoliert halten möchten (z. B. von proprietären Binärdateien) oder wenn das Paket selbst von anderen Abhängigkeiten abhängt als das, das Sie installiert haben (z. B. neuere).

Daniele Gamba
quelle
Was den zusätzlichen Speicherplatz betrifft, verfügt ein moderner Computer in der heutigen Welt über mehr als genug Speicherplatz, um Betriebssystem, Bibliotheken und Apps zuzuweisen. Nur wenn Sie mit alten oder "kleinen" Computern arbeiten (denken Sie an Raspberry Pi und IOT-Geräte), ist der Platzbedarf ein begrenzender Faktor.
Paddy Landau
4
@PaddyLandau Ich kann nicht mehr widersprechen. Ich denke, das ist eine schreckliche Meinung und fördert nur Verschwendung
Steve Lorimer
@SteveLorimer Für mich ist es kaum "Verschwendung", massiv ungenutzten Speicherplatz auf einer meist leeren Festplatte zu nutzen. Für dich ist es das. Wir müssen betteln, um uns zu unterscheiden. Die Leser können selbst entscheiden, welchen Ansatz sie wählen.
Paddy Landau
5
@PaddyLandau Ich kann nicht mehr anderer Meinung sein. Ich verwende regelmäßig eine kleine SSD für den Systemspeicher und eine große Festplatte für Daten. Ich sehe keinen Grund, Geld für doppelte Dateien zu verschwenden
Daniele Gamba,
7
@PaddyLandau in der heutigen Welt haben wir mobile Geräte mit kleinem Speicher, wir haben Internet-of-Things-Geräte mit noch kleinerem Speicher, wir haben SSDs mit dem Betriebssystem für schnelle Startzeiten usw. Wir ordnen alles einer Kategorie zu und sagen, dass es in Ordnung ist Verschwendung ist eine schlechte Meinung in meinem Kopf. Wie auch immer, wie Sie sagen, wir müssen darum bitten, uns zu unterscheiden
Steve Lorimer,
4

Dies ist eine Antwort mit hoher Meinung.

Ich persönlich benutze immer die deb oder eine andere inklusive Verpackung. Ich benutze keine Snaps, weil ich das Gefühl habe, dass sie wie ummauerte Gärten sind, im Gegensatz zu dem offenen Ökosystem, für das Linux steht.

Ich habe Snaps aufgrund von unklaren / mehrdeutigen Beschreibungen / Metadaten im Software-Center einige Male fälschlicherweise installiert. Ich fand, dass sie meine Laptop-Erfahrung verschlechterten. Diese wurden umgehend entfernt.

Wenn eine App nur ein Snap-Paket hat, würde ich die App selbst lieber nicht verwenden.

Ich bin besorgt, dass eines Tages Snapper sagen könnten, dass Sie nicht einmal das Betriebssystem benötigen.

Sri
quelle
Ja! Kommen Sie, um darüber nachzudenken, es ist wie ein Buggy-Rennen (Wortspiel beabsichtigt) zu fördern. Alles scheint aus dem Wunsch zu stammen, den Einsatz zu beschleunigen. Was ist die Eile, liebe Entwickler? Das Universum wird nicht zusammenbrechen!
Sri
Mein obiger Kommentar war eine Antwort auf einen Kommentar von jemandem, der anscheinend gelöscht wurde. Ich habe sogar +1 drauf gegeben!
Sri