this post was submitted on 07 Nov 2023
40 points (93.5% liked)

Linux

48216 readers
631 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

I think that installation was originally 18.04 and I installed it when it was released. A while ago anyways and I've been upgrading it as new versions roll out and with the latest upgrade and snapd software it has become more and more annoying to keep the operating system happy and out of my way so I can do whatever I need to do on the computer.

Snap updates have been annoying and they randomly (and temporarily) broke stuff while some update process was running on background, but as whole reinstallation is a pain in the rear I have just swallowed the annoyance and kept the thing running.

But now today, when I planned that I'd spend the day with paperwork and other "administrative" things I've been pushing off due to life being busy, I booted the computer and primary monitor was dead, secondary has resolution of something like 1024x768, nvidia drivers are absent and usability in general just isn't there.

After couple of swear words I thought that ok, I'll fix this, I'll install all the updates and make the system happy again. But no. That's not going to happen, at least not very easily.

I'm running LUKS encryption and thus I have a separate boot -partition. 700MB of it. I don't remember if installer recommended that or if I just threw some reasonable sounding amount on the installer. No matter where that originally came from, it should be enough (this other ubuntu I'm writing this with has 157MB stored on /boot). I removed older kernels, but still the installer claims that I need at least 480MB (or something like that) free space on /boot, but the single kernel image, initrd and whatever crap it includes consumes 280MB (or so). So apt just fails on upgrade as it can't generate new initrd or whatever it tries to do.

So I grabbed my ventoy-drive, downloaded latest mint ISO on it and instead of doing something productive I planned to do I'll spend couple of hours at reinstalling the whole system. It'll be quite a while before I install ubuntu on anything.

And it's not just this one broken update, like I mentioned I've had a lot of issues with the setup and at least majority of them is caused by ubuntu and it's package management. This was just a tipping point to finally leave that abusive relationship with my tool and set it up so that I can actually use it instead of figuring out what's broken now and next.

you are viewing a single comment's thread
view the rest of the comments
[–] alt@lemmy.ml 21 points 1 year ago* (last edited 1 year ago) (15 children)

In general, consider setting up any kind of rollback functionality; this will enable you to get right back to action without any downtime when you're time-restricted. This can be achieved by configuring your system with (GRUB-)Btrfs+TImeshift/Snapper. Please bear in mind that it's likely that you have to come back to solve it eventually, though*. (Perhaps it's worth thinking about what can be done to ensure that you don't end up with a broken system in the first place. *cough* ~'immutable'~ ~distro~ *cough*)

If this seems too troublesome to setup, then consider using distros that have this properly setup from the get-go by default; like (in alphabetical order) Garuda Linux, Manjaro, Nobara, openSUSE Aeon/Kalpa/Leap/Slowroll/Tumbleweed, siduction and SpiralLinux. Furthermore, so-called 'immutable' distros also have rollback functionality while not relying on aforementioned (GRUB-)Btrfs+TImeshift/Snapper; this applies to e.g. blendOS, Fedora Kinoite/Sericea/Silverblue, Guix, NixOS and Vanilla OS.

If you feel absolutely overwhelmed by the amount of choice, then you should probably consider the bold ones; not because I think they're necessarily better but:

  • openSUSE's offerings are generally speaking very polished, therefore being highly suitable to replace Linux Mint or Ubuntu. It's its own thing though, therefore you might not be able to access packages that are exclusively found in Debian's/Ubuntu's repos (though Distrobox solves that trivially). Tumbleweed if you like rolling release, Slowroll if you prefer updates only once every 1-2 months and finally Leap if you lean more towards Stable/LTS releases.
  • siduction for being based on Debian; but it's strictly on the Unstable(/Sid) branch.
  • SpiralLinux for being based on Debian; this one -however- has proper support for switching branches.
  • Vanilla OS for being based on Debian; this one is very ambitious. But, because it's an 'immutable' distro, it might require the biggest changes to your workflow.

nvidia drivers are absent

While any of the aforementioned distros do a decent job at 'supporting' Nvidia, perhaps you might be best off with uBlue's Nvidia images. As these are images relying on the same technology that Fedora's immutable distros do, rollback functionality and all the other good stuff we've come to love -like automatic upgrades in the background- are present as well. In case you're interested to know how these actually provide improved Nvidia support:

"We've slipstreamed the Nvidia drivers right onto the operating system image. Steps that once took place on your local laptop are now done in a continuous integration system in GitHub. Once they are complete, the system stamps out an image which then makes its way to your PC.

No more building drivers on your laptop, dealing with signing, akmods, third party repo conflicts, or any of that. We've fully automated it so that if there's an issue, we fix it in GitHub, for everyone.

But it's not just installation and configuration: We provide Nvidia driver versions 525, 520, and 470 for each of these. You can atomically switch between any of these, so if your driver worked perfectly on a certain day and you find a regression you just rebase to that image.

Or switch to another desktop entirely.

No other desktop Linux does this, and we're just getting started."

Source

[–] taladar@sh.itjust.works 4 points 1 year ago (5 children)

‘immutable’ distro

Are there even immutable distros old enough to have compatibility issues between a 5 year old installation and the latest version?

[–] TrickDacy@lemmy.world 2 points 1 year ago (3 children)

What is an immutable distro? I'm just now learning this is a thing

[–] alt@lemmy.ml 4 points 1 year ago* (last edited 1 year ago) (1 children)

It's often used to describe a distro in which (at least some) parts of the system are read-only on runtime. Furthermore, features like atomicity (i.e. an upgrade either happens or doesn't; no in-between state), reproducibility^[1]^ and improved security against certain types of attacks are its associated benefits that can (mostly) only exist due to said 'immutability'. This allows higher degree of stability and (finally) rollback-functionality, which are functionalities that are often associated with 'immutability' but aren't inherently/necessarily tied to it; as other means to gain these do exist.

