Recent snap experience is absolutely disappointing

2022-10-27This post describes my recent experience with snap on Ubuntu.

I suppose before the incidents described in this post, I was indifferent towards snap. As I never bothered to create a snap, I only had my user experience to go by. I conveniently ignore philosophical issues one might have with snap, such as the fact that there is only one snap store, controlled by Canonical. So from a pure user perspective, up until recently, it didn't annoy me really. Was I happy that the Firefox package was replaced by snap with 22.04? No, but it didn't bother me much. For example, I didn't really notice longer startup times unlike many other users.

I can also live with the fact that /tmp is not shared usually due to snaps sandboxing. Snaps don't access system /tmp, they have a private one. A minor annoyance if you are using /tmp in your workflow, but that's about it.

So, my snap experience wasn't THAT negative. I didn't expect to be another person on the internet complaining about snap. But apparently, this wasn't to last.

"Pending update. Please restart"

When snap knows a Firefox update is available, it asks you to close the app. When Firefox is open, snap does not update it in the background. You are supposed to close it. However, this does not actually trigger the update. Even if you restart Firefox, it could still be the old version. The solution is to leave it closed for some time... or to open the terminal to run "snap refresh" after closeing Firefox. Oh by the way, if you run "snap refresh" while Firefox is open, it will tell you everything is up to date, even when actually an update available. [1]
Obviously, all this is quite far from ideal, let's leave it at that.

Server hiccups

Approx. a month ago, a build server at work started lagging and becoming unusable. It appears snap was the cause (yeah, apparently it's included with Ubuntu Server...). It was eating tons of RAM eventually got killed by OOM. However, that's not my department. I also don't administer that server. I don't know the details, and it only slowed down my work for a few minutes. Therefore, just forget it and move on, right?

Application freezes

Then, another snap problem occurred, this time affecting my private machine. Some applications simply froze during startup. So I began a little investigation and eventually discovered the possible reason: snap didn't happily co-exist with systemd-nspawn
But well, evidently it did not effect many people, bugs happen, and as far as I can tell, it's fixed now (or I was lucky). So, everything is fine again, right?

Application crashes

Since a few days I am experiencing a new problem. It happens every day after several hours of usage. Firefox tabs start to crash and snaps don't launch, printing something like this:

/bin/bash: /lib/x86_64-linux-gnu/libdl.so.2: unsupported version 0 of Verdef record /bin/bash: error while loading shared libraries: /lib/x86_64-linux-gnu/libdl.so.2: unsupported version 0 of Verneed record


But well, good thing that I have still have a browser installed that isn't broken by snap, so a little bit of googling led me to this squashfs bug. So, a recently introduced bug in squashfs is causing that. Again, probably only a minority of users should experience this, i. e. those that don't run the stock Ubuntu kernel but use a recent kernel like the stable branch, as I do.

What's annoying about this patch is that it did not hit the stable branch at the time of this writing, despite being known for over a week. Still, not a huge problem: Just download the .mbox, "git am" it, rebuild the kernel and another snap problem solved, right?

"Hey wait, this one is a kernel problem. You can't blame snap for that!". Well yeah, although snap made the design decision to use squashfs, you can't blame this issue on snap entirely. You can see it as victim of this bug. If you want to blame snap for this, you have to argue against the architecture and its complexity, which isn't going to change anything, so why bother.

But it's just the continuation the pattern I am experiencing as of late: When something sucks with Ubuntu, snap seems almost certainly to be involved.

So, when can I expect the next issue with snap? I switched from many years of Gentoo to Ubuntu for pragmatic reasons... but maybe all this is a sign to try something else.

For comments/remarks: Contact me