Live data from Hacker News

Snaps are an anti-pattern on Ubuntu

techtudor.blogspot.com

161–170 of 198 posts

Re: Snaps are an anti-pattern on Ubuntu

#161

I had been an Ubuntu user for almost 16 years, on servers, laptops, and recently containers. The snap situation with Ubuntu is just plain unpalatable, both in principal and in practice. I became so disappointed in the move by Canonical that I finally left Ubuntu altogether and no longer recommend it to friends and colleagues. It takes years to cultivate a garden, but only minutes to destroy it.

Welcome to the ranks of "old fogey." :-)

More seriously, this is not an unexpected response if you've been using a system for 10 years or more. If you were new to the system you would just say "oh, interesting, this is how it does self contained packages" but your perspective of having a system you understand well, has worked for all your needs, and you know all the ways in which to work around it if you can't get exactly what you want works against your perception of a new feature.

In my experience it is the leading cause of burnout in engineers. You learn things, you use things, you customize them to your needs, and then the 'new participants' who don't have any experience and find those things "arcane" or "opaque" re-implement them for themselves, their friends, their company whatever. And then its something new and something new gets the exposure so still more people see the 'new' thing without even knowing there was an 'old' thing and its just "the way this feature is done."

As an experienced person it is tiring and bothersome to have to re-implement tool flows, capabilities, and other parts of your environment because some youngster re-invented the wheel yet again and you were not in a place to educate them on why the existing wheel was just fine.

The longer you live the more cycles you go through and the more ridiculous each new re-imagining of how to do 'X' becomes until all you seem to do is complain about how in the previous versions everything worked fine and this new stuff is crap and you aren't going to put up with it.

At which point ageism kicks in and your employer lays you off with mumblings about "not a team player" or "resistant to learning new skills" as if sharpening a knife with a round stone is any different or any better than sharpening a knife with a square one. It is easy to get bitter. It is easy to just roll over and whine with your fellow "oldsters" about the "good old days". It is also a kind of death.

Counter intuitively, I suspect that if companies invested in keeping the status quo engineering salaries would go down. That would result from skills learned as a junior engineer always being relevant to the current environment but increasingly more efficiently applied (as it typical as people get more experienced, they do things more quickly). That minimizes the number of people you need to develop your products and that keeps the number of engineers you need to employ down, so your costs go down and the poor engineers who aren't currently working have to compete more aggressively for available entry jobs by taking a lower salary. Fortunately, because it is counter intuitive I don't think there is any risk of it coming to pass.

In my opinion, the elves have left Middle Earth. Ubuntu and Ubuntu's current cohort of developer/users are more interested in an open source version of Windows than anything else. As a result more and more "windows like" architecture and features are replacing the old "UNIX like" architecture and features.

Re: Snaps are an anti-pattern on Ubuntu

#162
post #122

I had been an Ubuntu user for almost 16 years, on servers, laptops, and recently containers. The snap situation with Ubuntu is just plain unpalatable, both in principal and in practice. I became so disappointed in the move by Canonical that I finally left Ubuntu altogether and no longer recommend it to friends and colleagues. It takes years to cultivate a garden, but only minutes to destroy it.

Same. My go to has been to use Qubes if you at all can, because it's actually secure, and then to use Ubuntu, because it actually works. To me most of the bad reputation of desktop linux seemed to come from people refusing to use Ubuntu for demented reasons... But I have must not have been following distro news at all in recent years, because I only just now learned snap is not fully open. That's quite the cynical wa…

> To me most of the bad reputation of desktop linux seemed to come from people refusing to use Ubuntu for demented reasons...

My experience is completely different. I spent 7-8 years using linux on a laptop about 4 of those using either ubuntu or derivatives, my experience was that after about 6 months it was time to reinstall the OS.

Since I have installed fedora and it has been the most stable and resilient system I have ever used, I have also been treating it badly as an experiment (like powering off randomly if my 50 reddit tabs where causing too much lag) and it has no problems at all.

Currently I am using mostly my office laptop with debian and it has the same issues as ubuntu.

From my point of view I cannot understand why fedora is not more popular.

Re: Snaps are an anti-pattern on Ubuntu

#163
post #107

I think there are some very good critiques of snap (performance, provenance, reproducibility, namespacing, etc), and the first couple points in this article seem reasonable. However I can't agree with this: > apt/deb is a wonderful package management system and everyone is happy with it, at least the majority of Ubuntu/Debian users. Besides, dnf/rpm is also a similar packaging system for Fedora/RH systems and everyon…

> I want all of the QT libs embedded in the package. I don't understand why anybody wants this. Libraries should have major versions and the latest of each major version should be compatible with anything using that major version, because that's what major version means for a library. You might then need to have more than one major version of the library installed, but any two applications using the same one should b…

> I want the proprietary app in a container.

People want containers to be magic but they're actually a hard problem. You want the app not to be able to do anything you don't want it to but still be able to do everything you do want it to.

As I see it the problem that containerization in snaps and similar solution is the isolation of system configuration.

