this post was submitted on 13 Jan 2025
346 points (93.5% liked)

Linux

49040 readers
1380 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 recently took up Bazzite from mint and I love it! After using it for a few days I found out it was an immutable distro, after looking into what that is I thought it was a great idea. I love the idea of getting a fresh image for every update, I think for businesses/ less tech savvy people it adds another layer of protection from self harm because you can't mess with the root without extra steps.

For anyone who isn't familiar with immutable distros I attached a picture of mutable vs immutable, I don't want to describe it because I am still learning.

My question is: what does the community think of it?

Do the downsides outweigh the benefits or vice versa?

Could this help Linux reach more mainstream audiences?

Any other input would be appreciated!

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 132 points 4 days ago (4 children)

Immutable, doesn't mean extreme secure. It's a false sense of security.
It could be more secure.
But during a runtime, it is possible to overwrite operational memory, mask some syscalls, etc.

That's my 3 cents.

[–] [email protected] 12 points 3 days ago

I didn't know that inflation can affect idiomatic expressions.

[–] xylogx 2 points 2 days ago

Secure can also mean more resilient. The infosec C-I-A triangle has three legs. Confidentiality, Integrity and Availability. Immutable distros are more resilient and thus offer better availability in the face of attacks or accidents.

[–] [email protected] 18 points 3 days ago

Fully agreed. On almost any atomic distro, /home/user is writeable like usual, so any attacker is able to persist itself by editing ~/.bashrc and putting a binary somewhere.

load more comments (1 replies)
[–] [email protected] 54 points 3 days ago (2 children)

Immutable distros are great for applications where you want uniformity for users and protections against users who are a little too curious for their own good.

SteamOS is a perfect use case. You don't want users easily running scripts on their Steam Decks to install god knows what and potentially wreck their systems, then come to Valve looking for a fix.

Immutable distros solve that issue. Patches and updates for the OS roll out onto effectively identical systems, and if something does break, the update will fail instead of the system. So users will still have a fully functional Steam Deck.

If you're not very technical, or you aren't a power user and packaged apps like Flatpaks are available for all your software, then go for it. I prefer to tinker under the hood with my computers, but I also understand and except the risk that creates.

Immutable distros are a valuable part of a larger, vibrant Linux ecosystem IMO.

[–] [email protected] 19 points 3 days ago (1 children)

Immutable are the ultimate tinkerer's distros. It's just a different way of tinkering. True tinkering in immutable means creating your own image from the base image and that allows you to add or remove packages, change configs, services, etc.

Example: you create your own image. You decide you want to try something, but you're being cautious. So you create a new image based on your first with your changes. You try it out and you don't like it or it doesn't work for some reason, you can just revert back to you other image.

Another thing worth mentioning, with these distros, you can switch between images at will. I'm new to Linux as my daily driver desktop OS, and I've rebased three times. It's really cool to be able to do that.

[–] [email protected] 13 points 3 days ago (2 children)

Don't know why this would be downvoted. Atomic distro's are a tinkerers paradise, as all of it can be done fearlessly. I can make stupid changes to configurations that I don't understand on NixOS, then when things break, simply revert the git commit and rebuild. (Or reboot to the last build if I broke it bad enough).

load more comments (2 replies)
[–] [email protected] 13 points 3 days ago* (last edited 3 days ago)

So Bazzite basically is an immutable 3rd-party SteamOS. It was originally designed for handhelds (though has desktop images now) and includes the Steam Deck's gamemode package. That means it has the same interface, but working on a Legion Go or an Ally X. If anyone here has* any of those three you should seriously check it out!

The other thing as well is that more often than not, the update will succeed and you won't figure out until the next boot that something is wrong. However, Bazzite has a rollback tool so you can just change back to the previous image, reboot again and get to gaming.

That's the best reason for immutable for gaming IMO. I don't want to be fucking around with the OS when I'm in the mood to game. Being able to quickly rollback and jump into things in ~10 minutes or less is how it should be.

[–] [email protected] 4 points 2 days ago* (last edited 2 days ago)

