73
Ubuntu Snap Hate (lemmy.world)
submitted 1 year ago by Tekkip20@lemmy.world to c/linux@lemmy.ml

I've gathered that a lot of people in the nix space seem to dislike snaps but otherwise like Flatpaks, what seems to be the difference here?

Are Snaps just a lot slower than flatpaks or something? They're both a bit bloaty as far as I know but makes Canonicals attempt worse?

Personally I think for home users or niche there should be a snap less variant of this distribution with all the bells and whistles.

Sure it might be pointless, but you could argue that for dozens of other distros that take Debian, Fedora or Arch stuff and make it as their own variant, I.e MX Linux or Manjaro.

What are your thoughts?

top 50 comments
sorted by: hot top controversial new old
[-] refalo@programming.dev 74 points 1 year ago* (last edited 1 year ago)

The server is proprietary and last I checked you can't even turn off auto-updating or verify the binaries they push to you.

https://www.zdnet.com/article/linux-mint-dumps-ubuntu-snap/

In the Ubuntu 20.04 package base, the Chromium package is indeed empty and acting, without your consent, as a backdoor by connecting your computer to the Ubuntu Store. Applications in this store cannot be patched, or pinned. You can't audit them, hold them, modify them, or even point Snap to a different store. You've as much empowerment with this as if you were using proprietary software, i.e. none. This is in effect similar to a commercial proprietary solution, but with two major differences: It runs as root, and it installs itself without asking you.

[-] jodanlime@midwest.social 16 points 1 year ago

This is why I don't love snaps, proprietary backend. I think snaps actually work great for the most part, and flatpaks don't support cli apps, only GUI.

[-] zephr_c@lemm.ee 26 points 1 year ago

I don't know why people keep saying that flatpaks don't support cli apps. They do. I know it's awkward to type out flatpak run io.github.zyedidia.micro or whatever every time you want to use a text editor, but aliases fix that pretty neatly, and that example wasn't hypothetical.

[-] d_k_bo@feddit.de 14 points 1 year ago* (last edited 1 year ago)

You don't even need to create aliases yourself. Flatpak creates wrapper scripts for every app that you install. Just symlink them into your PATH.

ln -s /var/lib/flatpak/exports/bin/org.example.CliTool ~/.local/bin/cli-tool

or if you are using a user remote

ln -s ~/.local/share/flatpak/exports/bin/org.example.CliTool ~/.local/bin/cli-tool

(Note: some lemmy clients render the the tilde in code blocks incorrectly)

load more comments (1 replies)
[-] clmbmb@lemmy.dbzer0.com 11 points 1 year ago

What? I've used neovim flatpak without issues in Fedora and openSuse...

load more comments (1 replies)
[-] boredsquirrel@slrpnk.net 72 points 1 year ago* (last edited 1 year ago)
  • proprietary server (snap store), unlike flatpak
  • snapd only allows one server (but it is foss so you could just patch it), unlike flatpak
  • nonexistent security on snap store, multiple times malware, unlike flatpak
  • no sandboxing without apparmor and specific profiles, so not cross platform, unlike flatpak
  • the system apps are also requiring apparmor, so not cross platform
  • they lack granular permission systems afaik
  • they concur with flatpak, which is horrible as we need a universal packaging format, not 3
  • seemingly no reproducible builds?
  • no separation between all, opensource, verified repo, unlike flatpak
  • they pollute the mount list with all the loop devices

And people complain abour resource usage etc, but that is just separating apps from the system. Flatpak does the same.

[-] hperrin@lemmy.world 21 points 1 year ago

You forgot also snaps pollute both the mount list and the path. Whether you like or dislike the second is up to opinion, but nobody likes the first.

[-] possiblylinux127@lemmy.zip 4 points 1 year ago

Not to mention the extremely complicated back end. Flatpak doesn't need extra permissions because it is based on bubblewrap. Snap is doing its own thing which is incredibly complicated.

load more comments (5 replies)
[-] skilltheamps@feddit.de 36 points 1 year ago

Research what happened to Upstart, Mir or Unity. It won't take long until snap becomes one of them. Somebody at canonical seems to desperately obsess over having something unique, either as a way to justify canonicals existance or even in the hopes of making the next big thing. Over all these years they never learned that whatever they do exclusively will always fall short of any other joint efforts in the linux world, because they always lack the technical advances, ability/will to push it for a prolonged time and/or the non-proprietary-ness. So instead of collaborating like every serious linux vendor, they're polluting their distro with half-assed, ever changing and unwanted experiments. They're even hijacking apt commands to push their stupid snap stuff against the users intent. With the shengians they're pulling Ubuntu cannot be relied on, and with that they're sabotaging their own success and drive away any commercial customers that generate revenue.

