6 ms·
> Effortless updates: browsers receive frequent updates and, with the snap, users are able to receive security patches from Mozilla more quickly than with other
by blfr 4y ago
> Effortless updates: browsers receive frequent updates and, with the snap, users are able to receive security patches from Mozilla more quickly than with other software distribution methods.
I don't see how snap is faster than apt/.deb. More importantly, apt would update a running Firefox which you can restart later. With snap, Firefox is not updated until you close Firefox and run `snap refresh`.
- mort96 4y agoProbably because it requires less testing from Canonical. With snaps, Mozilla is wholly responsible for the entire distribution; they build a snap with specific library versions, test it, then ship it to users. With traditional packaging, Firefox uses system libraries, which means Canonical has to do additional testing to make sure Firefox still works with Ubuntu's library versions. And yeah, you could probably fix that by shipping debs with a statically linked Firefox, but that's not how apt packaging is traditionally done. At least that's my understanding of things.
- reedciccio 4y agoDebian does all the tests for Firefox and doesn't complain about it. Canonical made a shit decision to accept snap on such a crucial piece of software, it's not ready for prime time.
- mort96 4y agoAnd the only version of Firefox I can see in Debian Stable's (and Testing's) package list is Firefox ESR 91. That's exactly the situation Canonical wants to avoid. The current version of Firefox is 104, and even the current version of Firefox ESR is 102.
- watashiato 4y agohttps://packages.debian.org/sid/firefox https://packages.debian.org/sid/firefox Many disagree with this stance, but Testing is in an awkward position and I generally steer people away from using it over Stable or Sid because you get downsides of both without the strengths of either. I blame Debian with shooting themselves in the foot when it comes to communicating this. Testing is not a happy middle-ground, it's a test bed for stable. Staying on Sid gives you essentially a rolling release like Arch and it's plenty "stable" for regular desktop use and should anything break you'll get the fix (usually) faster than on testing. Sorry for going on a bit of a rant under your post, but I run into this on the regular.
- mort96 4y agoI agree. I chose to focus about stable because that's where Debian "does all the tests" for its packages. I just threw in testing because it happened to have the same version of Firefox, but maybe that muddied the waters a bit. The fact that the latest Firefox is in rolling release distros/channels but not in stable ones does prove the point a bit; you can either get a new Firefox, or you can get a tested Firefox. I generally prefer rolling releases, but I've had Firefox break in weird ways on Arch from time to time. The only way to get a Firefox that's both well-tested and up to date is to use builds from Mozilla where libraries are bundled, such as with a snap or flatpak.
- evmar 4y agoNot to defend snap, but I worked on Linux Chromium wrote this about why the apt/.deb model is difficult to make work reliably: https://neugierig.org/software/chromium/notes/2011/08/zygote.html https://neugierig.org/software/chromium/notes/2011/08/zygote...
- bogwog 4y ago> With snap, Firefox is not updated until you close Firefox and run `snap refresh`. Worse, they display a misleading pop-up notification telling you Firefox needs to be closed within X days to update. However, closing Firefox doesn't update it, and it doesn't actually tell you how to begin the update or when it will happen automatically. After searching the internet, it turns out you need to open a terminal and run a command to update it manually. It doesn't seem like Canonical has any kind of UX team, or if they do then they're asleep at the wheel.
- yaddaor 4y agoThat popup is so incredibly bad. It alone means that I will need to install a different distro for my parents. How it got through quality control is utterly baffling to me.
- mort96 4y agoHuh, so that's what's going on. I have encountered the pop-up, and in response, closed and re-opened Firefox. I 100% expected that to update Firefox. I suppose it was always a bit weird, since I shut my desktop down at night so there's never more than a day since Firefox was last restarted.
- compsciphd 4y agothe popup doesn't even make sense, there's no reason the image can't be updated behind the scenes and just take effect next time firefox is launched. just because a snap is in use, doesn't mean it shouldn't be able to be updated (i.e. can docker pull an update image without breaking my existent running containers).
- chrisseaton 4y agoHow is APT able to update the code of a running process?
- bogwog 4y agoI'm not sure of the details, but when you update a running Firefox all your currently-open tabs continue to work, but when you try to open a new one you'll get an error message telling you that you need to restart Firefox to keep using it.
- chrisseaton 4y agoAh right I thought you meant it did some kind of hot-patching - sounds like it still needs a hard restart like normal.
- mort96 4y agoIt unlinks the old file paths and creates new ones in their place. Files in Linux are reference counted, and they're only actually marked as deleted on disk once the reference count goes to 0; a directory entry is one reference, but the running process is also a reference, so even though the path /usr/bin/firefox has been replaced with a new file, the old file is still in use by the existing Firefox process. When you stop Firefox, the refcount for the old file will drop to 0, and when you start it again, the new /usr/bin/firefox will be launched. The same idea applies to all libraries, where the old version of say /usr/lib/firefox/libxul.so can still be referenced by the running firefox process even after apt has replaced it with a new version. It's not a great system honestly, Firefox will launch new processes sometimes and the IPC system kinda breaks down when the parent process and the child process are from different Firefox versions.
- johnchristopher 4y ago> More importantly, apt would update a running Firefox which you can restart later. That hasn't been my experience on Ubuntu for a while. Regularly when updating opening new tabs will display a "just one more thing to do" dialog prompting me to restart firefox. On debian 11, if an update took place firefox will sometimes keep working in a kind of degraded mode (inspect tools don't work for instance) until restarted. edit: at the moment I can't use netflix until restarted but I don't want to restart because I have a private window with tabs I want to read later.. Sigh.
- hotpotamus 4y agoThings like this are the reason I stopped believing that software improves. Now I think it just evolves - and I think of evolution in the biological sense in that it's just a random walk without any intention behind it.
- matkoniecz 4y ago> evolution in the biological sense in that it's just a random walk without any intention behind it there is plenty to complain about modern software but "random walk without any intention behind it" is neither fitting nor in any way true nor helpful diagnosis
- hotpotamus 4y agoAs a user of software, that's what I've come to believe. Maybe individuals have intention of the software they write and the systems they create, but as an ecosystem, it doesn't feel like we're going anywhere in particular anymore.
- johnchristopher 4y agoI have another funny one: on my Debian install I use transmission. I installed Deluge because Transmission still mixes destination dir from one session to the other. Now when I right click open folder for a torrent it launches vs code with that folder as a workspace.
- 4y ago
- jillesvangurp 4y agoI installed firefox straight from firefox.com on Manjaro and am using the beta channel. It self updates as they release new versions just like on windows and mac. I've been using the beta channel for many years and completely without issues. This is the fastest way to receive browser updates. Straight from the developers and without 3rd parties concerning themselves with repackaging things. Snap/flatpak/distro packaging is redundant for this. I do the same with Intellij and a few other things. Annoyingly, chrome does not have arch packages so I'm dependent on some community package.
- compsciphd 4y agoforget faster - functionally better. Firefox (at least in the past) used to break if you updated it while it was running (i.e. replaced / deleted / added files its active runtime depended on). So you had to restart it. In a containerized world, this goes away. i.e. you can replace the firefox "image" with a new one that will be used next time you restart firefox without breaking the existant running one. with apt/deb you can't do that (besides waiting to update). On a multi user system (less prevelant these days for desktop use, but still existing) this can be really annoying to coordinate. This doesn't answer if Snap is the right technology to do it, just why apt/deb (and related tech) have issues that they can't really solve.