Since the idea is that the "root partition" is immutable, serious question:

How do you fix a hardware config issue or a distro packaging / provision issue in an immutable distro?

Several times in my Linux history I've found that, for example, I need to remove package-provided files from the ALSA files in /usr/share/alsa in order for the setup to work with my particular chipset (which has a hardware bug). Other times, I've found that even if I set up a custom .XCompose file in my $HOME, some applications insist on reading the Compose files in /usr/share/X11/locale instead, which means I need to be able to edit or remove those files. In order to add custom themes, I need to be able to add them to /usr/share/{icons,themes}, since replicating those themes for each $HOME in the system is a notorious waste of space and not all applications seem to respect /usr/local/share. Etc.

Unless I'm mistaken on how immutable systems work, I'm not sure immutable systems are really useful to someone who actually wants to or needs to power user Linux, or customize past the "branding locking" that environments like Gnome have been aiming for for like a decade.

[–] [email protected] 67 points 4 days ago (5 children)

It's definitely great for the mainstream. Think of Linus Sebastian who has somehow broken every OS except for SteamOS.

It's not great for me who uses Arch Linux btw with the expectation that if the system doesn't break on its own, then I will break it myself.

[–] [email protected] 1 points 2 days ago (1 children)

And anybody who thinks that Linus doesn't look for those ways to break Linux is deluding themselves. He's a fucking asshole.

[–] [email protected] 2 points 5 hours ago

He can be an asshole, but I believe finding bugs is part of his job.

Would you rather have him find them and complain to a community who might know what they could be, or someone else who will just complain and buy a MacBook instead?

load more comments (4 replies)
[–] Nibodhika 4 points 2 days ago

what does the community think of it?

Everyone has their own opinion, personally I think they're a great idea and have lots of great applications. But just like rolling vs non-rolling release it's a personal and application dependant choice.

Do the downsides outweigh the benefits or vice versa?

Again, depends, for my personal computer I wouldn't use it because I think it could get complicated to get specific things to work, but for closed hardware like the Deck or even a fairly stable desktop used as a gaming system it's perfect.

Could this help Linux reach more mainstream audiences?

It could, it can also hamper it because people might start to try solutions that only work until next boot and not understanding why, or having problems getting some special hardware to work (more than it would be a mutable distro). But there is a great counter to this which is that once it's running it will be very difficult to break by user error.

At the end of the day I think it's a cool technology but that people should know what they're getting into, just like when choosing rolling vs non-rolling distro, it's not about what's better, but what suits your needs best.

[–] [email protected] 18 points 3 days ago* (last edited 3 days ago) (5 children)

I heard both flatpak and immutability are obstacles to developers. How bad is it really?

I've had NixOS absolutely refuse to run some compiler toolchain I depended upon that should've been dead simple on other distros, I'm really hesitant to try anything that tries to be too different anymore.

[–] FooBarrington 12 points 3 days ago (5 children)

It would be a problem without distrobox. Since that gives you a normal, mutable OS on top, you don't even notice the immutability.

load more comments (5 replies)
load more comments (4 replies)
[–] [email protected] 9 points 3 days ago (4 children)

Then you have NixOS, which is declarative, and fairly immutable.

You don't have to reboot to make changes, but you can't just run unlinked binaries either.

You can't do things like edit your hosts table or modify the FS for cron jobs. The application store is unwritable, but you can sync new apps into it .

You have to make changes to the config file and run a rebuild as root.

load more comments (4 replies)
[–] [email protected] 3 points 2 days ago

From an advertising perspective, it's important to think about who you're targeting. Who are your likely customers? Certainly there are some based on the strengths that you raised.

However, some people are definitely not a good target audience, and some people is actually a very large group of people. There are a lot of current and potential users who essentially want the standard major applications to work, and they're not going to touch the root partition, and they want things to be very simple. For people like that, Debian or Ubuntu or Fedora already do what they want. And these major operating systems have been around for so long that people will naturally be more confident using them, because they were their friends have experience, or because they think the organization has more stability because of its experience.

