Third, the notification has one call to action: shut down the application. This application will be updated, so shut it down. If the user closes the application, presumably that then triggers it to be updated, right? But no: the snap updater runs on a schedule, and it could take 6 hours for it to run again, check whether the application is running, and then apply the update if it’s not. Is the user supposed to leave the application shut down for up to 6 hours? How could they possibly know to do that? You could see a user getting into a cycle (for 13 days!) where they restart the application, and then 6 hours later the intrusive (and apparently not suppressible) notification pops up again.
I thought the same thing the first time I saw it. The only solutions are to either close Firefox and wait for several hours for something to silently happen in the background, or Google for the CLI command to run to update it. Really bizarre UX, I would love to hear someone from Canonical explain why they thought that was a good idea. Is there something I'm missing?
I’ve also been annoyed by this. I don’t have it handy but I did find the ticket where their conversation to implement this first happened. I guess before it would just update without notifying the user.
The idea in that conversation was, at least what I took away from it, that the user gets the notification and now knows at the end of the day they should close the app and in the morning it’ll be updated!
Seems fine on paper. But the messaging in the notification doesn’t tell me that at all. And it turns out despite all the nagging I always forget to close things before I step away.
I hate the execution of this feature. So much. All the nagging. All the confusing messaging.
On top of it all, I don’t feel like snap gives me any qol improvements in exchange.
What’s most frustrating is that snap knows the entire state of the world! They know when the application is started and closed. Could download the update at anytime and upon closing the old application, link to the update and delete the old version.
Snap format is just a single compressed file. They could literally just replace it, remove the old one and due the way of which Linux filesystems work, any new call to app will run the new one, but the old one would use the old file.
They could do it basically seamlessly, with maybe notification only if you keep app running for days. Hell, that's how package manager does updates, just remove old libraries and put a new one in place, old programs will use the old one till restart, and when last filedescriptor closes it will be unlinked from filesystem. It sometimes can cause problems in "normal" apps but fact snap is just a single file removes pretty much all drawbacks of that.
It's not just bad decisions but incompetence on top of that
Snaps don't actually work that way. Snaps are squashfs images, which imposes the contract of requiring to unmount the old image before mounting the new one. When files are in use, you can't easily unmount. (Yes, you can use a lazy unmount, but bad things happen on the system with those, so it's not a good idea to rely on it!)
I think you're thinking of Flatpaks, which are basically hardlink/reflink farms with symlinks used to control the pointers to the current version (OSTree).
Which is basically how web workers work. Download silently then either use the new one on restart, or add some app level code to ask the user if they want to take the update now. At which point its a minimal install process since most of the work has been done already.
Not only that, but I stopped leaving computers on years ago. And couldn’t do that if I wanted to since it’s a laptop I’m putting away in a bag. The thing’s going to sleep until next work day.
Yep, this prompted me to uninstall the snap version of Firefox that was installed by default in Ubuntu 22.04 and reinstall it from the Standard Ubuntu repository. Score minus one for snap.
There is no package for Firefox in Ubuntu 22.04. The package called firefox does not contain a browser, its just transitional for upgrading older versions to snap.
I started to download Firefox from Mozilla. But just because I have not decided yet what distro to use for family computers. Archlinux is fine for me, but not suitable for everyone.
You can also just download the tar ball from Mozilla and run that. It takes care of keeping itself up to date. I do that on Manjaro because I want my updates straight from the source. I'm on the beta channel, so my browser updates frequently and it simply indicates when there is an update and then I can choose when to restart the browser. Works on Ubuntu as well.
I'll recommend Pop_OS as well, but it might be overkill.
It depends on what is meant by "family computer" but don't underestimate the usefulness of a cheap chromebook as well. My wife uses hers exclusively, since using the internet is pretty much the only thing she actually uses a computer for.
The hardware of Chromebooks is more than enough. But as long as I understand something about IT I don't want Google to take away my freedom and lock me out. That would be like a Westerner asking for asylum in China because the party thinks on my behalf.
Not the op, but I guess they meant the hardware specs of a "normal" computer.
Myself I used to buy these little Atoms with eMMC running Windows S. E.g. HP used to have good hardware in that class. Now Windows S has been discontinued and I don't see much choice in the class anymore. Maybe Acer sometimes, but I have zero experience with them.
For Chromebooks there is GalliumOS, but it looks very silent. Not sure whether it is still alive. Last supported model is from 2019.
Who maintains Pop!_OS and how, based on which process and motivation? For Debian and Ubuntu I understand that to some degree, for Pop!_OS I have very little insight. There is System76, but how many developers can they afford?
What you're supposed to do is close the application then run "snap refresh", but there is absolutely no hint that this is what you have to do. I had to look it up online as well. A sane person, in 202X would assuming closing the application would immediately trigger the update, as you said.
I thought the same thing the first time I saw it. The only solutions are to either close Firefox and wait for several hours for something to silently happen in the background, or Google for the CLI command to run to update it. Really bizarre UX, I would love to hear someone from Canonical explain why they thought that was a good idea. Is there something I'm missing?