120 points

But new users don’t even know what snaps are. They don’t care. We care because we are crazy bastards

permalink
report
reply
42 points

What’s snaps?

permalink
report
parent
reply
83 points

I am so sorry this got so long. I’m absolutely horrible at brevity.

Applications use things called libraries to provide particular functions rather than implement those functions themselves. So like “handle HTTP request” as an example, you can just use a HTTP library to handle it for you so you can focus on developing your application.

As time progresses, libraries change and release new versions. Most of the time one version is compatible with the other. Sometimes, especially when there is a major version change, the two version are incompatible. If an application relied on that library and a major incompatible change was made, the application also needs to be changed for the new version of the library.

A Linux distro usually selects the version of each library that they are going to ship with their release and maintain it via updates. However, your distro provider and some neat program you might use are usually two different people. So the neat program you use might have change their application to be compatible with a library that might not make it into your distro until next release.

At that point you have one of two options. Wait until your distro provides the updated library or the go it alone route of you updating your own library (which libraries can depend on other libraries, which means you could be opening a whole Pandora’s box here). The go it alone route also means that you have to turn off your distro’s updates because they’ll just overwrite everything you’ve done library wise.

This is where snaps, flatpaks, and appimages come into play. In a very basic sense, they provide a means for a program to include all the libraries it’ll need to run, without those libraries conflicting with your current setup from the distro. You might hear them as “containerized programs”, however, they’re not exactly the Docker style “container”, but from an isolating perspective, that’s mostly correct. So your neat application that relies on the newest libraries, they can be put into a snap, flatpak, or appimage and you can run that program with those new libraries no need for your distro to provide them or for you to go it alone.

I won’t bore you on the technical difference between the formats, but just mostly focus on what I usually hear is the objectionable issue with snaps. Snaps is a format that is developed by Canonical. All of these formats have a means of distribution, that is how do you get the program to install and how it is updated. Because you know, getting regular updates of your program is still really important. With snaps, Canonical uses a cryptographic signature to indicate that the distribution of the program has come from their “Snaps Store”. And that’s the main issue folks have taken with snaps.

So unlike the other kinds of formats, snaps are only really useful when they are acquired from the Canonical Snaps Store. You can bypass the checking of the cryptographic signature via the command line, but Ubuntu will not automatically check for updates on software installed via that method, you must check for updates manually. In contrast, anyone can build and maintain their own flatpak “store” or central repository. Only Canonical can distribute snaps and provide all of the nice features of distribution like automatic updates.

So that’s the main gripe, there’s technical issues as well between the formats which I won’t get into. But the main high level argument is the conflicting ideas of “open and free to all” that is usually associated with the Linux group (and FOSS [Free and open-source software] in general) and the “only Canonical can distribute” that comes with snaps. So as @sederx indicated, if that’s not an argument that resonates with you, the debate is pretty moot.

There’s some user level difference like some snaps can run a bit slower than a native program, but Canonical has updated things with snaps to address some of that. Flatpak sandboxing can make it difficult to access files on your system, but flatpak permissions can be edited with things like Flatseal. Etc. It’s what I would file into the “papercut” box of problems. But for some, those papercuts matter and ultimately turn people off from the whole Linux thing. So there’s arguments that come from that as well, but that’s so universal “just different in how the papercut happens” that I just file that as a debate between container and native applications, rather a debate about formats.

permalink
report
parent
reply
18 points

I understand less now.

permalink
report
parent
reply
18 points

Sounds like docker with a load of extra steps.

permalink
report
parent
reply
5 points

I would have liked more technicalities, but wonderful write-up. Thanks

permalink
report
parent
reply
2 points

My first introduction to them was “hey why does startup take so long now? This machine used to be so much faster.” and realizing it was snapd that was eating up the time. It’s also not exactly efficient at using storage compared to native installs of dependencies.

For a desktop these may not be noticable but for low power embedded systems it’s a nightmare. It should be an option but really isn’t ready to be default. And when appimages are already a thing that work well I don’t really see the point.

permalink
report
parent
reply
27 points

Here friend, I also didn’t know

Snap is a software packaging and deployment system developed by Canonical for operating systems that use the Linux kernel and the systemd init system. The packages, called snaps, and the tool for using them, snapd, work across a range of Linux distributions[3] and allow upstream software developers to distribute their applications directly to users. Snaps are self-contained applications running in a sandbox with mediated access to the host system. Snap was originally released for cloud applications[4] but was later ported to also work for Internet of Things devices[5][6] and desktop[7][8] applications.

permalink
report
parent
reply
1 point
*

You must have a container to be able to run a different library version?

Why not run like Android API version level?

permalink
report
parent
reply
-3 points

So (having tried various distro for almost 2 decades now, but always reverting to windows) the two useful things as I read that are 1) not having to know thst some bullshit distro doesn’t use apt and you need to figure out wtf the package manager is because this distro is a special snowflake and they wanted to show the world by being a bitch and not using apt; and 2) direct from devs, which is nice and imo preferred.

But like… native packages mostly handled this? I’ve been watching from the sidelines for a few years as this happened and I’m still like ‘this is a solution looking for a problem, and adding complexity in the name of simplicity’.

Can I get a tl;dr on flatpak? I think it’s basically snaps but again ‘we can make this standard better! by creating another fragment to the available standards!’ which is just, ugh.

