By Matt Hartley
April 25, 2016
Without a doubt, Ubuntu 16.04 is said to be the biggest and most significant release of the distro in years. In my opinion, the reason for this release's perceived significance comes down to one thing – Ubuntu snap packages.
The idea (from the user's perspective) behind snap packages is that Ubuntu enthusiasts can have access to the latest software packages without needing to worry about rushing to a new release of Ubuntu. Obviously, one must have 16.04 or higher going forward, but the general idea stands.
Key point: If Ubuntu can execute this process correctly without any major mishaps, this would change the way we look at desktop packages for Linux.
So what's good about the inclusion of the new snap packages option for Ubuntu? As mentioned above, you'll have access to newer packages without needing to worry about having a distro with the right dependencies. This potentially means access to new application features, bug fixes and application isolation. More on the isolation feature later.
For those of us who have had to wait for a new Ubuntu release just to have access to the latest software, snap packages are a pretty big breakthrough. Previously if you wanted the latest bleeding edge software for Linux, you needed to run a bleeding edge distribution like Arch or a distribution based on Arch.
To be ultimately fair, this isn't the first time this sort of thing has been available for Linux. In the past, there was a project called Klik. Using Klik meant you needed to download and install the Klik client, but the overall concept shared some of the same ideas as Ubuntu's snap packages. Today, the Klik project has evolved into a portable apps concept that is designed to be distribution neutral. The idea being a developer can build their application once and not need to worry about compatibly between distributions.
And of course, there's the promise of security through application isolation. The suggested idea here is that since the application is isolated from the rest of the operating system, the entire application inclusion process can be automated because software security is less of an issue.
If everything goes as planned, I believe Ubuntu developers hope this provides the perfect storm to entice developers and end users alike, to give Ubuntu a serious second look. Besides, if the idea of snap packages does nothing for you, PPAs and deb packages will continue to be supported for the foreseeable future.
One consideration folks with older systems may need to be aware of is that software installation may require more hard drive space. When a new snap application is installed, it's going to require quite a bit more hard drive space than it did in the past. This is because all of its dependencies are included with each new snap package being installed. The one saving grace to this issue is that when an update to an installed snap package occurs, it only adds new dependencies as needed. It'll reuse any of it's original package files if possible.
Still, this is something users need to be aware of. Some would argue that in 2016, hard drive space isn't an issue. I'd counter that they're looking at this through narrow geek goggles and should try looking at the hard drive space available on many older systems. They might be surprised.
My advice is this: take a moment and really examine how much hard drive space you have available. If you're at all concerned and plan on installing a lot of new snap packages, perhaps this is a good opportunity for a new hard drive?
As one might expect, the controversy has already begun. One developer, Matthew Garrett, has already sounded the alarm claiming that "as long as the Ubuntu desktop still uses X11, the snap format provides you with little meaningful security." However, as this article explains, the issue is actually an issue with X11, not the snap format. Speaking for myself, I'm agreeing with the InfoWorld article.
Another potential issue is this isn't going to be rolled out into other distributions, at least not for the foreseeable future. My understanding is that due to the underlying core requirements for snap packages, it's an Ubuntu specific technology at this point. Yes, other distributions are free to adopt some of those core additions into their own releases, but I don't see this happening.
Finally, as I look into my Linux crystal ball, I see snap packages becoming perhaps the single most divisive issue within the Linux community since the debate regarding systemd. The one saving grace with snap is that for now it's an Ubuntu-only technology. So if the idea behind it turns you off, the immediate solution is not to use it. Pretty simple.
Exciting times for the Ubuntu desktop
Putting aside those who would disparage the idea behind snap packages, I find the idea of being able to live in a LTS release of Ubuntu while still having access to the very latest in software to be very appealing.
On the flip side, I do have concerns about potential unforeseen security "gotchas" yet to be discovered. Not because of the X11 comments above, rather due to the automated approval process for snap packages. Perhaps all well be fine with the introduction of new packages, but I believe only time will tell.
Speaking for myself, I find myself cautiously excited. Having tried solutions in the past like Klik, I definitely can see the appeal to such a solution. But my biggest concern is how this is going to be received by the community and whether or not distributions outside of the Ubuntu space will decided to adopt this. At this stage in the game, anything is possible.
What say you? How do you think things with snap packages will work out? Does this add value to the Ubuntu desktop? Maybe you feel like it's a divisive issue that does more harm than good? Whatever your feelings, don't be shy – hit the Comments and share your feelings on the matter.