The snap thing makes me want to switch distro (for work) from ubuntu. Unfortunately we have some benefits from using ubuntu as the common platform for less divergence from each other
I personally use ubuntu and have used snap enough to get thoroughly burned and annoyed by it. Slow starts, no auto-update controls with bad defaults corrupting running programs, spammed mount points... (edit: see comment below for some limited controls to reduce the frequency of auto-updates)
But, unless I'm missing something about latest or future releases, isn't it still optional? Can't you use apt instead and uninstall snapd altogether?
I'd agree that needing to uninstall instead of opt-in is an annoyance, and that user-hostile actions tend to be a slippery slope..
> But, unless I'm missing something about latest or future releases, isn't it still optional? Can't you use apt instead and uninstall snapd altogether?
There seem to be more and more things that are only delivered as snaps.
I haven't used Ubuntu on the desktop in a while (and even then, it was just trying it out), but I remember that trying to apt install <something> would say "use the snap". I think LXD is in that case, for example.
I recommend Fedora to everyone wanting a desktop alternative to Ubuntu. It's a well-balanced distribution that is opinionated enough to work fine as-is but doesn't try to force things on you the way Ubuntu does with snaps.
What DEs are common/supported on Fedora, I use KDE (Kubuntu), I'm not keen on snaps and so it seems expedient to switch distros when I next install (as it seems Ubuntu are all in for snaps).
Well, this is a KDE variant of Fedora Silverblue, so there are some quirks. If you want normal Fedora but with KDE, there is a KDE spin available: https://spins.fedoraproject.org/kde/
> There seem to be more and more things that are only delivered as snaps.
I'm on Ubuntu, and of all the software I use (I count around 20 programs installed not through the Ubuntu apt repositories), fortunately only two are available only on snaps - Chromium and Subsync. The first actually accelerated my move to Firefox.
Regarding Subsync, I had to write a ridicolous script to start/stop all the snap services - ridicolous because Snap has an integrity service that overwrites any change to the Snap system (!!), so one can't even hack the Snap system files without disabling such service. It actually gets worse - Ubuntu has a relatively tight intergration with snap: one can't have the `snapd` serviced disabled (without hacks), because the Ubuntu software upgrade invokes it if present, and if it's disabled, the upgrade will hang.
If Ubuntu will force more software to go through Snap, I'll abandon it (after many, many years).
Yikes! I fortunately haven't run into this yet. There are very few cases where I would take the easy road and install a snap (maybe a one-time use CLI where performance doesn't matter and I'd uninstall after?). If not in apt I'd probably ignore the suggestion and look for a ppa, binary, or, in rare cases, compile from source.
Interesting. Firefox on snap was an absolute nightmare. Not only would New Tab break after an update, fonts would break as they may be (re-)loaded from disk which becomes missing when the app gets remounted at a new mount point after an update. I forget which hoops I had to jump through, but I did finally find a non-snap method that allows me to manually update (or dismiss prompt) to get around these issues while staying up to date (~1 day)
VScode wasn't as bad, as it usually seemed to work (but maybe flaky plugins were actually caused by snap?) but it was certainly annoying to lose the ability to switch between windows of the same app (alt+~, I think this was a custom setting to resemble mac) if the latest window/project was opened as a new version of the app (alt+tab)
Every other day it blows away all my open tabs and whatever I had going on in them.
I have a bunch of random tabs open, some with essentially "unsaved work", like shopping carts which may be the result of an hour of research, editing files in web interfaces like github or fluidd (web interface to a 3d printer) ... and randomly once every day or 3, I'll go to touch anything, any button in any of those tabs, like edit that config file some more, or try to save it... and kablooey, "firefox needs to restart" and I lose everything I had going.
This is a new thing that didn't used to happen.
Apparently the snap teams response to this story would be "Don't use FF like that."
The issue here is that the apt update changes firefox program files underneath it which needs a restart. Afaik, using the mozilla release directly is the only solution for this where the program files are changed only after exit.
Edit: This has become more common nowadays due to multiple point releases close to each other, to fix some important bug.
Thank you for this. Severely limited controls are certainly better than no controls. Looks like timer can reduce breakages to no more than monthly, hold can prevent breakages for up to 3 months, and metered seems like it may be able to disable updates and subsequent breakages if I can figure how to trick the OS into thinking I'm always on a metered connection (which is actually true, but I'm on LTE via wifi)
For a personal desktop, I wouldn’t recommend it unless you’re willing to run sid, because while the outdated software collection is no big deal most of the time, it’s a tremendous pain when you really do need a new version of something, and you ultimately just give up and instal the whole thing from source into /usr/local, which in a half-dozen years predictably evolves into a mess.
Running sid is an option, but the amount of fiddly Debian magic you end up needing to learn when it breaks is IME not smaller than the effort of setting up a mostly-unpatched rolling-release like Arch (and I’m sure there are other options). Given that e.g. Arch’s packaging is simple enough it’s no big deal to package even your personal collection of handy scripts (and so the system does not develop funny-looking mold and bits of mystery food all over the place), I don’t really see the point. Just don’t update it when you’re on a deadline.
You can see that my arguments here are to a great extent a matter of preference and personal circumstances, though: do you have a reliable Internet connection for troubleshooting? do you prefer a more solid system that you have to fight and that fails badly but rarely or a less solid one that fails more often but in small ways? does getting locked out of the graphical environment every couple of years count as small?
(Offer not applicable on machines with cursed hardware like nVidia or Broadcom.)
I've been using Debian stable on the desktop exclusively since Etch (around 2007). I strongly recommend it for someone who is always busy and doesn't have time to fiddle around. I run Sid in a schroot for the one package I need which is not in backports (a recent R for RStudio. Reference: http://charles.plessy.org/Debian/debi%C3%A2neries/r-4.1/ ). Debian stable relieves all the pain of the frequent breakage (CUPS) from constant unnecessary upgrades.
personally I recommend debian "rolling testing" (rather than pinning to a specific release name) with security updates from sid. this prevents all but the most subtle bugs from reaching you and you still get the new hotness within a few weeks of sid. there is a release freeze for a few months prior to the each stable release, but I've had no major issues from that.
I switched many years ago. I make heavy use of Flatpaks, which are great, although they have a lot of unlocked potential still. dnf installs regular-old packages, as opposed to Ubuntu, where apt packages now install snap packages.
Debian or Fedora should become the new default recommendation. Debian probably fits better for novices, since Fedora doesn't have non-free packages out of the box.
Debian and Fedora have always been my two recommended distros for people. They are the upstream providers of the packages for most distros, and in the case of Ubuntu it has always been a bad choice.
Even from day one, forking Debian and breaking a bunch of packages as they went off on their own, then years later going oops how do we fix this Daddy Debian? Adding Amazon to their search by default in Unity initially. Creating a new desktop protocol to replace X11 rather than work with the Wayland teams so they could rush to ship their phone that nobody wanted.
Canonical is just a good marketing company. They want to do things their way and screw over as many Linux developers as they can to get their way.
If you're a programmer I'd say Arch or Debian then configure as per your needs. As long as you don't do things blindly it will be very stable and blazing fast.
I used to be a pretty hardcore Manjaro evangelist (and I still recommend it to people who want to quit distro-hopping), but I've been burned a handful of times by it. Arch is obviously a notoriously unstable distro, but Manjaro in particular can lead to some nasty issues. Especially if you're mix-and-matching AUR packages with the Manjaro repository ones; I've had at least 3 or 4 systems get entirely borked because of an untracked dependency or something being too far behind in the Manjaro repo.
I think manjaro suffers breakage too much. These days I tell people to look into endeavour since they still use (mostly) arch repos and thus cause much less breaking with the using AUR packages if you're into those.
Because they support hibernation? I assume the answer here has to be "because it's a PITA to enable", but as far as I know no distro does this correctly by default on an encrypted drive.
I went over the blog post, and it looks like it's a PITA to enable because they went out of their way to make it so by using a weird partition scheme. I've never installed pop OS, but according to that blog they're using LVM on LUKS, which should work fairly well.
> but as far as I know no distro does this correctly by default on an encrypted drive.
What does "correctly" mean here? On my previous laptop I had arch installed on ext4 on LVM on LUKS. Therefore, the swap was on the same LVM. Aside from having to manually set the "resume" kernel parameter, I never had to do anything, and it just worked.
Some argue full disk encryption should be the default. Others argue hibernation should be the default. Here they appear to be in conflict, and that the former was prioritized.
But they're not. You can very well have the swap on top of LVM on top of LUKS. And the root and other partitions share that same LVM and LUKS. So now you have FDE and the kernel will know how to assemble it all. The only difference with the default pop OS install is that the swap key isn't changed on every boot. But since the other partitions holding the actual data use persistent keys, that doesn't look like much of an issue to me.
Plus, if you're OK with using a TPM, you can also get waking up from hibernation without having to enter type in your password.
Source: been doing exactly that (without the TPM part) on a laptop for a few years, and it just worked like a charm. No hoop-jumping involved or anything.
I really liked my System76 laptop until the AC adapter died. I looked around on their site to buy accessories and it wasn't there. Eventually I found you have to open a support ticket to get a replacement.
Not only did it take multiple days for them to respond (me without laptop), their resolution was to attach an invoice for one despite me asking for two. I didn't want to open a new ticket so I just looked online for an AC that had the same voltage/amp/etc and head, then ordered three. I have multiple desks...
The three arrived approximately a week before the one they sent out.
Also, you can't actually open these the way they've glued them shut inside by attaching the heatsink to the outer case. Might be a manufacturing defect but definitely can't open mine after unscrewing the bottom.
Never buying a System76 laptop again after this thing dies.
Try one of the variants like Pop_OS! they use flatpaks as a replacement for snaps and it works well. I've moved all my ubuntu systems over to it without any issues. The KDE version is nearly as nice as the stock version (looks-wise) if you're a KDE person, which I am.
Yes, if you run the container with the right options. This is a little out of date and may not even be required any more, but it gives you the full SDK manager gui in Docker.
But, unless I'm missing something about latest or future releases, isn't it still optional? Can't you use apt instead and uninstall snapd altogether?
I'd agree that needing to uninstall instead of opt-in is an annoyance, and that user-hostile actions tend to be a slippery slope..