[-] boredsquirrel@slrpnk.net 9 points 1 year ago

Lets hope so

load more comments (1 replies)
[-] ace@lemmy.ananace.dev 33 points 1 year ago

Well, things like the fact that snap is supposed to be a distro-agnostic packaging method despite being only truly supported on Ubuntu is annoying. The fact that its locked to the Canonical store is annoying. The fact that it requires a system daemon to function is annoying.

My main gripes with it stem from my job though, since at the university where I work snap has been an absolute travesty;
It overflows the mount table on multi-user systems.
It slows down startup a ridiculous amount even if barely any snaps are installed.
It can't run user applications if your home drive is mounted over NFS with safe mount options.
It has no way to disable automatic updates during change critical times - like exams.

There's plenty more issues we've had with it, but those are the main ones that keep causing us issues.
Notably Flatpak doesn't have any of the listed issues, and it also supports both shared installations as well as internal repos, where we can put licensed or bulky software for courses - something which snap can't support due to the centralized store design.

load more comments (2 replies)
[-] liforra@endlesstalk.org 32 points 1 year ago

I hate snap, because their store is proprietary and i think forcing something with a proprietary store on you is microsoft level shit which is why i left in the first place.

Also i dont like being "forced", theyre doing that a little with the apt install sometimes going to snap install

[-] VinesNFluff@pawb.social 31 points 1 year ago* (last edited 1 year ago)

Imma be honest. I never used Snap. I had left ubuntu long before they started rolling it out.

That said, hearing they redirect apt calls to snap instead feels -- A bit too microsofty for my tastes

Like, when you use a flatpak (or even a snap!) in a non-ubuntu distro, you're not forced to use it. And if the same package exists on both the repo and on flatpak/snap, you CAN choose to get it from any of the three sources. Forcing people into snap is weird and scummy.

I have heard that snap is slower than flatpak, but also that it can do some stuff flatpak cannot, but again, didn't test enough to know it.

[-] octopus_ink@lemmy.ml 10 points 1 year ago* (last edited 1 year ago)

That said, hearing they redirect apt calls to snap instead feels – A bit too microsofty for my tastes

I also haven't been with an Ubuntu based distro for awhile, but I've got a lot of affection for Canonical generally. I even accepted the idea of the amazon-in the-dash-thing (which had a lot of folks sharpening pitchforks some years back) as being kind of an honest mistake - so excited that they could that they didn't consider if they should, sort of.

But yeah, that's exactly what it feels like with snaps, and for that specific reason.

[-] lemmyreader@lemmy.ml 29 points 1 year ago* (last edited 1 year ago)

Personally I think for home users or niche there should be a snap less variant of this distribution with all the bells and whistles.

There is : Linux Mint

[-] EveningNewbs@lemmy.world 13 points 1 year ago

Pop OS too.

[-] MyNameIsRichard@lemmy.ml 24 points 1 year ago* (last edited 1 year ago)

In addition to what's already been said, Canonical have a history of starting grandiose projects and then abandoning them a few years later. See Mir, Unity, and Ubuntu Touch for examples.

[-] possiblylinux127@lemmy.zip 4 points 1 year ago

They are like Google as they kill the popular or useful projects and keep the hated ones.

[-] kylian0087@lemmy.dbzer0.com 24 points 1 year ago

For me it is partially the way canonical pushes snaps and forces it on to users. More so they are slow and the proprietary back end is a huge downside. Some snaps are know broken and cause more harm then good like the steam snap for example. Steam actively discourages users from even using it.

[-] nfsu2@feddit.cl 20 points 1 year ago

I think most people hate Snaps because Ubuntu is replacing .deb packages with snaps with no user prompt and that is a cardinal sin in Linux against the freedom and power of the user. Being "bloated" can't help either when package maintainers do all what they can to ship programs light and simple. So it goes against at least two Linux principles.

[-] Jestzer@lemmy.world 20 points 1 year ago

I would hate snaps a lot less if Ubuntu just stopped trying to force me to use them.

[-] possiblylinux127@lemmy.zip 6 points 1 year ago

If it was a cool optional thing they were experimenting with it might be different. The problem is that it was forced onto the desktop

[-] Revan343@lemmy.ca 18 points 1 year ago

Snaps are proprietary, flatpacks are not, is the long and short of it

[-] boredsquirrel@slrpnk.net 5 points 1 year ago

They are not. But the store is proprietary and snapd doesnt allow other stores. You could patch snapd to allow other stores though and the format is open

[-] d_k_bo@feddit.de 18 points 1 year ago

Snaps are just as “open source” as “Office Open XML” (.docx, .pptx etc.) are open file formats.

If there isn't a fully open source software stack, it isn't really open source.

