Posted in

Immutable Linux distros are not the only way to build a system you can't break

The topic Immutable Linux distros are not the only way to build a system you can’t break is currently the subject of lively discussion — readers and analysts are keeping a close eye on developments.

This is taking place in a dynamic environment: companies’ decisions and competitors’ reactions can quickly change the picture.

Immutable Linux distros absolutely deserve all of the attention they get. It’s a read-only base, atomic updates that either fully apply or not at all, and the applications are sealed off from the system, adding up to a OS that’s difficult to actually break. If your goal as a new Linux user is to never have to think about it, then it’s an easy recommendation, but immutability isn’t what makes Linux rock-solid. On the question of stability and recovery, a normal non-immutable distro can easily meet those requirements.

The fear that immutable distros address is pretty narrow and specific: you change something, your system stops functioning, and any recourse is outside of your knowledge. Before immutability was popular, the answer was simply Btrfs filesystem paired with automatic snapshots, addressing the exact same issue. A snapshot is a near-instant, space-cheap record of your system at a point in time, exactly like a Restore Point in Windows. Configure a tool like Snapper to take one before and after every package operation, and every update leaves behind a known-good state you can return to.

The recovery part of the equation is what mirrors immutable distros a bit. With a bootloader like Limine or a helper like grub-btrfs, your snapshots are in the boot menu before the OS is loaded, so if you make a mistake, going back is as simple as rebooting and navigating through that snapshot list. You do not need a working desktop to get back to a working system with snapshots.

The catch is, of course, if your drive dies, your snapshots die with it. It’s not a true backup in the sense that the data is safely stored elsewhere, but it’s more of a recovery tool in the event of an OS-level mistake.

Spice up your Linux life with these fun yet highly-functional distributions

Your first weeks on Linux are mostly spent installing things and trying them. You find a guide, it tells you to install a package, you install it, use it, and maybe uninstall it depending on how it works for you.

Immutable distros interrupt that loop, and that’s by their very design. On an rpm-ostree system like Silverblue, adding a system-level package layers it onto the base image and stages it for the next boot, so the thing you just installed is not usable until you reboot. The real path for development tooling is not the actual base system, but separate containers through something like Distrobox, and for a newcomer that doesn’t often use Linux who might be following a tutorial that assumes an ordinary system, it is friction stacked on friction. A mutable distro lets you make the mess the tutorial expects (or doesn’t), and snapshots let you walk it back if the mess turns out badly.

Linux is a completely different beast than it was a decade ago.

The “silent cost” to using an immutable distro is an intangible one, and it’s the other side of the coin for its biggest strength. Immutable distros keep you safe partly by keeping you out of the system, and that’s exactly what someone who never wants to learn Linux is looking for, but it’s a mild handicap for someone that does.

A snapshot-backed traditional system lets you be reckless and safe. Edit a config file you do not fully understand, install something experimental, enter a command, run a fork bomb, and then reboot into your last known-good snapshot. Of course, this isn’t something you have to want, but if learning is any part of why you switched to Linux, immutability will get in the way of that.

There are tons of Linux distributions, but some of them just aren’t suitable for beginners

Immutability does not only help you recover from a bad update, but also makes it much less likely to happen in the first place. The base is read-only and an update swaps in as a complete image that either applies or does not, so you avoid the half-applied, partially-broken states a live traditional system can end up in. A snapshot, by contrast, only catches you after you fall. Immutability is the rail that makes it impossible to fall, and that’s the true conceptual difference between a snapshot and immutability.

At the application layer, the gap continues to widen with Flatpaks, which have merit for being installed on every distro, not just immutable ones. It’s impossible for snapshots to give you the kind of isolation that they give you, and they’re the primary mode of app delivery on most immutable distros.

I’d implore you to choose a type of distro based on your curiosity level rather than fear. If you never want to think about your operating system and you are happy to install apps as Flatpaks and system tools in containers, an immutable distro is a fine place to live. If you would rather have a system that behaves the way the rest of the Linux world assumes with a recovery net underneath you, a traditional distro with Btrfs snapshots gets you there.