That kinda is (one of) the big issues with Linux, in my eyes - everyone thinks their shitty implementation is best, and this happens for everything, and so instead of having one standard for everything you have 53 and none of them get the proper dev time and so ‘I can do this better’ and now you have 54 standards and […]. Like, it’s cool to be able to patchwork together the special sauce of 18 distros manually, but like… There could be consolidation and then 1 would have the special sauce of 18 in a user-friendly iso instead of taking 35 hours to get working. As a user, I want shit to just fucking work, or be moderately easy to get. Adding more fragmentation to the space is doing a disservice to the whole community.

My thoughts.

permalink
report
parent
reply
5 points
4 points

I’m using Linux for almost 30 years and never use snap or flatpak. I install native apps with apt or pacman or whatever.

permalink
report
parent
reply
2 points

I’m not completely sure but don’t flatpaks offer good sandboxing. If they do it could be a good idea for people who use/need proprietary software like steam and zoom so when you run those programs at least it can’t read through your files and stuff

permalink
report
parent
reply
15 points

The problem is they don’t care until it becomes an issue which by then becomes harder to fix. I also just really hate snap lol

permalink
report
parent
reply
2 points

When would it become an issue?

permalink
report
parent
reply
8 points

I think they would care if they knew the benefits of not having snaps.

There’s little to no advantage in having them, so why have them?

permalink
report
parent
reply
5 points

Snaps just create additional confusion

permalink
report
parent
reply
6 points

Do they really cause confusion? Or do they make software “just work” which is much more important to a new user?

permalink
report
parent
reply
1 point
Deleted by creator
permalink
report
parent
reply
37 points

I recently started using Mint after years on Debian.

I may be weird here, but it has quickly become my favorite distro.

It’s snappy and super user-friendly, plus it’s been de-Ubuntu-d. Out of the box Flatpak support is just nice to have, and Cinnamon is a sweet de.

permalink
report
reply
16 points

I’ve done my fair share of distro hopping. Mint is the distribution that I have to do the least amount of configuring starting from a clean install.

permalink
report
parent
reply
5 points

It’s the most stable distro I’ve used so far. Manjaro just seems like it’s a ticking time bomb just waiting for borked o’clock to come. I couldn’t get Nvidia drivers working on fedorat all. Ubuntu was just slow as ass. I don’t know why. But it was just fucked from junk street. I’ve given it a go a few times. Just slow wet ass. Kali is snappy and clean but not meant to be a daily driver. Not would I use it as one.

Mint works. It’s relatively snappy. I like the gui. It’s customizabe.

permalink
report
parent
reply
10 points

I use Mint, and I found that it’s the best distro for introducing my family to Linux. Those who tried it never asked for their Windows back.

permalink
report
parent
reply
7 points

Totally. Man I gotta try an updated mint and see if it will work for gaming. I miss the stability.

permalink
report
parent
reply
4 points

So far I’ve got Steam running flawlessly. Haven’t tried much else yet.

permalink
report
parent
reply
1 point

As an anecdote, the only games that I play that require more fixing than pasting something into the launch options or using another version of Proton are VR games. Half Life: Alyx somehow works perfectly fine. Otherwise the devs forget to tick the box in their anticheat to allow Linux.

permalink
report
parent
reply
2 points

Good to know!

For now, I ended up reinstalling Nobara until I can test if Mint on 5.19 kernel has fixed the issue with my RX 6600.

Nobara is great for my gaming so far. But wouldn’t mind a more mainstream distro that has fixed some of the less common bugs I seem to always find.

permalink
report
parent
reply
35 points

Jokes aside, this kind of gatekeeping behavior is what gives Linux a bad name. Also, you don’t have to be a beginner to love Linux Mint.

permalink
report
reply
-1 points

You just have to not care about Wayland ;D or modern software

permalink
report
parent
reply
28 points
*

There’s actually linux mint debian edition rather than ubuntu edition

https://www.linuxmint.com/download_lmde.php

permalink
report
reply
3 points

wasn’t it stopped? was using it around 2012 but thought they stopped maintening it.

Liked it because there was no need for version upgrade

permalink
report
parent
reply
7 points

Nope I use it and they are on the most recent stable Debian. No snaps and built in flatpack support.

permalink
report
parent
reply
3 points

LMDE6 came out within the last couple of months. It’s based on Debian 12 which, at time of writing, is less than 6 months old.

Upgrading is still wise every couple of years because the base Debian distro also reaches EOL, but yes, rolling updates occur constantly in the meantime. Provided the system owner allows them to anyway.

permalink
report
parent
reply
3 points

I’m running the most recent version, based on Bookworm, as my daily driver.

permalink
report
parent
reply
1 point

You probably thought that because debian moves so slow.

permalink
report
parent
reply
25 points

I was running Linux Mint until the other day when I found out Linux Mint Debian Edition existed so I installed that. I’m a recent Linux convert and I can safely say that Lemmy might have partially been the reason. I’ve been loving it so far.

permalink
report
reply

linuxmemes

!linuxmemes@lemmy.world

Create post

Hint: :q!


Sister communities:

Community rules (click to expand)

1. Follow the site-wide rules
2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack members of the community for any reason.
  • Leave remarks of “peasantry” to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn. Even if you watch it on a Linux machine.
4. No recent reposts
  • Everybody uses Arch btw, can’t quit Vim, and wants to interject for a moment. You can stop now.

Please report posts and comments that break these rules!

Community stats

  • 6.6K

    Monthly active users

  • 1.3K

    Posts

  • 71K

    Comments