[-] rotopenguin@infosec.pub 16 points 1 year ago

You can't "just patch it" to make snap work with another store. Instead what you've done is invented an entirely different store, which you're now going to have to maintain. It is never going to be upstreamed to Canonical. You are going to be in a perpetual tug-of-war with Canonical driving snap development towards their own needs and not your own.

load more comments (1 replies)
[-] possiblylinux127@lemmy.zip 4 points 1 year ago

The store is SaaS (service as a software substitute) and not necessary proprietary

[-] wiki_me@lemmy.ml 17 points 1 year ago

Calling it hate is an exaggeration , people are entitled to their opinion and informing other people by criticizing snap.

Another advantage not mentioned is that snap is a product of canonical (a for profit company talking about an IPO for years), flathub is managed by the gnome foundation (a US registered non profit, which should provide some legal protection).

[-] possiblylinux127@lemmy.zip 5 points 1 year ago

I could care less about legal status. In fact, I think it would be cool to have a profitable software center that was able to allow for projects to get more funding.

load more comments (2 replies)
[-] Wispy2891@lemmy.world 17 points 1 year ago

I especially hate how it ruins the df -h command. Install a dozen snaps and it becomes unreadable

load more comments (2 replies)
[-] bloodfart@lemmy.ml 13 points 1 year ago

they both suck.

[-] aaravchen@lemmy.zip 13 points 1 year ago* (last edited 1 year ago)

When I install this snap am I getting a kernel driver, a native raw binary, or a containerized user application that conforms to a communication interface? Who knows! They're all mostly undifferentiated in the store.

What about a third party store? Only if you fork the snap daemon and change the hard coded URL. And good luck with that mandatory Canonical contributer agreement you have to sign.

Want to pick when your apps update? Nope. That's the official stance. They will never support that. But here's a way to manually block network access to the daemon if you really really need to. But then everything will update at once when you give it access again.

Want a specific version of a snap? See above. Explicitly will never be an option.

"I guess there's a fee to pay to get access to quality apps." Incorrect. There is no real vetting process for what's added to the store, there's barely even minimal checking that you're not overwriting someone else's snap. You do have to sign the Canonical contributor agreement, and setup an identity to submit as, but even if your snap is proven to be malware there a good chance it will stay in the store, or can be immediately re-uploaded.

load more comments (1 replies)
[-] bigmclargehuge@lemmy.world 11 points 1 year ago

I'm personally not a fan of any universal packaging solution. I've tried flatpaks, appimages, and snaps, and ran into weird, annoying issued that I just never have when I install via package manager, build from source or even just run a portable build of an app.

I see the appeal of a universal package, but imo a bigger emphasis on portable native builds would solve a lot of the issues these packaging solutions are aiming for, while not introducing many of the downsides

[-] bloodfart@lemmy.ml 11 points 1 year ago

snapdeez nuts

[-] vhstape@lemmy.sdf.org 9 points 1 year ago

I read a comment on Reddit a while back that pointed out how much of the open source community has no issue hosting projects on GitHub while also lampooning Snap for having a closed-source backend server. However, since Snap (and GitHub) are open source themselves, nothing is stopping curious and concerned users from auditing the codebase or hosting their own servers. I removed Snap from my Ubuntu installation and use Flatpak instead, but I do not hate Snap. And for what it's worth, I always go for the native DEB when possible...

[-] moonpiedumplings@programming.dev 21 points 1 year ago

What? Github is not open source.

And plenty of people have issues with Github: https://sfconservancy.org/GiveUpGitHub/

their entire hosting site is, itself, proprietary and/or trade-secret software

[-] SnotFlickerman 15 points 1 year ago* (last edited 1 year ago)

I really think people get confused between Git, the open source application, and Github the non-open-source online code repository.

Part of the reason they probably think they are one and the same is how often Git is used in command line to clone a Github repository locally.

Gitlab is open source and self-hostable, to my knowledge.

[-] TimeSquirrel@kbin.social 9 points 1 year ago

I heard a good comparison on here a while ago: Github is to Git as Pornhub is to porn.

load more comments (1 replies)
load more comments (2 replies)
[-] DumbAceDragon@sh.itjust.works 6 points 1 year ago* (last edited 1 year ago)

Lost a couple hours of work on the snap version of krita since it couldn't save the file for some reason. Switched away from Ubuntu as a whole after that experience.

[-] possiblylinux127@lemmy.zip 6 points 1 year ago

I remember back in 2018 when they forced snaps on everyone despite them being broken.

I had recently updated to the new 18 or 19 release and I was installing a command line tool. I did apt install and then it called snap which then didn't work. Snaps are broken by design as they way the handle software is problematic. They put everything into mounted volumes and the sandboxing isn't terribly robust. It really doesn't help that they force you to use it.

