Pinterest Stumbleupon Whatsapp
Ads by Google

Linux distros support apps in several strict formats. For years, the two most popular have been .debs and .rpms. This may be starting to change.

Ubuntu has Snap packages. Red Hat is pushing Flatpak. Both come with promises of better security and easier deployment across many distros. But what are they, and which should you use?

Snaps and Flatpaks: Background

We’ve explained Ubuntu snap packages in-depth before How Ubuntu 16.04's New Package Format Makes Installing Software A Snap How Ubuntu 16.04's New Package Format Makes Installing Software A Snap In version 16.04, Ubuntu is hoping to strike a balance between having stability and staying up-to-date, with a new way to install apps. Let's find out how "snaps" work. Read More . They began as click packages, which Canonical developed to distribute apps for Ubuntu Touch. These packages contain application binaries and dependencies, everything they need to run.

Despite being announced only last month, Flatpaks aren’t quite so new. They began under a different name, xdg-app. Flatpak comes from GNOME developers, namely Alexander Larsson, Principal Software Engineer at Red Hat.

SnapVsFlatpak-Garrett-LeSage

Flatpak isn’t a company-sponsored project. No matter. Now Red Hat and Fedora are pushing its adoption.

Ads by Google

Similarities Between Snap and Flatpak

The idea behind both Snap and Flatpak is to provide Linux with a universal package format. If you have the Snap framework installed, you can run any Snap package. The same concept is true for Flatpak.

Snap and Flatpak packages come with security benefits. They are sandboxed What's A Sandbox, And Why Should You Be Playing in One What's A Sandbox, And Why Should You Be Playing in One Highly-connective programs can do a lot, but they're also an open invitation for bad hackers to strike. To prevent strikes from becoming successful, a developer would have to spot and close every single hole in... Read More . Apps can only see themselves and parts of the computer they have permission to see. This isolation prevents software from easily damaging other parts of the system.

SnapVsFlatpak-How-Flatpak-Works

The situation isn’t foolproof. The X11 window system used by most Linux distros limits the security of both formats. This should change once the Wayland and Mir display servers How To Try Wayland, A New Display Server For Linux How To Try Wayland, A New Display Server For Linux Linux distributions will soon get a new display server called Wayland. Let's take a look at Wayland, and see how you can try it out right now. Read More are ready for primetime.

Differences in Packages

Snap packages will work on mobile devices, PCs, and servers. Flatpak is geared specifically for desktops. The latter runs inside a desktop session. It depends on certain services that are not necessary components of a server.

While snaps contain most of what they need to run, Flatpaks depend on “runtimes.” An app may require GNOME 3.20, for example. But installing the GNOME 3.20 runtime should be easier than chasing down every single file dependency like we do today.

SnapVsFlatpak-Runtimes-Libraries-Sandboxes

Canonical is creating a dedicated store for distributing snaps. The company encourages developers to submit their apps. This is akin to the experience on mobile devices. People who don’t want to rely on Canonical can opt to start a store of their own.

Flatpak packages come via repositories like existing Linux software. Anyone familiar with an Ubuntu PPA has an idea what to expect here.

While both packages isolate apps, Flatpak is designed to work with SELinux. If you use that program to block out unwanted behavior, Flatpak may be the better format for you. Plus it’s standards compliant, supporting the Open Container Initiative.

Downsides

You don’t have to choose between Snap and Flatpak at the moment. Neither is ready for prime time. You can install either one right now, but the process isn’t all that straightforward. Canonical and GNOME are working to make their respective formats easy to install without the command line, but that time has not yet come.

Then there’s the issue of adoption. The format doesn’t matter all that much if the application you want isn’t available. The popular LibreOffice suite Is LibreOffice Worthy of the Office Crown? Is LibreOffice Worthy of the Office Crown? LibreOffice is the king of free office suites. It's unlikely to replace Microsoft Office in a business environment, but it's an excellent alternative for casual users. Here's what's new in LibreOffice 5.1. Read More already supports both (you can download the Flatpak directly from the website), but only time will tell what other projects choose to do.

SnapVsFlatpak-Snaps

Some would say that a downside to both is choosing to make yet another universal package format, when alternatives already exist.

Are There Any Other Alternatives?

Snaps and Flatpaks aren’t the only options out there. They’re not even the first. The AppImage format is available today, and it supports all of the most popular distros. It’s a continuation of klik, which originated in 2006. Though it’s worth noting that AppImage doesn’t have the same security as Snap and Flatpak.

SnapVsFlatpak-AppImage

OrbitalApps are another form of universal apps for Linux, though these are designed to launch from a flash drive. View them as the Linux alternative to PortableApps PortableApps.com Suite: The Best Portable Applications Manager & Database PortableApps.com Suite: The Best Portable Applications Manager & Database Portable applications are no secret – they have grown in popularity as their benefits continually become more well known. PortableApps.com should be given a lot of credit for this. Sure there are several portable application... Read More , which was also based on Klik. Using the ORB Launcher, you can run OrbitalApps on any Linux computer, the idea goes.

SnapVsFlatpak-OrbitalApps

Does the Future Look Bright?

You don’t need to choose between Snap and Flatpak right now. Those who have taken the time to install either one find that right now, there isn’t much to see. You can install both to your machine today, but unless you’re a developer or tester, there isn’t much point.

For now, this is largely a choice between approaches, ideas, and communities. Do you prefer software backed by Canonical or GNOME? Which do you trust to play along better with the broader open source ecosystem? Which do you picture other distros being more willing to adopt? Should everyone have just adopted AppImage instead? Share your perspective in the comments!

  1. extraymond
    July 30, 2016 at 1:59 am

    http://www.omgubuntu.co.uk/2016/06/snap-to-be-universal-linux-package-format
    http://snapcraft.io/

    Speaking of snap packages, it's not a lock-in feature only to ubuntu. As you can see, arch, fedora and etc are supported too. I believe the same might be true in the future for flatpacks.

    I believe appimages didn't get more popular because in the time it was introduced, we didn't expect so much apps being built and constantly pushed for smart devices which didn't prime back in 2006. It now makes total sense to have micro updates via sandboxed packages for iot, developer boards, smart devices and more form factors.

    The software war wasn't always about politics or tech competition. To what it is now, sometimes it's because of the environment we're in, or the scenario as users can comprehend.

  2. fcd76218
    July 27, 2016 at 12:02 am

    Snaps and Flatpack are two competing proprietary "universal" standards. Snaps works only on Ubuntu-based distros and Flatpack works only on Fedora-based ones. So far no other distro developers are eager to adopt either "standard" and/or assist in its development. Instead of developing proprietary standards, Canonical and Red Hat should add their efforts to the development of AppImage which has been around for few years already. Red Hat might be persuaded to join the AppImage experience. Canonical, however, will never cooperate with anybody else. In that they are like Microsoft in that they want to impose their standards on everybody else.

Leave a Reply

Your email address will not be published. Required fields are marked *