Snappy (package manager)

Snappy
Developer(s) Canonical Ltd.
Initial release 9 December 2014 (2014-12-09)[1]
Stable release
2.35 / 20 August 2018 (2018-08-20)
Repository Edit this at Wikidata
Written in Python, Go
Operating system Linux
License GPLv3
Website snapcraft.io

Snappy is a software deployment and package management system originally designed and built by Canonical for the Ubuntu phone operating system. The packages, called 'snaps' and the tool for using them 'snapd', work across a range of Linux distributions and allow therefore distro-agnostic upstream software deployment. The system is designed to work for internet of things, cloud and desktop computing.[2]

Functionality

"Snap" application packages of software are self-contained and work across a range of Linux distributions. This is unlike traditional Linux package management approaches, like APT or YUM, which require specifically adapted packages for each Linux distribution therefore adding delay between application development and its deployment for end-users.[3][4]

Snaps themselves have no dependency on any "app store", can be obtained from any source and can be therefore used for upstream software deployment. When snaps are deployed on Ubuntu and other versions of Linux, the Ubuntu app store is used as default back-end, but other stores can be enabled as well.

Developers can use snaps to create command line tools and background services as well as desktop applications.[5] With snap application, upgrades via atomic operation or by deltas are possible.[1][6][7][8]

In June 2016, snapd was ported to a wide range of Linux distributions to enable snaps to be used across any Linux distribution, not just the all-snap Ubuntu Core. snapd is also available or in progress for Arch Linux, CentOS, Debian, Fedora, Gentoo Linux, Solus, Manjaro Linux, Linux Mint, OpenEmbedded, Raspbian, OpenWrt and openSUSE.

Each distribution is able to interpret the snap metadata to implement the security or other expectations of the snap in a distribution-specific fashion.

Snapcraft

Snapcraft is a tool for developers to package their programs in the Snap format for Snappy.[9]

'.snap' file format

The snap file format is a single compressed filesystem (based on squashfs format) that is mounted dynamically by the host operating system, together with declarative metadata that is interpreted by the snap system to set up an appropriately shaped secure sandbox or container for that application. The file format extension is .snap.

Reception and usage

Snappy packaging has been deployed in internet of things environments, ranging from consumer-facing products[10] to enterprise device management gateways.[11] Snappy is included by default in Ubuntu desktop images from version 16.04 onwards.

Criticism

The developer of the screen capture tool Peek discontinued support for Snap packages,[12][13] while continuing support for Flatpak and AppImage, stating that

  • Snap is "still mainly an Ubuntu show", criticizing the fact that snapd is no longer available in the official Arch Linux repository,
  • Using snap is more time-consuming than Flatpak or AppImage for developers,
  • Snap has less than satisfactory use of platform snaps, and
  • Ubuntu Software Center doesn't take advantage of AppStream data, requiring separate entry data.

See also

References

  1. 1 2 Shuttleworth, Mark (9 December 2014). "Announcing Ubuntu Core, with snappy transactional updates!".
  2. http://snapcraft.io/
  3. Upgrading packaged Ubuntu application unreasonably involves upgrading entire OS Bug #578045 on bugs.launchpad.net/ubuntu by John King (2010-05-10)
  4. Linus Torvalds on the problems of distro packaging Linus Torvalds on DebConf 2014
  5. "Canonical unveils 6th LTS release of Ubuntu with 16.04". Ubuntu Insights. Canonical Ltd. Retrieved 22 April 2016.
  6. Willis, Nathan (28 January 2015). "Ubuntu Core and Snappy". Linux Weekly News. Retrieved 7 November 2015.
  7. http://www.ubuntu.com/cloud/snappy
  8. http://www.zdnet.com/article/ubuntu-snap-takes-charge-of-linux-desktop-and-iot-software-distribution/
  9. Brodkin, Jon. "Adios apt and yum? Ubuntu's snap apps are coming to distros everywhere". Ars Technica. Retrieved 13 August 2016.
  10. Vaughan-Nichols, Stephen J. (11 May 2015). "Ubuntu jumps into Internet of Things with Acer, GE, and Microsoft". ZDNet. Retrieved 7 November 2015.
  11. Sherman, Jordana. "Snappy Core unlocks IoT value within the Dell Edge Gateway 5000 Series". Ubuntu Insights. Canonical Ltd. Retrieved 7 November 2015.
  12. "Snap support for Peek screen recorder discontinued". Reddit. March 25, 2018. Retrieved May 12, 2018.
  13. "Peek Gif Screen Recorder Drops Support for Snap App". OMG! Ubuntu!. Retrieved 2018-04-05.


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.