The whole point of Linux is to tinker, immutable distros destroy the whole point, not to mention, it's a very windows-approach
Not to mention there's no guarantee if security even with Immutable distros
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.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
The whole point of Linux is to tinker, immutable distros destroy the whole point, not to mention, it's a very windows-approach
Not to mention there's no guarantee if security even with Immutable distros
I have a really hard time getting Aurora working the way all my other Linux devices so that are running some form of Ubuntu (Mate or Bodhi). With that said, it's been very stable and i like not being interrupted with packages to install while working on things...
Mixed bag review. I give it 3.5 out of 5 stars.
I don't work in tech but I love to tinker , have a home lab etc. I love using Linux for this, been on Linux for close to 20 years.
Got a steam deck little over a year ago, it was my first immutable
I just moved to an immutable silver blue. Been loving it so far. There's a few things I have issues with, but it's "just works". I still distro hop and fuck around breaking my system for fun from time to time, hahahah. But having my main system on immutable has been great.
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.
I'm much more comfortable trying things that I'm not sure will (or expect not to) work. I can just blast the toolbox or whatever afterwards.
Compare to some of my earlier forays into Linux, where I'd do some nonsense and then attempts to remove said nonsense would break some other load-bearing part of the OS.
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.
The barrier for me is that I use a lot of apps which require native messaging for inter-program communication (keepass browser, citation managers talking to Libreoffice, etc.), and the portal hasn't been implemented yet. Its been stuck in PR comment hell for years. Looks like its getting close, but flatpak-only is a hard no go for me until then.
Even after that, I would worry about doing some Dev work on atomic distros, and I worry about running into other hard barriers in the future.
But the more apps the more the dedup is saving space
Not when every app decides to use a different point version of the same damn platform.
"Hello Mr. Application. I see you'd like to use the Freedesktop-SDK 23.08.27
"Oh...well hello other application. What's this? You want to use Freedesktop-SDK 24.08.10? Well....I guess so..."
Edited to add: Yes, I know that flatpaks will upgrade to use updated platforms. But it doesn't automatically remove the old one, forcing you to have to run flatpak remove --unused every week just to keep your drive clean. That's hardly user friendly for the average person.
The average person has a 1tb+ drive and doesn't care about a few hundred megabytes of bloat in a partition they will never look at. If someone is switching from Windows, every app having its dependencies self contained is mostly normal anyway (aside from the occasional system provided dll). The only people likely to care about removing old flatpak platforms are the kind of people who don't mind running the command to remove them.
That's a very fair point. But it's still annoying.
The average person definitely doesn't have a 1tb drive.
61% of steam users have 1tb or more total hard drive space.
https://store.steampowered.com/hwsurvey/Steam-Hardware-Software-Survey-Welcome-to-Steam
I don't think Steam users really represent the average person...
The average person doesn't own a computer anymore, but I think steam users are pretty representative of people who want to use the OS that markets itself as "The next generation of Linux gaming"
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.
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.
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.
Yes, some toolchain expect you to run pre-compiled dynamically linked binaries. These won't work on NixOS, you need to either find a way to install the binary from nix and force the toolchain to use it or run patchelf
on it somehow.
Same issue, I still use nix on m'y laptop because it's neat as can be, but I have to admit developing on nix can be quite a hassle if you don't go it "the nix way", moreover some packages don't work as well because nix doesn't link binaries the standard way (zed editor for example)
NixOS likely only refused to run it because you weren't running it in the Nix way. That's not a jab or anything, Nix has a huge learning curve and requires doing a lot differently. You're supposed to use devshells whenever doing development. If you want something to just work, you use a container.
Whatever issue you ran into most likely had nothing to do with NixOS being immutable, and was probably caused by the non standard filesystem hierarchy, which prevents random dynamically linked binaries from running.
I've never heard of flatpak and immutability being obstacles to developers, in fact I generally hear the opposite. Bluefin is primarily targeted at developers, and some apps, like Bottles, will only officially support the flatpak distribution because of the simplicity and benefits it brings over standard distro packaging.
It would be a problem without distrobox. Since that gives you a normal, mutable OS on top, you don't even notice the immutability.
I have investigated the idea and came to the conclusion that immutable distros are essentially a research project. They attempt to advance the state-of-art a slight bit but the cost is currently too great.
Perhaps somebody will some day create something that's worth switching to. But I don't think that has happened yet, or is happening with any of the current distros. Silverblue might become that with enough polish, but I feel that to get that amount of polish, they would have to make Silverblue the 1st class citizen, i.e. the default install of Fedora.
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.
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.
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).
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.