What are the pros and cons of the different immutable distros?

const_void@lemmy.ml to Linux@lemmy.ml – 66 points –
18

Nixos

Pros

  • Delarative Config
  • largest package repos

Cons

  • poor documentation
  • cli and package management is in limbo with unstable flakes/cli

Poor documentation combined with the step learning curve is quite a problem imho.

This is what ultimately repelled me. I've installed it for a couple weeks, and while I appreciate what it's trying to do, the learning curve was not worth the effort. At least not yet

Flakes aren't really unstable, but a lot of documentation is based on the old way of doing things. Also, Nix(OS) has a steep learning curve.

To enable the use of flakes, you have to use the 'extra-expiremental-features flakes' flag.

Edit: Apparently they are called 'extra-expiremental-features' not 'extra-unstable-features'. Regardless the nix docs explicitly describe them as unstable here

https://nixos.org/manual/nix/unstable/contributing/experimental-features.html

They're "experimental" because the RFC wadn't approved IIRC, but everyone in the community (and the new documentation) talks about amd used the new commands.

This is just my not-at-all-in-depth summary based on playing around with a few in VMs, but as a non-power-user:

Fedora Silverblue
Pros: Good support/documentation
Cons: barebones Gnome/required layering quite a few packages if you want any kind of customization before I could get my system up and running

OpenSUSE Aeon (MicroOS)
Pros: good number of built-in tools (e.g. Tweaks, distrobox)
Cons: documentation is sorely lacking

Vanilla OS
Pros: great ease of use/installation, container-centric
Cons: still very much a work in progress/small dev team

It's also worth mentioning Universal Blue which is based on Fedora Silverblue but has multiple variants with additional doftware. It seems like you can rebase an existing Silverblue system to it and also switch back without reinstallation.

The cons for Silverblue aren't really fair, you can customize the GNOME desktop at will installing Extension Manager from Flathub, and a lot of CLI tools you'd layer you can get working through toolbx/distrobox, and barebones GNOME is literally the same as stock Fedora.

The cons for Silverblue aren’t really fair

The customizing one most definitely isn't. As straight out of the box you can go to extensions.gnome.org and add all the extensions you want.

Now the big problem is the codecs, those have to be layered for proper vaapi/vdpau support. Then I had to layer a different kernel (Surface Pro), and different power management (tlp, since power profiles daemon gives terrible battery life).

While it's a con that I have to do this, it's also a pro that I'm able to do this where many of the other immutable distros don't allow this.

If you stick to Flatpak apps you don't even need the codecs on your base system (I've been using it myself this way for a while now). For power management, I personally prefer to layer powertop, which doesn't break power-profiles-daemon and works basically just as well as tlp, but layering tlp is perfectly fine too.

The custom kernel though, that's more complicated (and an understandable limitation to immutability), I'd recommend you look into Universal Blue in your case, as it might be a better solution.

Hmm.. I thought at the very least you needed to layer intel-media-driver for VA-API support for Intel.

Yeah, powertop is essential and should come in the default image. How else are you going to see exactly how much power your machine is using at any time? I wish PPD+Powertop --auto-tune worked for me, but the powersave scheduler it uses lets my Alder-Lake CPU run wild and gives me a good 2-3 less hours of battery life.

I plan on sometime investigating how to make my own image using Universal Blue, because really all I need is Silverblue+Surface Kernel+TLP+Hardware Accelerated Video. But too busy right now.

On my machine at least all I needed was Firefox (and any other video-related apps) from flatpak with the ffmpeg-full libs from flatpak as well.

Yeah, I didn't really explain myself very well, in retrospect

Like Fedora Workstation, there were quite a few packages that I needed to add after the initial installation - Gnome Tweaks, RPMFusion, Flathub, third party codecs, etc.

Silverblue being immutable made this process more of headache than I felt it should have been.

Flathub comes out of the box since F38 and with it you basically don't need RPMFusion and third party codecs. Even NVIDIA you can get out of the box without the need for the entirety of RPMFusion (which is what I personally do).

I can only speak for Silverblue, as I didn't try other ones yet. But I'm extremely happy with it.

General

  • I don't get the difference between rpm-ostree and other techniques, like those from VanillaOS or Aeon, yet. So I can't tell if ostree is the "best" one

  • BIGGEST pro (in my opinion): the rebase-function (see the following)

  • Working with it feels very "clean", as your base-OS doesn't get crammed with trash programs

  • You containerize pretty much everything if you can. Flatpak and Distrobox are your friend.

  • Should be more reliable, since there's "your" stuff and "the OS' stuff", and every system is the same -> devs can fix bugs better

"Official" (vanilla) Silverblue

  • The oldest one around. Big developer- and userbase

  • Very robust and stable

  • But also minimalist (no additional packages preinstalled)

  • Comes only with Gnome or KDE

  • You need to layer/ install essential packages yourself, which somehow isn't the recommended way to install stuff. I yet still have to find out what disadvantages this has.

Universal-Blue (uBlue)

  • Isn't a distro/ fork of SB, but takes advantage of the rebase feature. Basically, you can choose from where your distro draws it's OS-base. So, it's just a repository for OS-images.
  • Comes with essential packages and tweaks OOTB (distrobox, 3rd party stuff, Nvidia drivers, etc.), which aren't layered, but part of the image
  • Everyone can publish their image. There's the "normal" SB with QOL-stuff added, there are some DE-spins (e.g. XFCE), some are similar to SteamOS, and so on.
  • CON: I don't know how reliable and "bloated" they are compared to Vanilla SB.

Fedora delivers with Sway and Budgie as well now, in addition to Gnome and KDE