Jump to content

Snap Packages Become Universal Binary Format for All GNU/Linux Distributions


vissha

Recommended Posts

Snap Packages Become Universal Binary Format for All GNU/Linux Distributions

 

snap-packages-become-the-universal-binar

 

Developers from multiple distros collaborate on Snaps

 

Quote

Today, June 14, 2016, Canonical informed us that they've been working for some time with developers from various major GNU/Linux distributions to make the Snap package format universal for all OSes.

 

snap-packages-become-the-universal-binar

 

As many of you who are using Ubuntu might know already, Snap is a secure, easy to install, and confined package format that lets developers distribute the latest versions of their software applications as soon as they're out. For Ubuntu, it is an alternative packaging format for Debian's .deb binary packages.

 

Snap is an innovation from Canonical created specifically for the Snappy technology used in Snappy Ubuntu Core, a slimmed-down version of Ubuntu designed from the ground up to be deployed on various embedded and IoT (Internet of Things) devices. Starting with Ubuntu 16.04 LTS (Xenial Xerus), Canonical launched the Snap packages for the desktop and server too.

 

"Developers from multiple Linux distributions and companies today announced collaboration on the “snap” universal Linux package format, enabling a single binary package to work perfectly and securely on any Linux desktop, server, cloud or device," said Canonical. "This community is working at snapcraft.io to provide a single publication mechanism for any software in any Linux environment."

 

Snaps already work natively on Arch Linux, Debian, Fedora, and Ubuntu

 

At the moment, we're being informed that the Snap package format is working natively on popular GNU/Linux operating systems like Arch Linux, Fedora, Debian GNU/Linux, OpenWrt, as well as Ubuntu and its official flavors, including Kubuntu, Xubuntu, Ubuntu MATE, Ubuntu GNOME, Ubuntu Kylin, and Lubuntu.

 

Shortly after today's announcement, other major GNU/Linux distributions will adopt the Snap package as a universal binary format for their users. Among these, we can mention openSUSE, Linux Mint, Red Hat Enterprise Linux, CentOS, and elementary OS. Of course, any other distros not mentioned here can also adopt the Snap format easily.

 

Canonical already demonstrated that it is easy for application developers to package their apps in the Snap format, so now it will be a lot more easy to distribute it on any major Linux kernel-based operating system out there, greatly simplifying the distribution of third-party Linux software.

 

Of course, Snaps will not replace the default package format used by the respective operating systems. They are available only to complement them, to make the distribution of certain open-source or closed-source applications available in the Snap format for all GNU/Linux operating system who will adopt it.

 

Popular software like Mozilla Firefox, LibreOffice and Krita are already being in the process of becoming Snap packages. "With the introduction of Snaps, continually optimizing Firefox will become possible, providing Linux users the most up-to-date features," said Nick Nguyen, Vice President of Product, Firefox at Mozilla.

 

Krita 3.0 digital painting tool was launched earlier this month as a Snap package, which Ubuntu users can install on their operating systems. "Maintaining .deb packages in a private repository was complex and time consuming, Snaps are much easier to maintain, package and distribute" said Boudewijn Rempt, project lead at the Krita Foundation.

 

If you are an application developer who wants to distribute his project as a Snap package for any GNU/Linux operating system who supports Snaps, you're invited to visit the snapcraft.io website. Also, don't hesitate to take a look at the press release below for any other information regarding Snaps as a universal binary format.

 

Press Release:

 

Spoiler

 

Developers from multiple Linux distributions and companies today announced collaboration on the “snap” universal Linux package format, enabling a single binary package to work perfectly and securely on any Linux desktop, server, cloud or device. This community is working at snapcraft.io to provide a single publication mechanism for any software in any Linux environment. This release quotes Dell, Samsung, the Linux Foundation, The Document Foundation, Krita, Mycroft, Horizon Computing, contributors to Arch, Debian, OpenWrt, Ubuntu, and several of their related distributions.

 

Snapcraft.io

 

Snaps now work natively on Arch, Debian, Fedora, Kubuntu, Lubuntu, Ubuntu GNOME, Ubuntu Kylin, Ubuntu MATE, Ubuntu Unity, and Xubuntu. They are currently being validated on CentOS, Elementary, Gentoo, Mint, OpenSUSE, OpenWrt and RHEL, and are easy to enable on other Linux distributions.

 

Together, these distributions represent the vast majority of common Linux usage on the desktop, server and cloud. A snap package is easy to create and offers significant security benefits, greatly simplifying third-party Linux app distribution.


ISVs benefit from an efficient way to deliver Linux software everywhere

 

The universal snap format has been welcomed by Linux application vendors. It is a tremendous simplification to publish a snap rather than manage diverse package formats and security update mechanisms across many Linux distributions.

 

“We strive to offer users a great experience and make Firefox available across many platforms, devices and operating systems. With the introduction of snaps, continually optimizing Firefox will become possible, providing Linux users the most up-to-date features,” said Nick Nguyen, Vice President of Product, Firefox at Mozilla.

 

“Maintaining .deb packages in a private repository was complex and time consuming, snaps are much easier to maintain, package and distribute. Putting the snap in the store was particularly simple, this is the most streamlined app store I have published software in,” said Boudewijn Rempt, project lead at the Krita Foundation. Krita 3.0 has just been released as a snap which will be updated automatically as newer versions become available.


IoT gateways and smart edge devices benefit from secure updates

 

Snaps are isolated from one another to guarantee data security, and can be updated or rolled back automatically, making them perfect for connected devices. Multiple vendors have launched snappy IoT devices, enabling a new class of “smart edge” device with IoT app store. Snappy devices receive automatic updates for the base OS, together with updates to the apps installed on the device.

 

