I thought we all agreed that “immutable” is a confusing term and that we should call it “atomic”
edit: I was wrong
How is atomic less confusing? Immutable means that something doesn’t change, atomic means that it’s the size of an atom or has nuclear energy
EDIT: I’ve learned that some people are overly pedantic about the meaning and practical use of the word “immutable”, so much so that they decided to create a bigger confusion by giving another word a completely different and exclusive meaning
Immutable does not mean “not changing”, but rather that you don’t have the rights to change. If you take the immutable option away, then its changing again, like when you update your system. People who have a problem with the term say, “see its not immutable, the term is a lie!”. Which I kind of agree, but somewhat conflicted.
Atomic is an attempt to create a new “meaning” with a word, that cannot be misunderstood. Its trying to avoid the situation of “Free” in example. But I don’t like the term Atomic either, because it just suggest to me that everything is split into many little parts and is not self explanatory like Immutable. I’m conflicted here too.
I’m always conflicted.
How could you install anything or change any setting if it “doesn’t change” ?
Settings live in user space. Software exist in containers like AppImage, Flatpak or Distrobox. If something need deep system integration, they can be layered on top of the system in the user layer. Immutable does NOT mean less control. Just exerting control over the system in a different, usually more systematic, automatic and deterministic way.
It’s not semantics, they are two different things.
And to your edit… Are you upset that there are two different words that mean two different things? I don’t understand.
they decided to create a bigger confusion by giving another word a completely different and exclusive meaning
Isn’t this just how words work…?
atomic has had a meaning for a very long time in IT, don’t pretend that it’s something made up bullshit. with this thinking we could just throw out the word mutable/immutable too, what is it my computer is radioactive and I’ll get cancer from it? of course not, because it has a different meaning with computers, and people in the know (not even just professionals because I’m not one) know it.
atomic means that if multiple things would change, they will either change at once, or if the task failed none of it will change.
sometimes these are called transactions, suse calls it transactional updates. but is that any better? now the complaint will be that suse must have transacted away all the money from your bank account!
and distros are obviously not immutable, that’s just plainly misleading. we update them, someone does that daily. updating requires it to be mutable, to be modifiable.
Fedora has pushed for the change by rebranding their immutable distros as Fedora Atomic Desktops, and these are likely the most popular immutable distros. Bazzite’s homepage also describes the distro as atomic, but never mentions the term immutable.
What does atomic mean in this sense? That seems more confusing than immutable.
How could you install anything or change any setting if it was truly immutable?
Immutable OS makes sense in certain scenarios, but not in home computing.
Atomic in software refers to an operation that cant be interrupted because it happens in one step. This one of the big selling points of atomic or immutable distros. Your system will not be left in a broken state by cancelling an update because updates do not take multiple steps, unlike traditional distros.
I disagree, because they are not the same thing.
Immutable means read only root.
Atomic means that updates are done in a snapshotted manner somehow. It usually means that if an update fails, your system is not in a half working state, but instead will be reverted to the last working state, and that updates are all or nothing.
I create a btrfs snapshot before updates on my Arch Linux system. This is atomic, but not immutable.*
There is also “image based” which distros like ublue (immutable, atomic) are, but Nixos (also immutable and atomic) are not.
*only really before big updates tbh, but I know some people do configure snapshits before all updates.
Man, I almost want to say “I love it”. Remove the “snap” and the “immutable” and I’m all in.
Almost there 🤏🏽
I don’t understand why people want immutable. I don’t know all that much about Linux but on my Steamdeck it keeps getting in the way anytime I try to do anything
Immutable is fantastic in theory. Where it falls apart is having to basically rebuild the whole distro every time you want to make a change. It should be there your base distro is immutable, then any extra changes go on an additional mutable layer but that would be difficult to set up. (You’d need a package manager like Nixos or something.)
your base distro is immutable, then any extra changes go on an additional mutable layer
That is exactly how OsTree and other layering solutions work. Only Nix requires a whole distro rebuild.
You certainly have to learn new ways of doing things when you want to tinker, but they are basically UNBREAKABLE, which is my main plus point. I’m busy, I need my PC to be reliable. I don’t want to have to troubleshoot stuff just to keep it up and running.
If I had more time I would really enjoy the tinkering, but I don’t so I need my distro just work.
I personally don’t tinker much with the OS. I want it to stay out of the way and let me do things. In the case of Bazzite, everything I need for gaming is just there and works without me lifting a finger.
I like the safety and simplicity immutables bring.
If I’m doing something out of the ordinary, a temporary container usually suffices.
It’s really made the switch from Windows as a daily driver much easier.
There’s KDE Neon already. The whole point of this distribution is the atomic immutable part.
Then just install KDE in your Arch install. Or use endeavorOS with KDE, or any other Arch based OS with KDE. Don’t be dismissive of other people’s interests.
So you’re telling me that if snaps take off and become a standard there’s a good chance I’ll have to use them just to get my drivers? Now I hate them even more!
No but you see the drivers will be (must be) approved by Canonical which surely makes things better :|
what’s the benefit of packaging drivers that way? surely not permission separation
Lame
Ehh to snaps. That would 100% be the first thing of support to drop if I were them. That said it cool to see more immutable distros experimenting, I wonder how much overlap there is the Kalpa since it is btfs based.
Honestly there definitely still seems some good space for innovation in the immutable space before we “figure it out”, so the more smart people experimenting the better!
I am not an expert but I don’t think Snap support can be added to an immutable distro after installation, meaning there is going to be some software that simply cannot be easily installed. Snap support is basically a legacy support feature at this point but I think it’s nice to cover their bases if they are trying to make something for widespread adoption.