Adios Apt and Yum? Ubuntu's Snap Apps Are Coming To Distros Everywhere (arstechnica.com)
An anonymous reader shares an Ars Technica report: Ubuntu's "snappy" new way of packaging applications is no longer exclusive to Ubuntu. Canonical today is announcing that snapd, the tool that allows snap packages to be installed on Ubuntu, has been ported to other Linux distributions including Debian, Arch, Fedora, and Gentoo among others. To install snap packages on non-Ubuntu distributions, Linux desktop and server users will have to first install the newly cross-platform snapd. This daemon verifies the integrity of snap packages, confines them into their own restricted space, and acts as a launcher. Instructions for creating snaps and installing snapd on a variety of distributions are available at this website. Snaps can exist on the same system as either deb or RPM packages. Snaps aren't the only new package manager for Linux distributions that aims to simplify installation of applications. There's also AppImage and OrbitalApps.
Hay, finally a universal app for Linux!
Adios to tried and true package managers, hello dependency and network/firewall hell as you try to resolve conflicts between the different sources?
In the year 2016, where can I, a long time Linux user, get a decent UNIX-like Linux distro?!
What I mean by that is a Linux distro that follows the UNIX philosophy of simplicity, doing one thing well, openness, and modularity.
All of the major distros today, including conservative ones like Debian, are rife with systemd, GNOME 3, now this "snap" crap, and all sorts of other shenanigans that violate the UNIX philosophy.
I don't want to use a goddamn relic like Slackware, either. I guess what I want is Debian, but just before systemd was forced on Debian users. So a distro that's sensibly conservative, that's reliable, that works, and that follows the UNIX philosophy.
And don't even bother suggesting Devuan. It's a terrible, terrible joke of a distro in my experience. Conceptually it's what I'd want, but in practice I've found it to be a total shitfest.
At this point I don't think I'll have any choice but to use FreeBSD. Yeah, it's not Linux, but I don't think that I even care about using Linux at this point. I need a UNIX-like system, and if FreeBSD can deliver (and all of the evidence suggests that it can!) maybe I should just say to hell with Linux and use FreeBSD instead.
When I first tried Linux, I didn't understand the repository system. I had been so used to the Windows .exe files I didn't understand downloading my programs from a single secure repository. One day, it clicked. The repository system is so much better. No more worrying about compatibility, or someone adding malicious software to my programs. It all comes from one secure repository and is known to be compatible with my system.
In fact, that model works so well, Apple and others now use the same model. They call it an "App Store". I've even heard rumors that Microsoft wants to switch to this model
So, why is Linux going back to the old, and inferior way of doing things?
One of our competitors trademarked the term "hypothesis". From now on, we will call them "boneheaded ideas".
1) DEBs and RPMs aren't going anywhere; they serve different functions from Snappy Core. Snaps are better for servers that require zero downtime because they prevent ABI breakage as packages are updated asynchronously. DEB and RPM are better for desktop, mobile, and less-important servers because they take up monumentally less room (because you don't have to have a million versions of the same dependency installed at the same time).
2) As TFS indicates, Snaps can coexist with all the other packaging tools (apt, dnf, yum, zypper, slapt, portage, pacman, etc.).
3) A large percentage of the Linux community are [a] too suspicious of Canonical to ever adopt any of their technologies and [b] conservative to the tried-and-true methods of doing things. apt will probably live forever on account of that.
...that the answer to any question posed in a headline is "No".
I'd be all for a single consistent package management system for Linux that everyone could get behind. This isn't that. This is just a third option everyone's going to have to deal with.
Et tu, Gentoo? Then fall Linux
Snapd seems to be spreading with the same wildfire potential that systemd did. I hope I'm cringing over nothing in this case and snapd will only be an optional package management system (so far it sounds like it). But I'm leery. Systemd fractured a lot of distros with the "my way or the highway" attitude they had over it. I managed to avoid it on my servers where just about everything run on it right down to the compiler time sharing are background user processes. If even more distros move on pushing snapd in the same way it may finally be time for me to look into one of the Beasties to migrate to... either way, there's going to be a lot of workflows that will need analysis for migration one way or the other.
We all know this technology won't really be mature until "snap management" is fully subsumed and integrated into systemd, where it belongs.
Welcome to the Panopticon. Used to be a prison, now it's your home.
And i think i speak for us all when I say I'll be in the cold cold ground before i ever trust some bull-shit packager repository more than portage. Shuttleworth can eat my ass like groceries.
Good people go to bed earlier.
Seems like all my /. posts have been crabby, complacent, old-hat UNIX/Linux sys-admin ranting as of late. F me I need to lighten up...
With that out of the way, I do have to say: Who said that installing packages was hard on a *NIX platform that we needed snapd to solve this? I'm sorry, I really think package repositories like apt/yum are gosh-darn God-sends when set up, populated, built and maintained correctly. I use them in-house and it really makes deployment, configuration management, deployment and all that stuff most people care about, well, easy. Why would I need 'another' package manager to sit 'alongside' my existing one to do updates? In regards to RPM based distros, isn't that what drpms and alike were suppose to solve? And not to mention you can checksum, roll-back, push/pull version specific, ect.
This just sounds like yet another shitty reinvention of wheel idea with YOLO douchey distro dev backers that I'm going to see take over yet another great part of Linux distro's as we know it --- I thought enough was enough with systemd.
Its main purpose is for servers that require zero downtime, where you want to upgrade application X and/or its dependencies without breaking even the smallest functionality of application Y.
I disagree, snapd is Canonical's attempt to bring an android/ios like 'app universe' to their linux OS. Unfortunately if it succeeds, I also forsee it bringing the in-app advertisements and micro-payments mess :(
It is trivial to avoid GNOME in every distro I've looked at. I really dislike GNOME 3, and as a result I avidly avoid anything by the GNOME team. I've had no problem doing this! It is really easy to never touch GNOME.
SystemD is not a deal breaker for me, but I would avoid it if it were easy to do so. It does not appear to be. Slack and Gentoo can function just fine with any other init system, and Devuan will hopefully eventually scratch that itch. If the requirement is "no systemd", you are ultimately going to be doing some kind of integration right now. I figure at some point there will either be a distro without systemd, or systemd will have had enough fixes shoved down its throat that using it is fine.
I think ultimately the community has been taken by surprise at the massive surge in most distros toward systemd. Different distros have all kinds of diverse things under the hood, different package managers, different locations for stuff, etc. But systemd just swarmed over everything, it seems really odd.
There's no contradiction.
1) Systemd and GNOME 3 aren't the only "modern technologies" out there. They are among the most anti-UNIX-philosophy ones. There are other modern init systems and desktop environments that do follow the UNIX philosophy, we just see the major distros treat them as second-class citizens, although they're typically superior to systemd and GNOME 3.
2) The point of using a mainstream distro is to get access to the wide community support network and the benefits it brings, including more testing of releases and quicker bug/security fixes.
3) The whole point of using a Linux distro is to avoid having to roll your own! In the past there used to be choice among the major distros. Debian is what you used when you wanted a system that worked. SuSE is where you went if you liked KDE. Ubuntu is where you went if you wanted a Windows-like experience. Fedora is where you went if you wanted to subject yourself to Red Hat-produced shit.
I know you're intentionally ignoring the real problem here: the fact that the major Linux distros have converged to the point where they're nearly identical. Worst of all, they've chosen to converge on software that exhibits a very anti-UNIX approach, such as systemd and GNOME 3.
Today, a modern Linux distro installation is closer to Windows than it is to anything resembling UNIX. The Linux userland has become a cheap imitation of Windows in so many ways, from the GUI down to the init and service management systems.
If you want a Linux distro that doesn't use systemd, you have a lot of options. But your complaint seems to be that that most of the Linux community has moved away from your preference. Well I'm sorry princess that you're not in the majority anymore, so either get comfortable in the minority, get your hands dirty with the majority, or do the work getting things exactly how you want them. But I'm not terribly sympathetic to your complaints if you're sad that the rest of the world isn't 100% empathetic to your desires, sparing you from the work of making your own perfect distro to your preferences.
At least I can understand the systemd complaining, because most distros don't support sysvinit or upstart anymore. But I really don't get the GNOME 3 bitching. I hate it just as much as you do, but literally every single one of the big distros (so that's Ubuntu, Fedora, openSUSE, Debian, CentOS, Arch and Gentoo) support alternatives.
Old does not mean bad.
Slackware is old, but certainly not a relic. And boasts a stability track-record that most other distros simply do not match. It not only adopts the unix philosophy, but embraces it so fully that the only comparable distros to it in this regard that I know of are Arch and Gentoo. Gentoo is a bit of a bitch because you have to compile everything, which can take a long time when doing system updates, and Arch is regretfully somewhat less stable than Slackware because it updates its packages so frequently (although if you are willing to risk some stability in the interests of running the bleeding edge versions of all available packages, Arch might be right up your alley).
But slackware is still being actively maintained, despite having longer release cycles than most other distros. Slackware is at a release candidate stage for 14.2 in slackware-current at the moment, and I'd be honestly quite surprised if 14.2 wasn't released sometime this summer or fall.
File under 'M' for 'Manic ranting'
What we actually see is that the Linux distro maintainers have moved away from the preference of the Linux community.
That's why there has been such a huge uproar about systemd. Systemd is not what Linux users want. It's what Red Hat wants.
As we saw from the debacle around forcing systemd into Debian, systemd may make the maintainers' lives easier, but it absolutely ruins the Linux experience for the users.
People using a Linux distro in the first place don't have time to be rolling their own. So they're moving to FreeBSD, OS X, and even Windows, because Linux distros now deliver an experience that's worse than all three of those.
The fact that Linux is at, what, 1% or 2% of the desktop market, despite the massive opening that Windows 8 and even Windows 10 have left for it, just goes to show how modern Linux isn't what people want.
The resurgence of FreeBSD, fueled mainly by Linux refugees, further reinforces the idea that modern Linux isn't what server users want, either.
I really hate to say this, but traditional Linux distros are all withering away. They're a lot like Firefox. They have some momentum which makes them appear relevant, but the long term trend is a very negative one, with them becoming irrelevant not too far into the future. At least Firefox had 30% or more of the market at one point. Linux distros never got that far!
That run in some sort of 'restricted' space? Fine. But what about all the other components of a Linux distro that aren't apps, can't run in a restricted space and will never be ported to the Snap model?
I think apt, yum and their kin will be around for a long time. Snap sounds like an environment written for people like the ones that thought Microsoft Windows Metro apps would be all that users would need.
Have gnu, will travel.
You recall a kerfuffle over the fact that if you use X11 on a system you are no more secure than X11 is (which is to say, not very). Snaps do not allow one single system-wide X11 server, so that particular flaw is avoided.
Disclaimer: I've been using Gentoo since 2002/2003.
I agree that Gentoo's build process is cumbersome, especially on slower processors. This is a lot less of an issue now as compared to when I started using it in '02/'03, when I probably had five-year-old hardware then. Larger packages like Firefox and LibreOffice have always had a binary package to install. (On my 2002-era machine libreoffice would take something like 9 hours to compile.) My machine now, which is around 8 years old compiles this same package in a bit over an hour.
However, Gentoo also has another huge benefit, and that is customizing packages to your needs using USE flags. These toggle build-time options, so as an example, when heartbleed came out I was able to remove the offending tls heartbeat component using a USE flag and rebuild the package until a fix was made available.
Another thing I've discovered is if you have similar hardware and similar configurations you can tell portage to build binary packages. If you share this directory via nfs export you can instruct portage to favour binary packages when all use flags and other build-environment options are the same. This has saved my poor celerons on my MythTV frontends quite some compile time.
Soon the software vendors will be shipping snap and flatpak packages, so you can run which every distro version you want :-)