I see people hate snap packaging and removing it if their OS support it. Is it because it’s NOT fully open-source or just due to how the technology works?
Update: fixed typos
I don’t know enough to dislike snaps, I’m just spiteful enough to dislike cannonical trying to force me to use them
You’re so real for this
I remember when the snap version of calculator took like 12 seconds to launch and Canonical were like “yeah but what’s the big deal?”.
It basically turns your super fast Linux into feeling like a 10 year old windows machine.
I hear they have improved performance now though but there are many other reasons why snap suck.
I hear they have improved performance now though
It’s still not great. Better, but still slow enough to make you question whether you’ve actually launched the app or not.
Bloat and coersion from canonical when using Ubuntu.
Also I hate typing mount on my home machine and sifting through a sea of mountpoints.
Same. I end up either
grep -v -e
tmps and loop mounts ormount -t
for each type of physical mount. I suppose lsblk and findmnt might have better options and views.Lsblk suffers too.
oh? When I run
lsblk
all of the docker overlay mounts are omitted. It does show loop devices, but otherwise it was the list of physical devices.Looking at the man page it looks like
df
lets you exclude types too:df -h -x tmpfs -x overlay
.When I run lsblk with no flags/parameters I get 18 lines of loop devices. Sure I could issue the command again and pipe thru grep to remove all the lines that have “snap” since I forgot to do it this time. I propose “snap” because couldn’t I have non snap-related loop devices?
Examining my disk partitions with df is ruined now. Every snap gets its own virtual disk.
Ha I was just listening to the Linux Unplugged podcast and the guy was just complaining about this same thing
I wonder if that could easily be fixed by just filtering the output of
df
to not show virtual disks (df
already has an-l
option to only show local disks, so would expect that changingdf
could be relatively easy).Note: I am not saying that I like snaps…
Just create an alias that filters loop devices. I mean, if this is your only problem with snap, you can fix it in a second. But I’m betting you have other problems with it.
Snap is not fully open source. It’s slower than flatpak, it’s centralized to Canonical’s servers.Flatpaks so not update by default where snaps do, so if a feature breaking update is released and you haven’t disabled automatic updates, you’re screwed with snap. Flatpak does not need admin privileges where snaps do.
Here’s my answer to this same question from an old thread on Reddit:
My Ubuntu system always reserved a whopping 20% of my 32GB ram for no reason and I never bothered to know why. Later I uninstalled snapd because of boot time issues and guess what happened? Only 1.5 GB used after a fresh boot.
I had like 4 different JetBrains IDEs installed via snap with each totalling around 2GB of disk space. While removing snapd I discovered it kept back 2-3 previous versions of every package on your disk.
Uninstalling this bloat was the best thing I did to my ubuntu system. It was suddenly light as a feather and way more responsive like I just did a fresh system install.
Some time later I was installing something from apt and Ubuntu tried to install it from snap, thus sneakily installing snapd in the process. Looking for a solution, I felt like I was looking up how to disable Windows updates or some other shit.
I had a moment of clarity and wondered why the fuck did I have to put up with this kinda bullshit on Linux. I wiped that drive clean and switched to Fedora.
Perhaps it’s been fixed since, but a this type of thing was the main issue with snaps to me:
“Why can’t the program see the printer? Ubuntu can see the printer”
“Why can’t I save to this USB pen? It can’t even see it”
“These two programs are meant to work together, but they can’t see each other”
“I can’t open my project from my external drive”
“It won’t let me import the photos from my camera. It can’t see the camera”
Would have been less of an issue if they had an android-style permissions pop-up with each incident, but snaps just left you silently failing.
This was my experience too. Ubuntu asks if I want to install the docker snap, I say sure. I then try to use docker and it’s completely unable to do what I need. I then need to figure out how to uninstall the snap and then install docker normally.
I tried a few snaps, but everytime they were a pain in the ass and I regretted it. Now I avoid them at all costs
Same with Docker. Installed it because Ubuntu recommended it then spent a month trying to figure out why all my docker containers would randomly shutdown and restart themselves. I knew snap auto-installed updates, but had no idea it would do it even if the program was currently running and in use.
This was the most frustrating for me as well. While I appreciate Snap trying to be a universal installer of sorts, it breaks too often to be useful.
There is absolutely such a thing as too much sandboxing, and flatpak is already pushing the limit.
Mostly it has to do with how Canonical owns the snap store. if they made it so anyone could build a snap repo then a lot fewer peopl would have problems
because the snap folder in your home directory by default starts with a lowercase letter while all the other folders start with uppercase (hidden folders don’t count)
all other reasons are secondary
Had a low end laptop, i believe it was lubuntu that i installed because i knew ubuntu was too bloated for that laptop. However I was not aware that it used snap and running firefox kick started the fans on that old laptop. Resouce hog seen and searching for firefox direct binary from apt seemed like a chore so i replaced with mint. Snaps automatically i did not want to deal with for old computers. Was happy with mints removal of snaps and it is very user friendly.
There are philosophical and technical reasons to not like snaps
Technical
- Slow startup time
- Makes lsblk look really ugly
- For awhile users didn’t have a lot of control over when things updated
- Not designed to work with third party repos by default
- Requires apparmor so it doesn’t work well on selinux distros.
Philosophical
- Backend is proprietary and controller by a single company
- Has made the same amount of effort as flatpak to work on distros that aren’t Ubuntu
- Some people just don’t like Ubuntu
Also:
- Creates a snap directory on your home. I hate programs that pollute my home.
- Requires a service (snapd) to function.
Not only does it create that directory but it creates new folders for each updated version of various apps… Very weird and confusing
- Canonical is pushing it too aggressively, removing the freedom of choice.
Canonical has a history of ignoring established practices and established software projects in the FOSS community and instead rolling their own in-house competitor behind CLA licensing agreements that make it hard for community developers to contribute. It feels like an embrace-extend-extinguish situation to me. They did it with Unity (replacing GNOME 3), Mir (replacing Wayland), and now Snap (replacing Flatpak). There are also technical reasons why many Linux users don’t want these userspace/sandboxed packages (Flatpak and AppImage included) taking over the position formerly occupied by native distribution packages (.deb, .rpm, pacman, apk, etc) because of issues with unnecessary copies of dependencies and poor integration with the rest of the system. These concerns apply to Snap as well, and Ubuntu has been pushing to replace .deb packages with snaps.
Because I can’t dismiss the Firefox update notification, no matter how many times I update it.
I’ve had to reboot every time.
Which, way to go you’ve reimplemented windows xp era updates.
This threads got lots of good answers, but I haven’t seen it mentioned that snaps sometimes mean reduced functionality.
Use the docker snap? Sorry, it can only access your home directory so no -v /some/path:/somewhere for you
Use firefox or chromium and keepassxc? Sorry, your browser plugin won’t be able to talk to your password manager
And the updates… dear god. In whose mind was it a good idea to show a “firefox is updating, exit now to avoid issues” TWO WEEKS im advance. Closing the app does precisely fuck all unless you manually snap refresh it
Containerised applications are a fine idea, but snap is a horrible implementation of it
To be fair, those are both issues with flatpak too. You can change the file system permissions with a command or flatseal, but I don’t know of a fix for the password extension issue.
Didn’t know that about the docker snap but that is insane. It would be straight up unusable at work for me.
Install Node with snap? Cypress silently closes. (This took some time to get to the bottom of)
I tried to get microk8s up and running by installing it from a snap since I figured it would be a nice and easy way to get up and running quickly.
I’ve spent so much time trying to get it working that I haven’t even started to learn k8s yet since I can’t get the damn thing to run.
I think I’m switching to Debian for my servers.
its a scam.
there was this jerk working as an intern at red hat. lennart. he made the decision to break the linux dogma: do one thing and do it good. systemd was born. red hat drools. an important step towarda ending open-ness. later snaps. later closing red hat stream. profit.
if you use systemd or snaps you could just fast forward and use apple.