to dir
snap 
rev 16 dec 2022
Category: package management
» what↓   difference↓   sources↓

.........................
➽ what is snap:

  "Snap is a software packaging and deployment system developed by Canonical for operating systems that use the Linux kernel. The packages, called snaps, and the tool for using them, snapd, work across a range of Linux distributions and allow upstream software developers to distribute their applications directly to users."
  -- Wikipedia

  "allows a user to install Snap packages, called Snaps, across a wide range of Linux distributions and versions. This works differently than the traditional method of installing packages via a package manager like APT, where applications are packaged and installed as part of the operating system.
  "Snaps are self-contained and run in a sandbox, making new software pretty safe to install. The Snaps can be browsed and installed from the Snapcraft App Store. Snap gives developers an easy way to push updates for their applications, as well as usage data to help them improve.
  "Newer versions of Ubuntu [and derivatives] should already have Snap enabled, as Canonical developed the feature and first introduced it on their own distribution. It’s also available for most other Linux distributions, but must be installed first."
   -- https://linuxconfig.org/how-to-setup-snap-package-manager-on-any-linux-distro
   

.........................
➽ what does snap do different:

  [1] A single package works on multiple distros  No native package can do that.

  [2] 1 package also works across multiple versions of a distro. The
same single Firefox snap works on everything from 22.10 back to 16.04
or something.

  [3] No need to add and maintain (and trust!) multiple external repos
of unknown provenance.

  [4] No need to maintain and keep fresh repo-signing keys.

  [5] Snaps are versioned. If something doesn't work, you can roll back to an older version. Native packages replace one another; there is nothing left to roll back to, and all the supporting libraries may have been updated to, and they all have to be rolled back as well, which might break other things.

  [6] Snaps are atomic. It's 1 file. If it installs, it's in; if it doesn't, it's not and you can just go back to the old one. Natively packaged apps can and do scatter-shoot hundreds or even thousands of files into dozens of folders across your filesystem, and all of those locations have to be appropriately noted in certain config files.

  
  ......................... 
  [Snap] is trying to bring the database properties of ACID to package management:
  https://www.databricks.com/glossary/acid-transactions
  A.C.I.D. properties: Atomicity, Consistency, Isolation, and Durability

  If a DEB craps out half way, you have a broken system, and you need to mess with `apt install -f` and maybe `dpkg-reconfigure` and hope you can fix it.

  For easy end-user desktops you want apps that install like on a phone: one file, it goes in, it works, and it can be removed again leaving no trace.

  Which means you need the ACID properties.

  DEB can't do that, RPM can't, Arch or Alpine or Slackware or Void or any of 'em just can't do that.

  Flatpak does some of it but it's GUI desktop apps only. You can't package your kernel or Samba or CUPS as a Flatpak... but you can make them into Snaps.

  There's nothing else quite like it.

  What makes me sad is that Ubuntu seems to be backing away from ZFS now, which would have enabled COW snapshots and other cool stuff SUSE has.

  [RedHat] has no such tech, so it needs the massive tech bodge of OStree to do image-based OS deployments on non-snapshot-capable FSs.

  Sure, Fedora has Btrfs but no snapshot mechanism or support at all, so it's hardly worth it.

  -- Liam Proven
  16 dec 2022
  https://lists.ubuntu.com/archives/ubuntu-users/2022-December/309054.html


.........................
➽ title:

  ...


.......................................................
➽ sources:

  Snap home
    Snapcraft
    https://snapcraft.io/
    https://snapcraft.io/store

  Snap (package manager)
    Wikipedia
    https://en.wikipedia.org/wiki/Snap_(package_manager)

  Snap - search on duckduckgo
    https://duckduckgo.com/?q=snap+package+manager


_______________________________________________________
begin 16 dec 2022
-- 0 --