Skip Navigation

Opinions on immutable distros

Hey! I’m currently on Fedora Workstation and I’m getting bored. Nothing in particular. I’ve heard about immutable distros and I’m thinking about Fedora Kinoite. The idea is interesting but idk if it’s worth it. CPU and GPU are AMD. Mostly used for gaming.

128 comments
  • If you're bored, try Nix. It has all the characteristics of an immutable distro, aims for reproducibility, and is complicated enough to keep you amused for months.

    • Yeah I was thinking about it. Just feels like it might be too much for just day to day use. Without programming and having to reproduce the system on different machines. At least that’s what the comments say in few places lol

      • Yah, I get that. But lots of people use Nix as a daily desktop driver because it's immutable. It's not hard to set up the first time with some example configs, and if you want to get more complicated, it's certainly an interesting direction and great time sink.

        Frankly, I'd try it in a VM first, so you can snapshot it and play, and see what you think. I don't use it myself but I've set it up a few times and it's pretty cool to play with, I might get around to putting it on one of my bare metal desktops one day.

  • I see many people here wondering, why they should consider an immutable system.
    As someone, who thought the same a few months ago, and now chose Silverblue, here are reasons why:

    • Atomic updates: never worry about half applied installations anymore. Either your OS updates successfully, or it will just work like before.
    • Less bugs and better security: every install is the same, so devs can fix one bug or exploit, recreatable on every system.
    • Automatic updates (configurable): they get downloaded by the way, without you noticing. And if you reboot anyway, you boot into your updated OS. No waiting times. The system manages itself.
    • Way harder to break
    • Changes are easily undoable: if an update breaks anything, you can just select another image and reboot, without recovering anything.
    • No junk accumulation over time, the OS is kept clean
    • Clear distinction between "your" stuff and the OS
    • You can "swap out" the base OS cleanly and keep your stuff. Want KDE? No need to reinstall, just paste one command and delete everything Gnome-related, and you are now on Kinoite.
    • Flexibility: choose between dozens of different images, like one that replicates SteamOS or Ubuntu, has the MS Surface kernel build in, offers Hyprland, and so on...
    • And much more!

    My #1 reason is, that everything is worry free.

    Those advantages above don't apply to "normal" OSs, even, if I keep everything in Distrobox and Flatpaks.

    Immutable OSs aren't called "The future of Linux" without reason. They usually shouldn't impair anyone, and make the whole Linux ecosystem better in any aspect.

    • I'm sorry but none of the above sound different from a regular distro. Maybe I haven't got the gist. You can have snapshots and atomic updates on a regular distro, you don't have to reinstall to switch from Gnome to KDE, I can install all kinds of stuff cleanly anyway thanks to package managers, I don't use root often so the system files are effectively read-only as far as I'm concerned, and so on.

      As far as security is concerned I don't see the big deal, I mean I get why a read-only OS would in theory be harder to break into but it can still be modified for updates so I guess it's not really "immutable" after all.

      What am I missing?

      Edit: before anybody points it out, I do know about the rebase layers and I think it's an interesting approach, but ultimately still gets the same results as packages. It may be helpful for distro builders but doesn't make much difference as a user.

      • You're correct. But, and here's the big but, the whole immutability-thing isn't something the user should be worried about at all.

        On Android for example, the system is read-only too, and pretty much nobody cares too, because it was always designed this way and it doesn't inhibit functionality.

        It is mainly a big pro for developers in how I see it. See, every installation creates some package drift. One dependency here, one extra program there, no problem.

        But in sum, there will accumulate hundreds of "bloat"-packages over the years, which add many unknown vulnerabilities and bugs that are completely individual to your setup.
        And then it will begin: a program crashes here, there's your black screen, and every dev on the issue report says " closed, can't replicate". And after an OS-reinstall, it works again.

        And if you want to install KDE on Pop!OS for example, it is highly individual and there are still some packages you didn't see, and it will be very buggy. Some buttons that are misalligned, misconfigured drivers, and so on.
        I tried changing the DE on my normal Fedora one time and even though I thought I did everything correct, I had to reinstall due to screen tearing/ flickering, many misconfigurations, and so on.

        On Silverblue, it's a process of 5 minutes max, and then my setup will be the same as the one from thousand other people.

      • Yes you can do all this with regular distros but not as conveniently. Especially cleanly switching from gnome to kde and vice versa is a nightmare. And by switching I mean removing one completely(including dependencies) and installing the other.

  • I can't recommend Silverblue enough.

    Thing is: on the "surface" it's not that much different than the "normal" Fedora and it's spins.

    So, if you want something hugely different on the base, I'd recommend NixOS instead. Nix feels like "the new Arch" for me and is the tinkerer's dream. It appears to be very complicated too, so it should keep you "not bored" as you said.
    I personally wouldn't use NixOS though, as I am just a "casual" user and don't want to over-complicate everything.

    I personally am very happy with Silverblue, especially due to one reason: the ability to rebase to many many images.
    As other commenters have stated, there's a project called uBlue.
    It allows you to swap out the base OS (everything except "your stuff") with one command, so you can rebase to many different community spins and different desktops cleanly.

    The uBlue base OS is just Vanilla SB with some QOL stuff added, like codecs and other stuff. It is really a "just works" distro, that manages itself and functions in the background without you noticing.

    The other spins give you different DEs, preconfigured drivers, opinionated approaches to different DEs, a SteamOS clone, and so on...

    Absolutely great, 10/10

    • I might try Nix first and see how it goes, if that fails I'll try Kinoite (I prefer KDE :)) thanks for the input :)

      • If you want to try Nix, go for it!
        Feel free to update us all :).

        When I said Silverblue, I actually meant "atomic Fedora variants", which include uBlue and Kinoite. You can always switch between those with one command and 2 minutes of download time :)

  • If you are bored, no reason to change hahaha. If you want an always running system, use Kinoite.

  • There are many good comments here and from what I've read immutable seems best suited to the Enterprise IT environment where you don't want the user fiddling with the system, and you want built in rollback and quick configuration. As well as user data protection.

    But for Linux users at home I don't see any massive advantage. Especially if you're running a reliable distro like Mint or Debian, or better yet Linux Mint Debian Edition is the best of both worlds.

    If you only turn the PC on to watch YouTube, read a document, scan and print, surf the web or game your system should be 100% ok. Unless you're running Manjaro or Arch.

    What I don't like about the immutable approach is that it turns my PC into a dumb terminal locked by the distro Devs and updated at their will. It's ok if I have read only on my Android phone because I don't need to get into root etc. That's a good place for immutable.

    But I don't want my Linux box at home to be a just an appliance that someone else essentially has control over.

    That's very much an Apple approach. Don't let the user see or touch anything. They can just be content to change the wallpaper and add a widget. We'll decide when and how the OS gets updated, what apps they can and cannot run etc.

    Ultimately it infringes on user freedom and the very FOSS principles that set Linux apart from the rest.

    In short, fine for Enterprise IT but no good for the average Linux user.

  • Eh, I don't do anything illicit on the internet neither work at NASA or any other high-security-related job... so I'm in the "Lol" side of this whole story.

    Compile your commands, kids.

  • Immutable distros are all about making thing that were easy into complex, “locked down”, “inflexible”, bullshit to justify jobs and payed tech stacks and a soon to be released property solution.

    We had Ansible, containers, ZFS and BTRFS that provided all the required immutability needed already but someone decided that is is time to transform proven development techniques in the hopes of eventually selling some orchestration and/or other proprietary repository / platform / BS like Docker / Kubernetes does.

    “Oh but there are truly open-source immutable distros” … true, but this hype is much like Docker and it will invariably and inevitably lead people down a path that will then require some proprietary solution or dependency somewhere that is only required because the “new” technology itself alone doesn’t deliver as others did in the past.

    As with CentOS’s fiasco or Docker it doesn’t really matter if there are truly open-source and open ecosystems of immutable distributions because in the end people/companies will pick the proprietary / closed option just because “it’s easier to use” or some other specific thing that will be good on the short term and very bad on the long term. This happened with CentOS vs Debian is currently unfolding with Docker vs LXC/RKT and will happen with Ubuntu vs Debian for all those who moved from CentOS to Ubuntu.

    We had good examples of immutable distributions and architectures before as any MIPS router and/or IOT device is usually immutable and there are also reasons why people are moving away from those towards more mutable ARM architectures.

128 comments