I agree that permissions are an hard problem and honestly I am not sure how much they are relevant for snaps, but what is theory is feasible is that installing a snap could be completely and reversible.

I believe that is true of flatpack at least.

Re: Snaps are an anti-pattern on Ubuntu

#164
post #30

I had been an Ubuntu user for almost 16 years, on servers, laptops, and recently containers. The snap situation with Ubuntu is just plain unpalatable, both in principal and in practice. I became so disappointed in the move by Canonical that I finally left Ubuntu altogether and no longer recommend it to friends and colleagues. It takes years to cultivate a garden, but only minutes to destroy it.

Interesting, what distro did you move to?

I was using Ubuntu since 07, but recently changed my machine to Manjaro and love it.

The AUR is work of genius.

I still build all my containers at work with Ubuntu though.

Re: Snaps are an anti-pattern on Ubuntu

#165
post #10

You people do realize that snaps have been around for 4 years right? It has widespread first party support from various companies including Microsoft, Amazon, Mozilla, Google, Spotify, JetBrains etc... They have wide spread adoption with almost 10x the install base of Flatpaks. Do you guys really need to keep throwing blogs at something which isn't going away and is useful to users? How is this useful in anyway? Cano…

> Do you guys really need to keep throwing blogs at something which isn't going away and is useful to users? How is this useful in anyway?

Personally I find snaps a very disappointing solution to a very interesting problem.

Re: Snaps are an anti-pattern on Ubuntu

#166

I've been unhappy with the direction of Ubuntu for awhile, but having said that it's still the best collection of packages that install with fairly sane defaults for desktop/laptop. I've adopted a model of starting with ubuntu-minimal installation and just installing the debs I want (disable recommended packages by default). This gives me a fairly reliable base from Ubuntu but a system assembled how I want (except sy…

Honest question: why not fedora?

Re: Snaps are an anti-pattern on Ubuntu

#167

....6 years of NixOS, and I kinda forgot remember that elsewhere unprivilaged users and admins can't manage packages the same way.

How is the package situation on NixOS nowadays? Do you find you have to custom install a lot of software or are there native Nix packages for most everything you need?

What kind of learning curve should one expect if migrating from debian/ubuntu based distributions?

Re: Snaps are an anti-pattern on Ubuntu

#168

I had been an Ubuntu user for almost 16 years, on servers, laptops, and recently containers. The snap situation with Ubuntu is just plain unpalatable, both in principal and in practice. I became so disappointed in the move by Canonical that I finally left Ubuntu altogether and no longer recommend it to friends and colleagues. It takes years to cultivate a garden, but only minutes to destroy it.

I don't understand what the big deal is, though. I run ubuntu and I don't run any snaps. This seems to work fine.

If you're using desktop ubuntu, you're using snaps. Run `mount` to see which snaps ubunutu has mounted on your system.

Re: Snaps are an anti-pattern on Ubuntu

#169
post #104

Earlier quoted context omitted.

There are parallels with the Gnome team's stance that "we know what's best for you", and that turns off a lot of linux users. There is a tension between those who wish to turn linux into Mac OS or Windows, and those who want fine-grained control over the workings of their computer. The arrogance of the gnome team and the snap apologists is a huge red flag to me. I don't use Ubuntu or Gnome, and I'm glad linux provide…

Even Windows and macOS provide a higher level of configurability out of the box than Gnome does.

I recently switched all my systems to another desktop environment because an app I needed to run was buggy under gnome and gnome developers in their infinite wisdom decided to remove the setting needed to fix it. Mind you, the setting had existed in gnome shell for years.

What gnome devs seemingly fail to realize is that gnome is only a means to an end (i.e. to run software). People /will/ switch to alternatives the moment that it fails to do it's job. The exact same thing applies to ubuntu.

Re: Snaps are an anti-pattern on Ubuntu

#170
post #163
post #107

Earlier quoted context omitted.

> I want all of the QT libs embedded in the package. I don't understand why anybody wants this. Libraries should have major versions and the latest of each major version should be compatible with anything using that major version, because that's what major version means for a library. You might then need to have more than one major version of the library installed, but any two applications using the same one should b…

> I want the proprietary app in a container. People want containers to be magic but they're actually a hard problem. You want the app not to be able to do anything you don't want it to but still be able to do everything you do want it to. As I see it the problem that containerization in snaps and similar solution is the isolation of system configuration. I agree that permissions are an hard problem and honestly I am…

> As I see it the problem that containerization in snaps and similar solution is the isolation of system configuration.

If you drop your app's config file in /etc/ and nothing ever touches it, isolation isn't really buying you anything. If something does, that could still be what you want to happen.

For example, suppose there is a P2P app that can operate either by having you forward a port from your router (which is not always available) or by operating as a Tor onion service. To do the latter it has to modify Tor's configuration so that it allows incoming connections to the application's port. It's something you want to happen, it's something the package can clean back up again when it's uninstalled, but that doesn't work if the two otherwise independent applications have their configurations isolated from each other.

So it's still the permissions problem.

Post reply on HN