this post was submitted on 01 Nov 2024
255 points (97.0% liked)

Linux

48213 readers
700 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
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 8 points 2 weeks ago* (last edited 1 week ago) (6 children)

I thought we all agreed that "immutable" is a confusing term and that we should call it "atomic"

edit: I was wrong

[–] [email protected] 20 points 2 weeks ago (3 children)

What does atomic mean in this sense? That seems more confusing than immutable.

[–] [email protected] 7 points 2 weeks ago

It means a change either applied completely and successfully, or not at all (think "atomic transactions" in databases).

[–] [email protected] 6 points 2 weeks ago

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.

[–] [email protected] -4 points 2 weeks ago (1 children)

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.

[–] [email protected] 3 points 2 weeks ago* (last edited 2 weeks ago)

Do a little research, dude... Do you think you're the first person to have those questions/issues? That's all been addressed.

I've been on an atomic/immutable distro for a few months now (Bazzite), and the experience has been great.

[–] [email protected] 18 points 2 weeks ago* (last edited 2 weeks ago)

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.

[–] [email protected] 6 points 2 weeks ago (2 children)
[–] [email protected] 5 points 2 weeks ago

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.

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

Not all. Red Hat started this by naming their immutable distributions with "atomic" (but then not consistently...). Some people agreed, but not everyone.

[–] [email protected] 1 points 2 weeks ago
[–] [email protected] -4 points 2 weeks ago (5 children)

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

[–] [email protected] 9 points 2 weeks ago* (last edited 2 weeks ago)

Atomic in software refers to an operation that cannot be interrupted, like the updates in these distros. Immutable is a more confusing term, as it leads users to believe that cannot control parts of the system, when in reality these distros still have tools to do so.

[–] [email protected] 3 points 2 weeks ago

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...?

[–] [email protected] 1 points 2 weeks ago

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.

[–] [email protected] 1 points 2 weeks ago

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.

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

How could you install anything or change any setting if it "doesn't change" ?

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

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.

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

Ah yes, the immutable OS, except for all of the various mutable parts.

We should totally not call it anything less confusing.

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

It's not confusing at all... How is this any more confusing than:

Flatpak - they're not literally flat...

Snap - I've never seen or heard any evidence of something snapping by any definition of the word I'm aware of.

Dolphin - what the fuck is this, no sea life whatsoever!

Kate - this is a text editor, not a person.

Distrobox - not in an actual box.

etc.

[–] [email protected] -1 points 2 weeks ago* (last edited 2 weeks ago) (1 children)

The main difference to your examples is that an "immutable OS" is in fact mutable, while none of your examples describe themselves with an adjective that is contradicting with their function/inner workings.

Flatpak is a pretty good name, because it makes software flat in the sense that it avoids having a (tall) dependency tree.

[–] [email protected] 0 points 1 week ago (1 children)

I installed Bottles, but was disappointed when it didn't actually have anything to do with bottles.

If you think every name of every product, etc., is going to be literal... you're gonna have a tough time in life.

[–] [email protected] 1 points 1 week ago* (last edited 1 week ago)

Bottles is a noun and not an adjective.

Also bottles has no IT related meaning, while immutable does.

"Immutable OS" is not a product name.


An "immutable" OS becomes mutable whenever a user wants to change anything on it.

Now imagine I keep describing my car as undrivable, because it only becomes drivable when somebody gets in and drives it. - You'd think that this is a completely deranged statement.