this post was submitted on 14 Oct 2024
179 points (96.4% liked)

Technology

59559 readers
3439 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] openrain502r 12 points 1 month ago (2 children)

Insert witty comment on how Snap is apparently the worst thing on Earth

(I don't use Linux. Why's it so hated?)

[–] loutr 4 points 1 month ago* (last edited 1 month ago)

I used Ubuntu at work a couple of years ago. When they announced the switch to snaps I didn't really care, but when they switched Firefox to the snap version it had quite a few issues like really slow startup, inconsistent theming, and problems with some extensions. So I uninstalled the snap, installed the standard DEB and went on with my work.

But then the issues came back, and it took me some time to figure out they had replaced the actual DEB package with an unholy shim which just installed the snap. THAT really pissed me off, so when I got a new laptop I just installed Arch and my only regret was not doing it sooner.

[–] [email protected] 2 points 1 month ago* (last edited 1 month ago) (2 children)

I don’t use Linux either, but a quick bit of research tells me it’s like an App Store and software that is specific to Linux. It allows for ease of installing/uninstalling programs but it can can run slow, seems redundant to what flatpaks already does, and isn’t fully fleshed out which leads to weird errors.

I’m guessing it’s because Linux is more hands on and this takes some agency away from users who feel like it might hurt privacy?

That’s what I’m reading anyway. Someone who is more familiar can correct me if I am off base.

[–] [email protected] 19 points 1 month ago (3 children)

The issues are twofold: Linux distros historically update software through a package manager. Something that was working fine for everyone, however it was causing a lot of work for maintainers. They got together and designed a packaging format for software that works across all Linux distributions called 'flatpak'. However, Ubuntu decided to create an alternative called Snap, which solves the same problem, except it's not used by anyone else.

Also, there's some implementation details that make it look messy in your system (every application is mounted as it's own filesystem, so if you use tools to list your disk's there's a bunch of weird spammy looking drives and things like that).

[–] [email protected] 4 points 1 month ago (2 children)

Awesome! Thank you for this explanation. So it’s mostly just because it’s a redundancy and specific to a certain distro (Ubuntu in this case)?

[–] [email protected] 10 points 1 month ago

Specific to Ubuntu, not very open for collaboration, and operated by the company who owns the Ubuntu trademarks. Additionally they've made it unnecessarily difficult to install non-snap versions of many popular packages. (they removed non-snap versions from upstream Debian repositories).

[–] [email protected] 3 points 1 month ago

No, redundancy is fine. It’s the proprietary backend and Ubuntu forcing it on users that people don’t like.

[–] [email protected] 2 points 1 month ago (1 children)

Didn't it also used to be noticeably slower than apt installed apps? This was one of the reasons I got rid of it at the time, Ive heard it has better performance now but not tried it.

[–] [email protected] 2 points 1 month ago

I think that's mostly solved, but yeah, some of the sandbox stuff affected performance.

[–] [email protected] 2 points 1 month ago* (last edited 1 month ago) (3 children)

Native package managers were not "working fine for everyone", the software and libraries in them are often very outdated and contain custom patches that don't come from the original software authors.

So you often end up dealing with bugs that were already fixed and the fixes released months ago.

[–] sugar_in_your_tea 2 points 1 month ago

That's one of the main reasons I use a rolling release distro. I used Arch for years, and now I use Tumbleweed.

With packaged apps (like flatpak, snap, etc), you can end up with outdated dependencies in those apps because they bundle everything together. So instead of fixing bugs once for everyone, you have to pester each individual package maintainer to update the dependencies. However, this is mitigated by having these apps be somewhat containerized and limiting impact of a breach on other apps, so YMMV depending on what kind of sandboxing you use.

I'm not really decided here, and I use both flatpaks and distro packages. I don't touch snaps though.

[–] [email protected] 2 points 1 month ago

That sounds like the maintainer's problem, not a problem with apt/dnf/whatever. We've had automated build processes for decades. If you want stable, use a stable distro; if you want the latest, use a rolling release like Arch or something.

[–] [email protected] 1 points 1 month ago

Other distros were faster with updating packages, or for Ubuntu specifically you had PPAs or repositories maintained by the vendor.

[–] [email protected] 3 points 1 month ago

One of the things missing from other comments is the architecture of it, why it use to be slow, and how the binaries were handled. Canonical started Snap as a server oriented application deployment system, that has been adapted to desktop use with some technological debt. The differences between it and Flatpak as far as configurability, dependencies, bundled binaries, etc are somewhat nuanced. They dealt with the application speed opening issue by allowing decompressed executables and different hooks to be used.

The other main point of contention aside from technological debt inherited by a server-first development principle is how they closed sourced their Snap server backend. It's proprietary, while the Snap client is open source, how the actual Snap server runs is a mystery.

Flatpak (and by extension Flathub) are all open sourced, which aligns more with the philosophy that users tend to prefer. It was covered in other comments that everyone else uses Flatpak, and this really isn't so much as a debate between package managers vs Flatpak, but moreso of application deployment overall. The community prefers Flatpak, and Snap is pushed as a means of lock-in and sunk cost fallacy on the side of Canonical.