[-] delirious_owl@discuss.online 6 points 1 year ago

I use apt because I care about security

[-] kylian0087@lemmy.dbzer0.com 11 points 1 year ago* (last edited 1 year ago)

Sudo apt install Firefox

Ubuntu then installs the snap version.

load more comments (3 replies)
[-] avidamoeba@lemmy.ca 5 points 1 year ago* (last edited 1 year ago)

I like snap. On Ubuntu, it does everything Flatpak does and it can also do system components. It's a system that allows to build a complete OS with the benefits of Flatpak. It's a fairly well designed system and it came earlier than Flatpak. It works well for Ubuntu and its developers. There's a lot of misinformation around it and the wider community seems to have jumped on the Flatpak wagon. That means we're unfortunately gonna get mixed classic-base (deb, rpm) with Flatpak apps OSes in the longer term, instead of full Snap OSes. That's a lame compromise but it is what it is. Not the first time the Linux community chooses technically interior tech for ideological reasons. Ultimately we use other people's labor so we get what they decide and that's alright. Classic core plus Flatpak is still way better than the all-classic status quo so I ain't mad.

[-] SnotFlickerman 5 points 1 year ago* (last edited 1 year ago)

So like... I understand the why behind flatpaks and snaps, but I'm an end-user, and more often than not they just make things more difficult, in my opinion.

They're really great for server setups for sort of keeping each individual application from being able to deeply influence other applications or the root filesystem.

But this means if I installed the Spotify snap (at least when I last tried a few years ago) I had to jump through a bunch of hoops to get it to be able to access my media files where all my music was stored.

So like I said, great for out-of-the-box-server setups where the everything is a little separated from each other (kind of like Docker, from what I understand, but at the app-level? I could be wrong here.) because it helps default security settings and interactions from getting confusing quickly.

However, for your casual end-user, it can quickly become a confusing nightmare if you actually do need your applications more easily interacting with one another because you're just trying to write an email.

Anyway, that's my personal opinion: The reasons they exist server-side are pretty solid, but the reasons they exist on desktops for the end-user are less compelling and often result in user frustration.

[-] BananaTrifleViolin@lemmy.world 7 points 1 year ago

I've found the opposite as an end user with Flatpaks. It makes it easy to install an app on multiple devices with different Linux flavours and it'll just work.

Even if you're on a single device, if the app isn't in your repo or the latest version is not available in the repo, then flatpak can be very convenient. Certainly easier than compiling from source.

It is secure in the sense that it runs in a sandboxed environment with its own libraries. The downside of that though is bloat as you will have duplicates of libraries you already have on your system downloaded for flatpak. That bloat diminishes to an extent the more apps you use as the apps will share and reuse the Flatpak downloaded libraries, but your first app could be 2gb just because of the libraries and dependencies.

That bloat also extends to memory - you might be running two copies of multiple libraries at a time - one for the native system and another for the Flatpak app.

So on the one side it's convenient and allows distributions across all flavours of Linux, and it sandboxes apps which is potentially more secure but the downside is bloat, and resource use.

Ubuntu have gone too far with Snap, forcing it instead of providing native apps, and it's proprietary. Flatpak is more open and an option for users rather than forced on them.

load more comments (1 replies)
[-] Shareni@programming.dev 5 points 1 year ago* (last edited 1 year ago)

They're really great for server setups

Please don't go anywhere near servers with either of those, that's what docker and alternatives are for.

the reasons they exist on desktops for the end-user are less compelling and often result in user frustration.

Try running a stable distro without them. If you want a program not to be years out of date, and don't want to compile everything manually, the only options are to use an alternative package manager (flatpak/snap/nix/etc.), distrobox, or appimage + some pm for updates.

However, for your casual end-user, it can quickly become a confusing nightmare

They're a lifesaver for casual users, especially when they're integrated into a gui (software centre and discovery for example). None of the other options are nearly as user friendly.

Permission issues are really rare and distro specific from my experience. Also there are tools like flatseal to make fixing them easier.

[-] Bitrot@lemmy.sdf.org 5 points 1 year ago* (last edited 1 year ago)

I hate snaps and how they pushed them on desktop users, but they’ve always been intended for servers, it’s one of the reasons they can ship things like unified kernel images. Ultimately they allow for a modular immutable system, potentially much more flexible than some others like Silverblue or Fedora Atomic stuff.

What they can do is pretty neat, but their “transitional” deb packages for normal users were ridiculous and should never have happened.

load more comments (1 replies)
load more comments (1 replies)
load more comments (1 replies)
load more comments
view more: next ›
this post was submitted on 23 Apr 2024
73 points (100.0% liked)

Linux

56953 readers
441 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS