from HayadSont@discuss.online to linux@lemmy.ml on 21 Apr 16:06
https://discuss.online/post/18785154
Look, I’ve only been a Linux user for a couple of years, but if there’s one thing I’ve learned, it’s that we’re not afraid to tinker. Most of us came from Windows or macOS at some point, ditching the mainstream for better control, privacy, or just to escape the corporate BS. We’re the people who choose the harder path when we think it’s worth it.
Which is why I find it so damn interesting that atomic distros haven’t caught on more. The landscape is incredibly diverse now - from gaming-focused Bazzite to the purely functional philosophy of Guix System. These distros couldn’t be more different in their approaches, but they all share this core atomic DNA.
These systems offer some seriously compelling stuff - updates that either work 100% or roll back automatically, no more “oops I bricked my system” moments, better security through immutability, and way fewer update headaches.
So what gives? Why aren’t more of us jumping on board? From my conversations and personal experience, I think it boils down to a few things:
Our current setups already work fine. Let’s be honest - when you’ve spent years perfecting your Arch or Debian setup, the thought of learning a whole new paradigm feels exhausting. Why fix what isn’t broken, right?
The learning curve seems steep. Yes, you can do pretty much everything on atomic distros that you can on traditional ones, but the how is different. Instead of apt install whatever
and editing config files directly, you’re suddenly dealing with containers, layering, or declarative configs. It’s not necessarily harder, just… different.
The docs can be sparse. Traditional distros have decades of guides, forum posts, and StackExchange answers. Atomic systems? Not nearly as much. When something breaks at 2am, knowing there’s a million Google results for your error message is comforting.
I’ve been thinking about this because Linux has overcome similar hurdles before. Remember when gaming on Linux was basically impossible? Now we have the Steam Deck running an immutable SteamOS (of all things!) and my non-Linux friends are buying them without even realizing they’re using Linux. It just works.
So I’m genuinely curious - what’s keeping YOU from switching to an atomic distro? Is it specific software you need? Concerns about customization? Just can’t be bothered to learn new tricks?
Your answers might actually help developers focus on the right pain points. The atomic approach makes so much sense on paper that I’m convinced it’s the future - we just need to figure out what’s stopping people from making the jump today.
So what would it actually take to get you to switch? I’m all ears.
threaded - newest
Probably because everyone is still constantly recommending Mint as a good distro for beginners.
I JUST switched to Linux, and I tried Mint and Fedora, ending IP sticking with fedora. You are correct so many people said to use mint as a begginer.
People recommend Mint mostly as a better Ubuntu I think. Ubuntu is still the most popular and, increasingly, not the best distro to start with.
Fedora currently fills the space that Ubuntu used to fill. Probably the biggest caveat with Fedora now is the lack of codecs by default.
I switched to nixos years ago. Its better now than it ever has been as far as available packages and etc. But it does present issues if you get off the beaten path - the “now you have two problems” issue. For instance:
That said, more and more projects are supporting nix, and nixpkgs has gotten really big. I think they support more packages than any other distro now.
Ive been using pop-os for my desktop for years. Ive had no update headaches, roll back issues, or anything else that would compel me to swap distros for one that made these things better.
So to answer your question:
None of the above are compelling features that justify the work to switch off an already very stable distro.
Pop_OS! is a decent OS, been using it for a few years on my living room PC. On my gaming rig i been using Bazzite which i like where it’s going, love kde, but i can’t get surround sound working and for the life of me can’t figure out how to fix it. Might move on to another distribution, but we’ll see.
This is my reason. I’ve been using Arch exclusively for a few years, but have used it on and off since 2008. I still don’t consider myself an expert by any means, and I frequently pull the docs and old forum threads to solve issues I run into.
Documentation is the most important deciding factor for me. I didn’t use more fully featured distributions, even if they were “easier” becuase if I can’t look up the answer, and I have to live with something because I don’t know what button to press… I mean you may as well just give me a windows box again.
Arch benefits not just from documentation but from its repo. Whatever you get told you need, it is always a relief to find it waiting there for you already tuned for your distro.
I like fucking around and finding out. I also don’t like roll backs, real men only roll forwards :)
(don’t take that too seriously please)
Eh since my laptop is primarily for work and running my business, I have two separate base partitions for just such an occasion that I’ll mirror across once I know nothing went stupid. I just can’t afford to be goofing around procrastinating work, and then bork my system when I need to do invoicing and the like.
Lack of interest. It doesn’t solve any problems that I have.
But just think about all the problems you’re not having that you could be solving!
Exactly. It solves problems which I don’t have.
Long, LONG, time linux user here, but to answer your question, most general users don’t tinker. They want it to ‘just work,’ which is why Apple, and to a lesser extent Windows, has dumbed everything down and made it proprietary (beyond just the locked in money thing) so users don’t have to think. Plus, support is a big money maker, for the corporations anyway.
Most of the ones out there are weird, anti-configurable systems like mobile phone OS.
The only ones that really seem like “the future” in my eyes are Nix and Guix.
And I’m not going to use those because I already have a good setup with my conventional distro (Debian). Anything less than absolute perfection will not get me to switch.
Nix is imperfect because it uses systemd. Guix is imperfect because it has a smaller selection of packages, and a more difficult configuration system.
Yep! This has been my experience too. Once you want to do something that the devs didn’t build, then you have to fight the OS.
I switched a workstation to Secureblue for the very specific security priorities targeted by that project, but I think for the majority of users, the main reason for not switching to atomic is one you mentioned: why fix what isn’t broken? The main selling point promoted to potential new users seems to be that updates don’t break anything, but I can’t remember a single time since Debian Sarge that an update broke anything for me, and I actually find the rpm-ostree package layering and updating process to be far more of a headache than otherwise.
Unless it’s prepackaged like a steam deck, moving from the traditional way of doing things to atomic is a major change. Like any major change, people need a good reason to make it, and I think right now the only compelling ones are either hyper-specific (switching to okd and needing to build it on coreos, wanting to move to a specific atomic project, etc.), or just general curiosity.
I’m following your path leap on Secureblue, because I found the project philosophy appealing to my interest.
I don’t feel the same about the others Atomic distros. I’m probably missing something but other Atomic projects don’t seem to be adding much value if you know your thing for workstation home users.
Also, to the OP, reading the comments it seems clear to me that even with the best product you won’t be able to please everyone. Although it definitely plants the interest on some that are coming across the topic for the first time, which I think is good. Learning something new should be on everyone’s list.
I have a small testing field. My mother is using Opensuse Aeon and my father in law is using Fedora Silverblue. Since I am their IT support it’s fine. I asked what they wanna do on their Laptops and figured it doesn’t matter if they use windows, mac or any linux distro. Since I am most comfortable with linux, it is what they are using now. They are happy and I am getting the same amount of questions as before. Had no real trouble since then.
Neat. I’ve been thinking of doing something similar. My parents currently use a Mac, but they mainly just use the web browser. I was thinking of switching them to VanillaOS at some point.
How long have they been using those distros? Do you or they have any preferences for Aeon or Silverblue?
As long as it works and they can do their stuff, which is minimal, they don’t care. In fact they couldn’t say what they are using if you would ask them. They would probably just say Linux. This is in my opinion the best use case for immutable distros. While setting it up Silverblue was easier, as in the setup after installation had more software installed and there is no mandatory encryption setup. Aeon feels fresh and there is absolutely no bloat, but it is still RC at the moment.
This is my usecase too. I don’t personally feel any need for an immutable, but for family that regularly jams up their systems, bit makes sense. Unfortunately when I tried Aurora, it just wouldn’t boot no matter what. No idea why. Mint on the other hand just worked. Hopefully Aurora will get developed more and just work also because I would love to use it for family.
My current distro uses APK 3 as a package manager and that is already atomic. So I guess my current setup works fine, without any of the other hassles and limitations.
I honestly can’t think of a single time I’ve done this in the 20 years I’ve been using linux.
I dunno, it just seems like the latest fad. Debian/Arch work just fine.
The whole “I bricked my system” thing is just ridiculous.
It actually happened to me today on Arch.
I updated the system, including the kernel, everything went smoothly with no errors or warnings, I rebooted, and it said the ZSTD image created by mkinitcpio was corrupt and it failed to boot.
I booted the arch install iso, chrooted into my installation and reinstalled the linux package, rebooted, and it worked again.
I have no explanation, this is on a perfectly working laptop with a high end SSD, no errors in memtest, not overclocked, and I’ve been using this Arch install for over a year.
The chances of the package being corrupt when I downloaded it and the hash still being correct are astronomically low, the chances of a cosmic ray hitting the RAM at just the right time are probably just as low, the fact that mkinitcpio doesn’t verify the images that it creates is shocking, the whole thing would have been avoided on an immutable distro with A/B partitions.
You could have booted the old kernel in Grub.
Something like this happened to me once. Now I’m on Bazzite on my desktop and Aurora on my laptop.
Pure bliss.
I agree. I have become more amenable to things like Flatpak or Podman/Docker to keep the base system from being cluttered up with weird dependencies, but for the most part it doesn’t seem like there’s a huge upside to going full atomic if you’re already comfortable.
I love flatpak lol. something like debian + flatpak is win-win imo
idk I’ve gotten mine into a state i couldnt fix more times than I can count. Immuteable distros have been a game changer for me and if I’m being honest I think they’re going to be the biggest thing for mainstream adoption in Linux’s entire history.
I’m curious what you’re doing to your system that bricks it so often that would be considered a risk for a normal every-day normie user?
Upvoting but please stop using the term “bricking” this way. Bricking is permanent and there is no recovery. You have turned your device into a useless brick.
I’m quoting the OP. His argument is that atomic distros are the future because people are out there bricking their systems.
Doesn’t mean you have to repeat it 🙂
The entire premise of this post is that people are supposedly bricking their systems, and atomic distros fix this.
My argument is that nobody is bricking their system. I will repeat it, because that’s the assumption made by op to argue in favor of atomic distros.
You are free to disagree, but at this point you are just arguing to argue.
I didn’t say bricking, I was responding to the bit you wrote about immutability being “a fad”.
Ohh well go up a half a percent point boys. If we don’t include the steam deck.
I think “atomic” means “a bunch of actions grouped together as one action”, so that the system won’t end up in a state where some required actions are missing and becomes unusable. But it doesn’t mean it’s unto itself making a system unbreakable: If your system starts in a state of malfunctioning, then it also takes a series of actions to fix it, be it atomic or not.
Most Linux distributions start in the state of functioning after installation.
All “atomic” distros I’ve encountered allow booting into previous versions, so this is simply not an issue.
Yeah you’re right, “atomic” is not the same thing as “immutable”, but they are related terms and OP appeared to be using them interchangeably so 🤷♀️
Nothing good ever comes from ‘mainstream adoption’ though.
I’ve used Arch for 10 years as a primary desktop (well, Artix for the last 4) and barely had it bork on me. When is has, I’ve been able to boot it from grub in single user mode, mount my LUKS root drive, and downgrade whatever broke.
SteamOS has been fine for me on the SteamDeck.
I tried Bazzite for about a month then one day networking just broke and the documentation just wasn’t there.
I bricked it because the Ubuntu LTS 22 to 24 upgrade failed and I forgot and rebooted anyway
Near as I can tell they’re primarily aimed at desktop users who want to treat their computer like a smartphone.
I do software development and need a ton of tools installed that aren’t just “flatpaks”. IntelliJ, Pycharm, sdkman, pyenv, Oracle libraries and binaries, databases, etc. The last time I tried this I ran into a bunch of issues. And for what gain? Basically zero.
I don’t think that’s a very accurate assessment at all. NixOS, VanillaOS, and Bluefin are three of the first atomic distro’s I think of and they’re all heavily aimed at developers. All of them offer features to help separate development environments, which improve reproducibility of packages and environments. I prefer the Nix approach to containers, but each one definitely offers benefits for software development.
Every atomic distro supports distrobox and other containerization tools, and many support Nix and brew.
These distros are good for people who want to treat their desktop like a phone, but flatpak kinda lets you do that on any distro. Atomic distros are great for those who want to use tools to separate development environments for purity and tinker with the ability to easily rollback.
It’s the sense I got. It made everything harder for me.
I like the idea of distrobox but it’s simply broken. Things just don’t “work”. I’ve hit weird problems each time I try to use it for anything meaningful (don’t ask what - I don’t remember and I was always jumping down rabbit holes to figure out how to just get things that should work working). And the shared home directory model is simply broken by design since you now get competing containers fighting over the same files. You can use per-container home directories and now you get to setup a linux environment from scratch for each distrobox. So much duplication of effort… What a terrible implementation of what is potentially useful idea.
I thought it would be kinda like using Docker but it’s so much worse. Docker works well because the containers are often pretty simple with few requirements. Desktop environments are messy.
And frankly it’s not really worth it in the end. pyenv, sdkman and others have basically solved that problem without adding weird things to debug. They genuinely “just work” and let you easily switch versions of java, python, groovy, etc.
Thats all fair, I’m not trying to say their a better option for you or developers in general, just that they do offer features and benefits targeted at developers. I disagree with the idea that theyre only made for users with very simple needs.
Ive never run into any issues trying to build random projects or run random tools is distrobox, but I also haven’t used it as a main development tool. I prefer Nix for that.
Those tools are definitely great too, they just don’t offer the same purity because they dont handle external dependencies. Guaranteeing a reproducible build environment is something I find very valuable.
Doesn’t solve any problem I have. Why switch?
Also, interesting concept the immutable one, but just… Why?
I’m currently testing fedora (upgrading from mint) and since I’m fairly new I don’t want to venture into the fairly unknown territory that is Immutable atm.
Plus, I using a VPN, its crucial for my work, and I already see there are some issues with it because it has to be layered and blá bla bla.
Basically I’m just giving Atomic distros one or 2 years more so that the technology matures, software developers start taking it seriously enough to work around them, and for guides to start coming out.
Tried one of the universal blue images on a Chromebook. It was nice. But it didn't contain the scripts/configs to make the audio work. So that was that!
I like the concept, though.
I tried switching to VanillaOS a month ago. I had a hell of a time getting my niche use-case to work, consisting of using Syncthing to sync my Obsidian notes to a server via Tailscale. Apparently, I had to create a custom VanillaOS image just to install Tailscale? Also, I couldn’t get
wl-copy
to work. Also, docs were out of date and missing.See notes: lemmy.today/post/25622342/14849341
I like Arch because I have control over the system. At least with VanillaOS (not sure about other immutable distros), it seems like I’m supposed to give up control or fight with the system to let me do what I want.
I actually have accidentally bricked my Linux system in the past, but that was a long time ago and I learned from the experience. So it’s not a problem I currently have.
I still haven’t gotten to doing this, but actually, I was thinking the locked down nature of VanillaOS might be fine for my parents. They currently only use their Mac for browsing the web and not much else. Seems like VanillaOS might be a good fit for users that don’t have very demanding computing needs.
Sounds like I won’t be using Vanilla because that (obsidian + synching + tailscale) is definitely my primary need.
The last time I played with it, I just remember thinking, cool - but why?
The biggest thing for me is that a lot of them don’t officially support dual-booting on one disk, e.g. Kinoite. I like to have multiple distros installed so I have a fall-back. I love using Tumbleweed for gaming, but I’d love to use an atomic distro for my development work. But I don’t want to use one in an unsupported way, as that defeats the point in my eyes.
Immuteability is what enabled me to finally switch over full time. I don’t think a lot of geeks yet realize how huge they are going to be for wider-spread adoption.
Because it took me a few years to create my perfect Fedora workstation installation.
If one days it becomes bricked, I’d probably switch to an immitable distribution, but I’m sticking with workstation as long as it works.
Also there is no real upside to switching for me.
For me it’s too much time investment, I don’t want to tinker with my OS. The fact that it’s so common to screw up a system that atomic distros are becoming much more popular is a good example, I want an OS that doesn’t get screwed up in the first place.
Sorta-mostly agree. I’m not afraid to tinker, but I don’t really care to either. To some extent the pitch for immutable distros are that you won’t ruin everything if you fiddle with them. The Linux I installed years ago didn’t require fiddling, and hopefully doesn’t need a lot of protection from me anyway. If I was setting up a new machine today I might try an immutable distro, but I’m not going to replace a perfectly cromulent install I already have unless there’s a problem.
You just said it yourself. I do like to tinker. I can install a distro in 15 minutes. I can fix my system. I do make backups. Why would I need or want an atomic distro again?
I really like Debian stable, and have for a very long time. I’m not too fearful of fucking up the system because Debian stable is more stable than most anvils, and I have timeshift installed with regular backups configured which get stored locally and to a RAID 5 array on my NAS system (which is also running Debian). Anything super duper important I also put onto a cloud host I have in Switzerland.
If I want to do something insane to the system, which is rare, then I test it extensively in virtualization first until I am comfortable enough to do it on my actual system, take backups, and then do it.
I am working to make my backup/disaster recovery solution even better, but as it stands I could blow my PC up with a stick of dynamite and have a working system running a day later with access to all of my stuff as it was this morning so long as a store that sells system hardware is open locally. If it were a disk failure, or something in software, It would take less than a day to recover.
So what keeps me from switching is that I really do not see a need to, and I like my OS.
Similar for me. Debian works.
And I’m just too busy with other things to bother trying different distros. I want my computer to work with a minimum of fuss.
That said Bazzite does sound interesting and might go on my gaming system. Debian stable isn’t the best choice for that. Lol
Yea I like to play around with some different distros in virtualization occasionally to see what’s up, but I have found Debian just always meets my needs 98% of the way in addition to basically never breaking.
I know Bazzite is built specifically for gaming, but I can play pretty much everything I want on Debian using my Nvidia card and Proton. The Nvidia drivers were a lot easier to install than I think a lot of people make them out to be, but I might just be lucky with my hardware or something. Armored Core VI runs great for example, and I’m even using Gnome, not KDE.
In my experience I’m kind of hard pressed to see the benefit of Bazzite over Debian when it comes to gaming actually, but I don’t know a tonne about Bazzite so I’ll digress.
I struggled getting Zwift (online cycling game) running on Debian, and the issue turned out to be that WINE on Debian is a major version behind.
I did get it working, and everything else works (retro game emulators), but it’s like, huh maybe that wasn’t the best choice.
Same. Been using debian stable for over two decades. It does everything I need,
At work we use EL distros in vms. All of them are backed up by image every 3 hours, so a non-booting system is generally best dealt with by simply restoring the whole vm from before the change.
I’m not opposed to atomics, but I don’t have the need and haven’t yet invested much time into learning their differences.
Containerized packaging is toxic. Let them learn on their own time and not take you down with them!
What does that mean ?
NixOS even has Cosmic, so the DE thing isn’t true
Ohhh yeah I had bazzite,fedora immutable spins and stuff in my head.
I completely forgot about nixos
I agree with you. But there is Distrobox if you want to “bring your distro”
Sure, ngl I prefer the apps and stuff downloading on the main machine
ive been meaning to even try another distro for a while, regardless of being immutable or not.
but my machine works just fine how it is. why change it?
My main reason is one you listed. My setup works well for me; I enjoy it; and I don’t feel the need to fix what ain’t broke (when the “fix” likely involves breaking a lot of things I need to fix, and generally a lot of time and effort). Plus, from what I can tell, if you are particular about parts of your system, the immutable distros on offer are not diverse enough to cater to you—eg can I use my preferred init system, runit? All the immutable distros I know are systemd (which I am not a big hater of, but I like and am accustomed to runit already).
Edit: saw what you said at the end about what it would take for me to switch. It would be if I had a real use case for it, eg I regularly had problems that an immutable distro would solve, or I could see a way that an immutable distro would drastically improve my workflow.
An atomic distro is one which is in my understanding, has a basis in libostree, right? I’m familiar with the Fedora/RedHat versions but not any others.
Immutable distributions, for me to are wonderful when they are sparse. I don’t want anything on my OS which I don’t use at least once on a while.
If I install Fedora (RPM) Workstation to a large extent I can remove programs that I don’t want. Whereas SilverBlue (libostree), I’m stuck with whatever the maintainers template (is there a blocking mechanism?).
However, with sparse Fedora-IoT, I can’t break it - to a large extent - and it doesn’t have anything I don’t want.
I always install minimal versions of OSs, from Fedora (Everything iso), to Debian (debootstrap) to ArchLinux to Exherbo to Talos, just keep them cleaner longer. Then I fix them until they break!
I think they’re ideal for those starting out in Linux because they are not ready to break; not saying that they’re not for others too.
There’s enough documentation, at least for Fedora atomic distros, to make your own custom spin.
I’m not switching for any desktop, unless the basic OS is minimal; but have switched for Raspberry Pi OS to Fedora IoT (atomic distro), at least temporarily.
I wonder if OP and about 3/4 of the people in here understand the difference between atomic and immutable.
I’m not sure I do, please can you explain?
Atomic distros update in a monolithic block and if it fails, it’s as if no part of it occurred.
Immutable distros have a readonly filesystem and you can’t change any part of the system without explicitly remounting the files to write, then doing your updates. It’s not necessarily atomic when that update occurs, either.
You don’t need to layer or containerize applications you install in an atomic system, you can install an application as normal with the system package manager, it just has to complete successfully to be installed, then it becomes part of the overall A/B update system.
Immutable distros need to containerize the installations, or use layering to apply applications to the underlying RO filesystem, which makes installing software rather a pain in the ass at times.
OP keeps using the word “atomic” but the questions and explanation are more about “immutable”. And my answer to them about why wouldn’t I use an immutable system is pretty much the last, installing/updating/troubleshooting non-system software is a pain in the ass. On a dev station, it’s a nightmare.
You are technically correct about “atomic” and “immutable”, but you’re missing that e.g. the Fedora images use the wording “atomic” to refer to their update procedure, and they implement this using an immutable system. Nobody here is misusing these terms, because they are both applicable in this context.
I’ve been very happy with it on my dev stations, definitely hasn’t been a nightmare!
FWIW, I actually do understand the difference 😅.
As the term “immutable distro” has -unfortunately- become a misnomer, I went with the (more) descriptive “atomic distro” instead. At least it rings better than names like “distro with transactional updates”, “distro with (some degree of) managed state” or -heck- “distro with anti-hysteresis properties” 😜.
Granted, perhaps the notion (and/or intention) to lump the likes of NixOS together with Endless OS under one oversimplified umbrella term isn’t being helpful either. But I digress…
Though, I find solace in the fact that (at least within these discussions) Gentoo is regarded as a traditional distro 🤣.
Or…, put more formally: Creating and maintaining precise terminology for the diverse Linux ecosystem is incredibly challenging. While nerds like myself would enjoy the classification work, the effort required to keep terms accurate and widely understood in this ever-evolving landscape is no joke 😭.
Anyhow, I might as well hijack the remainder of this comment to thank you and everyone else that made contributions to this discussion. Much appreciated!
Back in the day when embedded devices are running Linux kernel 2.6, the kernel is gzipped and saved to an SPI flash, then extracted to RAM and run from there.
Does that sound immutable enough to you?
The decision on this design wasn’t for an immutable system, but just that flash chips were expensive. Immutability was an accidental achievement.
Actually we developers dreamed every day we can directly modify the operating system ad hoc, not needing to go through the compile-flash-boot agonising process just to debug a config file.
You see, my point is, when a system is in good hands, it just does not break. End of story.
Maybe the next time before you guys press Enter after
pacman -Syyu
(not exclusively saying your distro is bad, Arch pals, sorry), think about the risk and recovery plan. If you are just an end user expecting 100% uptime and rarely contributing (reporting bugs at least), consider switch to a more stable distro (I heard Debian is good), and ask yourself if you want an immutable distro, or do you just want a super stable system.every day. Two words, my dude.
Overlayfs was a thing since; what, Kernel 2.2? We had debugging and in-situ mods where required.
The reason most people still stick with windows/Macs. Current OS just works. I personally run mint, it works.
Before this i run windows 10 LTSC. The only reason i jump to mint is because it is almost the same as windows.
Pretty much me.
I’ve been daily driving debian for many years. I’m very comfortable here.
In 2025 with docker containers and flatpaks the benefits of an atomic OS don’t feel very compelling.
i use arch. I’ve got it set up and it works really well for me. I’d only switch if I had some feature I needed in atomic that I can’t have in arch. (not just a feature atomic has, but a feature I need that atomic has)
i have used arch derivatives for 3 years and only fucked my system once, it took less than half an hour to fix so this isn’t particularly compelling for me
chasing the new hotness is not something i do with my daily driver, might check it out on a laptop if i’m bored
I did, then I came back to arch because I couldn’t get vr working after more than a year of using nixos. I may come back though, my config still exists
nothing. I am a bazzite and bluefin convert. it feels like a dream after 20+ years of futzing about with Linux.
i’m currently using bazzite and nixos
two very different approaches to atomic, i’m not sure which one is better
one does the stable gaming thing very well and the other does magical things that are very impressive and efficient
honestly don’t know which approach will prove to be most beneficial
My current setup works perfectly fine, haven’t bricked my system in half a decade.
The learning curve seems steep. It seems to introduce a lot of complexity without much benefit for me. Docs are sparse and everything that is already out there is written with “traditional” setups in mind.
The learning curve is non-existent for its use case.
You boot it up, open the software center, choose the apps you like and run them.
It’s like Android for the PC.
If you notice a learning curve, run into barriers, or try to wrap your head around containers and layering, you’re already not the target demographic, and better off using a traditional distro.
Nah, I heavily disagree. It’s amazing for developers too, and they are explicitly part of the target demographic - not just of the normal variants, there’s even special developer-targeted images like Aurora.
I’m not interested, Fedora is ok.
Not everybody is interested. And certainly not everybody thinks that immutable distros are the end of history. Just you.
It’s cool but it’s just more hassle than it’s worth at the moment.
Atomic/immutable distros are just another tool in the tool box. It is great for systems with a limited use scenario like the SteamDeck or HTPCs. I also love to install immutable distributions on systems where the user (often IT-illiterate) and the administrator are different people.
On my desktop PC I will, for the foreseeable future, use a normal distro (ArchLinux in my case) but i am planing to look into changing my servers to immutable with docker. That could make updates/maintenance easier and reduce the risk for full server compromises
* btw
I haven’t tried them, so I cannot judge, but I’m just afraid I’ll run into issues when I will have to go off the beaten path. Inevitably I’ll have to do something hacky in order to fix some obscure software that the maintainers of the distro didn’t think of, and that’s currently already a big pain. But in such a strict setting it will be even more difficult. There will be no documentation and probably no guide or questions/answers on any forum either.
I’d be willing to try it for a productivity setup if I needed a reinstall, but not for my main PC because I just rely on too many hacks to get shit working.
Really cool in terms of rebasing and rollback, but Flatpak isn’t there yet (for me at least). Introduces lots of complexity without much benefit for me. They have their uses, but not for me yet. And honestly, I haven’t bricked my system in long enough that I don’t consider it a benefit I really care for.
Don’t get me wrong, they are cool, and I hope development is continued but they aren’t for me just yet.
I tried Silverblue.
And I wanted to run it without layering, cause everyone tells you to avoid it, since it kinda defeats the purpose of an atomic distro in the first place.
First of all, it was buggy. As an example, automatic updates didn’t work, I had to click the update button and reboot twice for it to actually apply, even though it was activated in the settings.
None of the docs helped (actually, there wasn’t any in-depth documentation at all). And no one had a solution besides “It should actually just work”.
That’s the main advantage (the devs test with the exact same system you run) gone right from the start.
Then Firefox is part of the base image, but it’s Fedora’s version, which doesn’t come with all codecs.
If you install Firefox from Flathub, you now have 2 Firefox’s installed, with identical icons in the GUI. So you need to hide one by deleting its desktop file. Except you can’t. So you have to copy it into your home directory and edit it with a text editor to hide the icon.
Then I went through all the installed programs to replace the Fedora version with the Flathub version, cause what’s the point of Flatpak if I’m using derivative versions? I want what the app’s dev made.
Then it was missing command line tools I’m used to. Installing them in a container didn’t work well cause they need access to the entire system.
Finally, I realized even Gnome Tweaks wasn’t part of the installation, and it isn’t available as Flatpak.
That’s the point where I tipped my hat and went back to Debian. Which isn’t atomic, but never gave me any issues in the first place.
Maybe it’s better now, I was on the previous version. Or maybe the Ublue flavours are better. But I don’t see any reason to start distro-hopping again after that first experience.
Honestly what you are describing here would bother me too. For example on my notebook I rely on configuring grub to use kernel argument
amdgpu.abmlevel=0
which fixes the screen colors getting washed out when in battery saving mode, but I doubt I would be able to configure grub on an atomic distro.Are you sure?
guix.gnu.org/…/Bootloader-Configuration.html
In my case, I tinker quite a bit when I’m bored, and immutable distros, as well as atomic distros, raise barriers that I’d rather not have to jump over to have my fill of tinkering.
I have to admit, when it comes to new developments in the Linux world, I tend to live under a rock … never switched to Wayland, not because I have any ideological reservations, but because my favorite WM (a minimalist WM developed by a friend of mine) is available only for Xorg.
I had heard about NixOS before, but until I stumbled upon this thread, I didn’t have a good understanding about what an atomic distro is. Now that I have a bit of an understanding, I guess I can only repeat what others said before, it seems to be solving a problem that I don’t have. I’ve been using rolling release distros for a very long time (at first Gentoo, like, 15 or more years ago, but Arch (btw) for over a decade now, with occasional, typically short stints in Debian-based distros), and the amount of problems caused by updates has been negligible for the last decade (Gentoo overlays 15 years ago could be a pain, for sure).
It does sometimes bother me that my OS config seems to so … static these days, but then again I have so many things going on in life on that I don’t feel a huge need to prioritize changing an OS that feels blazingly fast to use, stable, minimalist, and basically checks all the boxes. It just became my high-productivity comfort zone.
Look, I’m a Slacker. It’s not the Slack way.
I actually used bazzite as my first mainstream linux distro and I hated it because every second command I pasted in didn’t work and I didn’t understand why. I eventually figured out it was due to the immutable nature of bazzite and began telling everyone to never use bazzite because it doesn’t work very well.
Now I actually understand what the actual upsides are and why it’s different I will change to mainstream distros to actually get a hold of what it’s usually like before considering changing back over.
I’m on Debian stable on my desktop but I tinkered with SteamOS on the SteamDeck, so Arch.
I don’t actually know what that means. If the system because unbootable it’s because I explicitly messed it up, for example by editing
fstab
or tinkering with GRUB. I honestly can not remember anapt update
that broke the system, and I don’t just mean my desktop (which I use daily, to work and play) but even my remote servers running for years.So… I think that part mostly comes down to trusting the maintainer of the pinned distribution. They are doing their best to avoid dependency hell in a complex setup but typically, if you do select stable, it will actually be stable.
I do have discussions like this every few months on Lemmy and I think most people are confused about what is an OS vs. what is an application. IMHO an application CAN be unstable, e.g. Firefox or the slicer for your 3D printer because you do want the very latest feature for some reason. The underlying building blocks though, e.g. kernel, package manager, arguably drivers, basically the lower down the stack you go, the more far reaching the consequences. So if you genuinely want an unstable system somehow, go for it, but then it is by choice, explicitly, and then I find it hard to understand how one could then not accept the risk of “oops I bricked my system” moment.
I’d have to relearn a bunch of shit.
Don’t feel up to it. I’m so used to my setup.
Even using SteamOS (“Arch but we modded it to be sorta kinda like an immutable distro but not really”) miffs me more than it should.
I like the fact that linux is so easy to poke around in, even if it breaks. Breaking can be a good thing since that way I learn the most. I enjoy rebuilding my entire setup from time to time. I diskile the additional complexity.
Atomic distros dont stop you from breaking them, they just make it easy to undo breakage
I’m not trying to convince anyone, just explaining why I do the things I do and why I think the way I think. Fixing it easily misses the point, for me personally. If I can just undo my mistake then I miss the strong incentive to figure out what went wrong. Immutability itself is a wonderful thing. I love to write code using as much immutability as I can but thats for work. In my free time I want to raw dog a mutable linux distro because it’s fun for me.
I use Bazzite on my Steam Deck because I wanted to get LUKS encryption for the hard drive (and otherwise do not wish to manually maintain the computer). I cannot take what is effectively a general purpose PC out and about without encryption. Especially not with the current political climate in my country (USA).
From dealing with SteamOS, I am already familiar enough with how to set up a full dev environment on the immutable distros. So while that is not a challenge for me, it is still a hassle to deal with. I’d rather just directly install my libraries and binaries rather than do workarounds in containers (and then remember the containers).
I think we’ll truly be in the immutable desktop distro future when I can do something like install the base distro image AND simply
dnf install
something (e.g.nvidia-vaapi-driver
orgcc
) on top without having to layer it withrpm-ostree
. That is, my dnf installs should transparently live on top of the base distro, and that way my base system will never break even if something on top of it does. The problem with layering with rpm-ostree is you are running the risk of a future failed upgrade. It would be like if your MacBook said “sorry, you installed a weird XCode library and therefore we cannot upgrade the OS” – and that should obviously never happen. Restoring my computer to a base state could be as simple asdnf remove *
or a GUI option to “Revert to base + keep user files” and that should leave me with a functioning basic system.Anyway, even though I only use an immutable distro on one device I do see it as the future of Linux desktop computing. I am not up-to-date with the development efforts, but I think we’ll eventually reach a day when using and configuring it, even for advanced users, will be no more difficult than traditional distros. Maybe by 2030 that will be the case.
I made my remarks w.r.t. rpm-ostree and the Fedora family of distros because that’s what I use. Obviously the other immutable distros have their own versions of these tools and their own versions of solving the problems related to them.
I think most users just don’t really know much about atomic distros. A lot of people in this thread don’t seem to really understand the benefits and mention downsides that don’t really exist in most of them. I think eventually (and by that I mean in a VERY long time) atomic distros will become the standard. AerynOS is an upcoming one that seems to have a really amazing blend of it’s atomic features without disrupting the user experience people expect from more typical distros. It won’t replace Nix for me, but I hope it’ll convince a lot of people to try it out.
I also think atomic distros will become the norm eventually, but I think there’s a long way to go, and not just with user adoption. When I was looking into Nix I was very excited for quite a while, but eventually I realised it’s just another way of handling the package distribution/integration problem. A brilliant one, I agree, but with upsides and downsides like any other answer. And I realised that the incredible work put in by the Debian packagers is a better fit for my needs, no matter that it’s an older approach.
Perhaps one day, Nix or Nix-like will mature and grow to have the right options to fill my needs better. Perhaps one of the modern Atomics will be good enough for me. Or perhaps Debian et al will run out of steam and good works, or perhaps my needs will change. Or perhaps I’ll die first, after a long and happy life using traditional community package distributions.
But I look forward to the glorious future of GUIX/HURD. Even if I never live to see it.
There’s Guix sytem running on top of linux, so you don’t need to wait for hurd, :)
Flatpaks are problematic enough on its own and I avoid them when at all possible.
I’d never want to make my whole system flatpak based. That’s the opposite of what I want.
Let’s answer your question with a question: Why should I reimage my whole tailored home setup, have to learn a different method of doing everything on my system, and ultimately slow my workflow for an atomic system? Sure, it’s cool, but it’s not worth upending everything that I use for. I’m glad it exists, but I don’t currently have a need for it.
Nvidia RTX graphic card, Valorant, Microsoft Office suite, Adobe Creative Cloud, QuickBooks, AutoCAD, Revit, Visual Studio (full version), DirectX 12-dependent games like Microsoft Flight Simulator, Microsoft Teams, Visio, Power BI Desktop, Windows Mixed Reality, Dragon NaturallySpeaking, Adobe Premiere Pro, Adobe After Effects, CorelDRAW, Ubisoft Connect games, Cricut Design Space, MAGIX Vegas Pro, Acronis True Image, some more industry software… just to name a few.
You listed malwares. Nvidia works tho.
Sure, but stuff like this makes the vendor lock real. Forgot to mention solidworks and for example group policy’s (gpo) as well as windows vm / azure at work.
I use Gentoo, and atomic just doesn’t seem like a fit for me. That said I could see it being great for people who don’t tinker. If I were to get a family member to use linux I might pick an atomic distro.
Guix is source base rolling release if you plan to keep it up to date weekly, so I don’t know why you feel it so distant from Gentoo. Binaries updates are still rolling released but their pace is slower.
I just really like portage, I guess. I know how to use it, and learning how to do the same thing in guix doesn’t offer any benefits that I know of that matter to me, yet. Maybe one day.
I use atomic distros on my server and a media centre, but don’t see any reason to do it on my main systems. Stability is fine, and atomic distros make said tinkering more difficult.
Managing 30+ machines with NixOS in a single unified config, currently sitting at a total of around 17k lines of nix code.
In other words, I have put a lot of time into this. It was a very steep learning curve, but it’s paid for itself multiple times over by now.
For “newcomers”, my observations can be boiled down to this: if you only manage one machine, it’s not worth it. Maaaaaybe give home-manager a try and see if you like it.
Situation is probably different with things like Silverblue (IMO throwing those kinds of distros in with Guix and NixOS is a bit misleading - very different philosophy and user experience), but I can only talk about Nix here.
With Nix, the real benefit comes once you handle multiple machines. Identical or similar configurations get combined or parametrized. Config values set for Host A can be reused and decisions be made automatically based on it in Host B, for example:
I once installed Bazzite on my PC. I am an sway user/addict. So thought about installing sway on Bazzite.
Below is my journey
Let me try to download and compile it.
Downloaded but it won’t compile.
The libraries/dependancies are not installed. Here, try installing the packages via brew.
Nope, some of them are available and some are not on Brew.
Now what do I do? Okay, there is something called distrobox where I can install whatever I want.
Looks like I have to learn distrobox. Wait, sway is not a simple application, it’s a full blown window manager. Even if it compiles, will it work?
Most of the people online (Discord) told me the process won’t be very pretty.
Do I want to invest another week experimenting with distrobox?
Nope, installed Nobara the next day and I’m happy.
Disclaimer: Bazzite is a fantastic distro and it’s powering my RoG Ally. Atomic distros are fantastic for the niche they fill.
Atomic distros are not inherently immutable, although they often are because it’s an easy byproduct of atomic design.
Atomicity means transactions are either applied in whole or not at all. That means that your system will never be stuck in a broken half-way state if it crashes during an update.
In practice, this is often implemented through filesystem images that are mounted for instant changes. These are then often mounted as read-only for immutability, but distros usually have options to use them as read-write as well for tinkering.
In my opinion, atomicity is the future. The risk of your system breaking during every upgrade is tolerable, but why not eliminate it altogether? Immutability is a different game and is mostly a preference thing.
Thank you for the correction. So then, a more tinker-ready OS could do atomic upgrades, but allow manual changes/customisation to the system internals. And also handle traditional distribution-style package installation.
I suppose some people might still want to upgrade certain packages and not others, but that seems a pretty rare case these days - or maybe I just don’t hang out in the right crowds!
That would still be possible, actually! You can totally choose what packages to upgrade (depending on the distro). NixOS even lets you have multiple versions of the same package installed at once—another uninherent but easy byproduct of atomic design.
Atomicity is just a technical part of how it works under the hood. Normally when you install, uninstall or remove something, it directly does those modifications to your system. If your power goes out halfway through, you’re in trouble.
Most atomic distros do those changes to a separate filesystem image instead. Then when it’s finished, it instantaneously applies the all of the changes you did by mounting the new image. If your power went out halfway through, you’ll just be booting to the old image, untouched and pristine.
That doesn’t limit what you can or can’t do. You can do all kinds of tinkering and all kinds of partial upgrades to the image (again, depending on the distro). But when it’s all done, you can apply all the changes you did instantly.
Here’s another example. One way to atomically change a single file is to use
mv
. Moving within the same filesystem simply renames the file and does not transfer data.Imagine you’re adding a ton of lines to a live script, including
rm -rf ~/tmpdir
. If you directly modified it, there’s a chance that something could execute it while it was only partially written to the disk and runrm -rf ~
instead. Yikes.But if you wrote it to a separate file instead, you could apply your huge set of changes in an instant by using
mv
to replace the original file. That’s atomicity. It’s also actually howsudoedit
/visudo
works and one of the reasons why it’s recommended over justsudo “$EDITOR”
.Cool! Thanks for explaining.
Customizations, especially theming, at the system level. Or just learning to modify system files on an atomic distro, in general.
I’m sure it’s doable and I am genuinely interested in moving to atomic/immutable distros. But more for the security aspect than reliability as I’ve yet to break my install of Linux in a way that takes more than an hour to recover from. I’ve enjoyed the predictability of Debian and my very particular taste in UI makes for additional baggage just reinstalling, let alone moving to a very different distro.
Debian just works, it doesn’t complain if I forget to update it for a couple years, and I don’t feel like reinstalling my os this year