The reason why I've been careful with the term "immutable" (which literally is a fancy word for "unchanging"), is because the term doesn't quite apply to what the distros offer (most of these aren't actually unchanging in absolute sense) and because people tend to import associations that come from other ecosystems that have their own rules regarding immutability (like Android, SteamOS etc). A more fitting term would be atomic (which has been used to some degree by distros in the past). The name actually applies to all distros that are currently referred to as 'immutable', it's descriptive and is the actual differentiator between these and the so-called 'mutable' distros. Further differentiation can be had with descriptions like declarative, image-based, reproducible etc.


  1. That is, two machines that have the exact same software installed should be identical even if one has been installed a few years ago, while the other has been freshly installed (besides content of home folder etc). So stuff like cruft, bitrot and (to a lesser degree) state are absent on so-called 'immutable' distros.
[–] TrickDacy@lemmy.world 2 points 1 year ago (1 children)

I really appreciate this thorough response. Are there arguments against immutability? Besides that it's probably a challenge to maintain...

[–] alt@lemmy.ml 2 points 1 year ago* (last edited 1 year ago)

Are there arguments against immutability?

Initially I was typing out a very long answer, but it quickly got unwieldy 😅. So instead, this one will be oversimplified 😜.

Currently:

  • Package management on native system just takes considerably longer on most atomic^[1]^ distros. The exceptions would be Guix and NixOS, but unfortunately their associated learning curves are (very) steep compared to the other atomic distros.
  • The learning curve in general is steeper.
  • Documentation is lacking.
  • Big shifts occur more frequently^[2]^.
  • Some things simply don't work (yet).

One might (perhaps correctly) point out that most of these are actually more related to the technology lacking maturity. And that atomic distros would actually (already) net positively otherwise. Therefore, I'd argue, the transition to atomic distros is perhaps more akin to a natural evolution. I believe (at least) Fedora has already mentioned the possibility to sunset the non-atomic variant in favor of the atomic one when the time is there (or at least switch focus). Which is why I believe that atomicity will probably leave a lasting impact to the Linux landscape, similarly to what systemd has done in years prior.

Besides that it’s probably a challenge to maintain…

If your use-case is supported and you've acquired the associated knowledge for setup/configuration and maintenance, then I'd argue it's probably even easier than a non-atomic distro; simply by virtue of atomicity, increased stability and rollback-functionality. But, as has already been established previously, the learning curve is steeper in general, so getting there is probably harder. With the exception being those whose needs are satisfied easily by the accessible software found in the main package-'storefront'. Which makes distros like Endless OS very suitable for people whose primary interaction with 'computers' has been mobile phones and tablets, as the transition is -perhaps surprising to some- near flawless.


  1. Yes, that's how I'll be referring to them.
  2. Fedora Silverblue switching to OCI container images for delivery of installations and upgrades. openSUSE's offerings switching to image-based. Vanilla OS switching from Ubuntu to Debian and to a model that's a lot more similar to where Silverblue is headed towards. NixOS switching to flakes. etc
load more comments (1 replies)
load more comments (2 replies)
load more comments (11 replies)