Of course a lot of things depend on how you define words, but to me the above paragraph describes the mainstream audience, and I don't think you're going to have much luck reaching them, because I don't think the thing you're trying to sell gives them extra value. In other words, it's not solving a problem for them, so why should they care.

[–] rollmagma 43 points 4 days ago (1 children)
Immutable vs Mutable

weird        normal
[–] [email protected] 29 points 3 days ago (1 children)

More like familiar and unfamiliar

load more comments (1 replies)
[–] [email protected] 28 points 3 days ago* (last edited 3 days ago) (2 children)

NixOS is kinda the best of both worlds, because it does everything in a way that is compatible with an immutable fs, but it doesn’t force you into abiding by immutability yourself.

You can always opt into immutability by using Impermanence, but I’ve never seen any reason to.

Edit: That said, the syntax has a steep learning curve and there are tons of annoying edge cases that spawn out of the measures it takes to properly isolate things. It can be a lot to micromanage, so if you’d rather just use your system more than tinker with it, it may not be a good fit.

load more comments (2 replies)
[–] [email protected] 11 points 3 days ago

I am a huge fan of immutable distributions, not for my personal daily driver but for secondary systems like my living room/home theater PC.

[–] [email protected] 9 points 3 days ago (11 children)

I don't mind flatpaks in a pinch, but having to use them for literally every app on my computer is an unreasonable amount of bloat.

load more comments (11 replies)
[–] [email protected] 19 points 3 days ago (2 children)

I personally vastly prefer mutable distros for my own system, but I understand the appeal for those who like them. As long as mutable distros remain an option I don't mind immutable distros.

load more comments (2 replies)
[–] [email protected] 21 points 3 days ago (5 children)

Immutable ≠ atomic

Bazzite is atomic (not immutable), same with Silverblue and other Fedora variants (they're all atomic, even on their main page it says atomic). It's kinda misleading ngl

[–] [email protected] 10 points 3 days ago* (last edited 3 days ago)

Fedora Atomic IS immutable. Rpm-ostree just layers (or hides) stuff on top of the already existing image. If you layer something, e.g. Nvidia drivers, you still download the same image everyone else uses, but basically compile the driver from fresh and put it on top. And that takes time. This is the reason using rpm-ostree to layer stuff is not recommended.

That's why uBlue exists for example. It gives you a sane start setup, where all drivers are already built in into the image. And then you can either use the clean base and add your own stuff to create your own image, or use already great ones like Bluefin or Bazzite, where everything you want is already included.

Atomic just means that every process is either completed without errors, or not at all. This way, you don't get an half updated and broken system for example in case you loose power. Happened to me quite a few times already, but never with Fedora Atomic.

Pretty much anything outside of /var/ (even /home/ is placed inside /var/) is read-only, and if you want to modify your install, you have to build your own image. Therefore, it is both immutable AND atomic.

That's why I prefer the term "image based"

load more comments (4 replies)
[–] [email protected] 27 points 4 days ago* (last edited 3 days ago) (3 children)
  • You can still apply updates live, e.g. on Bazzite (Fedora Atomic) with the --apply-live tag (or however it's spelled).
  • The root partition isn't read only per se, but you have to change the upstream image itself instead of the one booted right now. You can use the uBlue-Builder for example to make your own custom Bazzite spin just for you if you want.
  • Both aren't inherently secure or insecure. It's harder to brick your system, yeah, for sure, but you can still fuck up some partitions or get malware. It's just better because everything is transparently identifiable (ostree works like git), saved (fallback images), containerised and reproducible.
  • And you can still install system software, e.g. by layering it via rpm-ostree. Or use rootful containers in Distrobox and keep using apt or Pacman in there.
load more comments (3 replies)
[–] [email protected] 21 points 3 days ago* (last edited 3 days ago) (18 children)

Secure != stable Immutable distros aren't always more secure but rather more stable and hard to break Also btw nixos can apply updates without rebooting

load more comments (18 replies)
load more comments
view more: next ›