“The IoT market is very diverse, it’s often complex and expensive for device makers to build their full software stack”, said Curtis Sasaki, VP of Ecosystems and IOT General Manager at Samsung Strategy and Innovation Center (SSIC). “That’s why developers creating new products based on Samsung ARTIK modules want the ability to leverage an ecosystem of snaps to accelerate their product lifecycle, and why we are excited to have snaps running on ARTIK”.

 

“We believe snaps address the security risks and manageability challenges associated with deploying and running multiple third party applications on a single IoT Gateway,” said Jason Shepherd, Director, IoT Strategy and Partnerships, Dell. “This trusted and universal app format is essential for Dell, our IoT Solutions Partners and commercial customers to build a scalable, IT-ready, and vibrant ecosystem of IoT applications.”

 

“Publishing Mycroft as a snap is a great way to make our technology available across multiple Linux distributions. The ability to update and better secure the software over time is an added bonus. Our decision to snap up Mycroft will reduce the number of package formats we need to support over the long haul, that frees our developers to focus on new features,” said Joshua Montgomery CEO Mycroft AI which is using snaps for a voice-controlled smart-home IoT device.

 

Easy desktop integration

 

Snaps are richly integrated through a set of declared interfaces that provide file sharing, device sharing or other services, balancing security with ease of use.

 

“Our FreeCAD snap has full access to OpenGL and other core services from the desktop environment,” said Jean-Marie Verdun of Horizon Computing, the leading provider of open hardware consulting and equipment in Europe. “Snap interfaces provide secure and easy integration between apps and the system, an elegant solution to the most common problem with containerised apps.”

 

Server and cloud apps

 

Snaps also provide easy distribution for cloud and server applications. Installing Jenkins, for example, becomes a single-command exercise on any distribution with snaps. Many cloud and web applications make daily or weekly releases. Snaps enable vendors to move at the speed of the web, while targeting the stable distributions that are popular with their users.

 

Complementary to existing Linux packages

 

Snaps sit alongside the native packages of the base Linux operating system. Each distribution has its own mechanisms to provide the base OS and its updates. Snaps complement the base OS with universal apps that cannot interfere with the base OS or one another.

 

“Snaps deliver new applications to OpenWRT while leaving the core OS unchanged,” said Matteo Croce of OpenWrt. “Snaps are a faster way to deliver a wider range of software to supported OpenWrt access points and routers.”


Enhanced security for apps and devices

 

Each snap is confined using a range of kernel isolation and security mechanisms, tailored to the snap, ensuring that vulnerabilities in the application are contained to the greatest degree currently possible. A careful review process ensures that snaps only receive the permissions they require to operate. Users do not have to make complex security decisions when installing the snap.

 

“Security is particularly important when running third-party software,” said Steve Langasek, a Debian developer. “Snaps meet that challenge with robust confinement, neatly addressing many of the risks of apps in sensitive environments.”

 

Simpler and easier to create

 

The snap format is simpler than the native internal package formats of individual Linux distributions, because it is focused purely on applications rather than the core system itself. Snaps are essentially self-contained zip files that can be executed very fast in place, making them easy to create.

 

“Snaps are much easier to create than traditional Linux packages, and allow us to evolve dependencies independent of the base operating system, so we can easily provide the very best and latest Chinese Linux apps to users across all distributions,” said Jack Yu, leader of the popular Chinese Kylin team.

 

Automatic updates

 

Updated snaps are delivered automatically, improving the flow of features and fixes as well as the feedback cycle both for commercial applications and for open source applications.

 

Thorsten Behrens, founder and board member of The Document Foundation said, “Our objective is to make LibreOffice easily available to as many users as possible. Snaps enable our users to get the freshest LibreOffice releases across different desktops and distributions quickly, easily and consistently. As a bonus, it should help our release engineers to distribute a more up-to-date LibreOffice that is not based on a bespoke, home-grown and ancient Linux build solution, using a toolchain that is collectively maintained.”

 

“Ubuntu MATE is delighted to be participating in the snappy initiative, with a goal of eventually snapping the complete MATE desktop. Collaborating with Ubuntu developers and other community contributors is a great way to share experiences and best practice,” said Martin Wimpress project lead of Ubuntu MATE.

 

Stable, candidate, beta and daily versions

 

Stable releases, release candidates, beta versions and daily builds of a snap can all be published at the same time, enabling users to preview upcoming releases with different levels of stability.

 

“Rolling updates are popular in the Arch community,” said Tim Jester-Pfadt, an Arch contributor. “One nice feature of snaps is support for edge and beta channels, which allow users to opt-in to the pre-release developer versions of software or stick with the latest stable versions”.

 

The beta or edge channels, and the candidate channel, provide a very natural way for developers and their pro users to collaborate on development progress, improving quality and accelerating the pace of releases.

 

A shared app ecosystem

 

“Most vendors target Ubuntu because of its popularity,” said Mark Shuttleworth. “Snaps bring those apps to every Linux desktop, server, device or cloud machine, giving users freedom to choose any Linux distribution while retaining access to the best apps.”

 

The snap format, designed by Canonical, is handled by snapd, a free software project on Github. Porting snapd to a wide range of Linux distributions has proven straightforward, and the community has grown to include contributors from a wide range of Linux backgrounds.
 

Free software on Github

 

The snapcore team drives development of the project and includes developers with a wide range of interests, from IoT to cloud infrastructure, mobile phone and end-user desktop applications.

 

Snap packages are easily created with the snapcraft tool. The home of the project is snapcraft.io which includes a tour and step-by-step guides to snap creation, along with documentation for users and contributors to the project. Snaps can be built from existing distribution packages, but are more commonly built from source for optimization and size efficiency.

 

 

Source

Link to comment
Share on other sites


  • Views 751
  • Created
  • Last Reply

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...