this post was submitted on 05 Jul 2024
62 points (94.3% liked)

Linux

56346 readers
1314 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 6 years ago
MODERATORS
 

I was thinking about going immutable for a long time and now I'm choosing a distro to hop to.
My question is: what are good immutable distros other than Fedora Silverblue spins, UBlue family and NixOS?
Maybe someone uses/used any? What is/was your experience with it?

top 50 comments
sorted by: hot top controversial new old
[–] SexyVetra@sh.itjust.works 39 points 1 year ago (5 children)

Don't use NixOS.

Source:

  • I love NixOS
  • I use it as my daily driver on multiple machines.
  • I've contributed both to NixOS and surrounding ecosystem.

Evidence:

  • Learning cliff rather than curve because:
  • The state of the documentation should have been unacceptable a decade ago. Very unacceptable now.
  • The tooling is also over a decade behind.
  • Governance leaves a lot to be desired.

These things are getting better but not fast enough that I'd recommend it.

If you really want to look into nix, use it on another distro and see if you're still interested after getting a flake-based devshell together. (impossible challenge: do it for a python project that relies on complex dependencies like transformers)

[–] pinchcramp@lemmy.dbzer0.com 10 points 1 year ago* (last edited 1 year ago) (1 children)

Governance leaves a lot to be desired.

Genuine question from somebody who's out of the loop and doesn't use NixOS: How does this affect your day to day using the distro?

[–] vzq@lemmy.blahaj.zone 20 points 1 year ago

Basically you hemorrhage contributors because fuck this shit and then core components get more and more behind.

[–] dinckelman@lemmy.world 5 points 1 year ago

I've just switched my secondary machine to Nix, and was in the process of switching my main too, so it really is quite a shame. I'm really enjoying the distribution, but if the organization continues to have colossal government issues, and repelling active packagers, that's really not a good sign

[–] thejevans@lemmy.ml 4 points 1 year ago* (last edited 1 year ago)

Now that I'm deep in it with flakes + home manager + impermanence + disko/nixos-anywhere, it's fantastic having this much control and stability on all my systems, and I'm excited to start switching as much of my homelab as I can over to NixOS like my workstations.

But I totally agree, I would not recommend this to anyone who is not super interested in it.

[–] prex@aussie.zone 3 points 1 year ago

Guix? I'm ignorant of both but very nix curious.

[–] PerogiBoi@lemmy.ca 17 points 1 year ago* (last edited 1 year ago) (1 children)

Bazzite! It’s technically atomic and not fully immutable but I’ve been using it for about a week now (long time I know) and everything just works. Didn’t need to install any extra drivers to get it working with all my peripherals. I like it a lot. Fixed a lot of Wayland issues I was having on previous Ubuntu installs.

One feature I found really cool is the Waydroid and Boxbuddy integration. You can have Android apps installed alongside regular fedora apps. Just opens an Android emulator in the background. Discovered that last night by accident. Typed in “calculator” and it opened up the Android version of it. Really neat!

[–] flork@lemy.lol 16 points 1 year ago* (last edited 1 year ago) (1 children)

I'm surprised to hear you don't like Fedora. I recently tried Kinoite and I wish I'd discovered it sooner. I've never had a Linux distro that felt so detail-oriented and complete. I'd be curious to hear your reasoning!

[–] Kangy@lemmy.dbzer0.com 13 points 1 year ago (2 children)

Please don't hurt me but what's an "immutable" distro?

[–] Telorand@reddthat.com 21 points 1 year ago (1 children)

It's a distro that makes all but a few system directories immutable. This means you can't just install whatever you want in the same way you would install in a traditional Linux system.

This comes with some benefits:

  • Malicious and buggy software can't permanently fuck up your installation. Even root can't edit those directories.
  • Each system update replaces only the system layer, but you can rollback to the previous one if something breaks.
  • You can rebase to other images (like going from Fedora Kinoite to UBlue Aurora) with a simple command, and you don't need to reinstall anything or worry about backing up your /home directory.
  • Most software is installed via flatpaks or appimages, keeping a layer of separation between your system and your applications.
  • Distroboxes/Podman containers can handle a lot of additional software while keeping it safely containerized.
  • The system is generally reproducible, so the core of what you have is the core of what everybody else has.

Some drawbacks:

  • You can't install whatever you want however you want. There are some hard limitations on where files are allowed to go, and installing certain software that interacts with the kernel can be tricky (I'm currently trying to figure out the best way to install my VPN provider's client).
  • There's a definite learning curve to working with containers. It's not always as simple as "create container, install thing."
  • There's a definite learning curve to retraining yourself to think in layers/containers.

Some examples of modern immutable distros are:

  • Fedora Silverblue
  • Fedora Kinoite
  • Universal Blue Aurora
  • Universal Blue Bluefin
  • Universal Blue Bazzite
  • NixOS
  • BlendOS
[–] Kangy@lemmy.dbzer0.com 3 points 1 year ago

Thank you for the detailed explanation!

[–] SeekPie@lemm.ee 5 points 1 year ago (1 children)

As I understand it, it's read-only, so the updates you get are basically replacing your current ones but keeping your apps (like flatpaks) installed.

[–] Kangy@lemmy.dbzer0.com 3 points 1 year ago (1 children)
[–] pukeko@lemm.ee 7 points 1 year ago (1 children)

I think about it like this:

Layer 2b: ->> User applications (flatpak, nixpkgs, etc.)

Layer 2a: ->> User data (mutable, persistent no matter what your system layer is)

Layer 1: -> System (immutable/read-only/updated "atomically" meaning all at once) 

Layer 0: Hardware

Or, alternately, it's what macos has been doing with absolutely no fanfare for several versions now. That's not a knock, btw. It's an illustration that it can be completely transparent in use, though it may require some habit changes on linux.

[–] Kangy@lemmy.dbzer0.com 1 points 1 year ago

I see, that makes sense. Thank you!

[–] BlueSquid0741@lemmy.sdf.org 10 points 1 year ago (2 children)

I’ve been using Opensuse Aeon just over a year and it’s done great.

Tumbleweed user for the last 5 years, and dealt with a few issues over that time. The usually infrequent update break that comes with rolling release. And the Opensuse ‘Patterns’ started, which I loathe and it’s a disaster to try to disable them every install.

Aeon hasn’t had any of those issues. It’s been very much a “turn it on and get to work”.

I’ve generally had less issues with Aeon than Tumbleweed - like certain flatpaks not crashing.

But downsides as I see them:

I’m not a gnome guy. It’s fine though, I don’t hate it. But some people can’t stand it.

I had a bit of trouble running wine. Something about the default security policy. There’s a known workaround.

[–] Xander_Meters@discuss.tchncs.de 3 points 1 year ago (1 children)

If you don't like gnome have you checked kalpa?

[–] BlueSquid0741@lemmy.sdf.org 3 points 1 year ago

Kalpa needs to attract more developers to keep up with Aeon’s pace. I understand it is usable as a daily driver, but it’s not just a one to one mirror of Aeon with Plasma on top.

https://sfalken.tech/posts/2024-06-08-how-do-aeon-and-kalpa-relate/

Richard Brown is all in on Aeon along with whatever contributors are helping him. Stephen Falken appears to have no one helping him work on Kalpa unfortunately. I disagree with Richard’s stance that Kalpa shouldn’t exist, but I do wish there were some capable people able to help that project.

I don’t mind using Gnome anyway, it actually does solve some networking issues that I’ve always had with Plasma. (Dolphin not handling it well whilst Gnome Files has no issues)

load more comments (1 replies)
[–] treadful@lemmy.zip 10 points 1 year ago (1 children)

Here's a resource I've been keeping in my back pocket for when I dive in:

https://github.com/castrojo/awesome-immutable

[–] pinchcramp@lemmy.dbzer0.com 7 points 1 year ago* (last edited 1 year ago) (1 children)

I've heard good things about VanillaOS. Not used it myself though.

With their package manager apx, you can use software from pretty much any distro in VanillaOS (copied from link above):

Apx is a tool that allows you to generate work environments based on any Linux distribution and seamlessly integrates them with the system in a convenient way ...

[–] IrritableOcelot@beehaw.org 6 points 1 year ago* (last edited 1 year ago) (1 children)

From OpenSUSE there's also leap micro. Never used it, but maybe worth looking at.

If you don't like fedora it might still be worth trying one of the fedora atomics, depending on what you didn't like. For instance, I could never get used to dnf, but it's largely irrelevant on an atomic distro anyways.

I would love to see a true atomic Debian-based distro, but I think that's a long way from maturity.

Edit: opensuse aeon will also be released soon, but at least the comments on this post seem to think that there's some important things missing from Suse atomic.

[–] OneRedFox@beehaw.org 6 points 1 year ago (1 children)

GNU Guix is the only other one I know about besides the ones you listed.

[–] material_hegel@lemmygrad.ml 4 points 1 year ago* (last edited 1 year ago)

Highly recommend Guix, been using it as my daily driver for years now.

System Crafters has a really nice series on getting it setup the way you want it. I think it's fixed a lot of stuff that is a little wonky with Nix -- proper separation of config-time things and build-time things with g-exps, no putzing with bash scripts, grafting so you can reuse builds even when dependencies get updated, and just general good documentation and hackable culture with a pretty active IRC. They've recently added support for also managing your dotfiles the same way you do packages and system config (Guix Home). They've also pushed the boundaries of bootstrappability/reproducible builds so far that bitcoin-core is now building on Guix for security.

The system is pretty well thought through, and has saved me a few times where I would've bricked my machine on a mutable distro -- now, I can just boot to a previous version of the system from the bootloader whenever my lastest changes are messed up.

There's also the Wayblue family of Wayland distros, based on Ublue.

It's hard to say for certain whether a distro will work for your hardware, even the Nvidia-specific images can have bugs related to the Nvidia drivers or their interaction with compositors.

I've used NixOS for a year.

I also tried Fedora Sway Atomic for a week or so. It mostly worked well, but I eventually found that it's really hard to use Nix for development on a graphics application, because linking with the system Vulkan drivers is near impossible. The loader used by Nix's glibc will ignore FHS locations. That seems to rule out a lot of the benefits of using Nix.

So I gave up on using Nix + Fedora as a failed experiment and went back to NixOS.

My wish list for Nix, Wayland, and Sway is pretty long. I kinda wish I had the time to make a new distro.

[–] sergay@discuss.online 3 points 1 year ago* (last edited 1 year ago) (1 children)

Currently, the only projects I'd refer to as (remotely) GA are ChimeraOS, Endless OS, Fedora Atomic, Guix System, NixOS and their derivatives. The rest is, unfortunately, simply not there yet. The closest to these would be openSUSE Aeon. But, if you'd like FDE on your device, then you'd have to forego it for now. Currently, I would advice against relying on any other projects; including Arkane Linux, AshOS, blendOS, carbonOS, MocaccinoOS, Nitrux, openSUSE Kalpa, rlxos and Vanilla OS. Unless, you're fine dealing with whatever random and fringe issues you may have to face.

As for the previously mentioned GA 'immutable' distros, you don't like to pursue Fedora Atomic, NixOS and their derivatives for IMO fair reasons. ChimeraOS is primarily an OOTB console experience distro (aka couch gaming) that happens to be 'immutable'. Therefore, bending it (to become your distro for general use) will definitely be an involved process. But, it's possible. Likewise, Endless OS is somewhat locked down (beyond what you'd expect from your average 'immutable' distro) and has to be bend (at least slightly) in order for it to be more suitable as a daily driver.

This leaves us with Guix System. IMO, if you want to pursue this right now, then Guix System is simply the only remaining way of going forward. It's fit to suit whatever needs you'd have and offers access to official documentation that's at least a decade ahead of the one found for NixOS. However, don't expect this to be entirely painless; 'immutable' distros require (in general) a bit more know-how compared to traditional distros. And within the 'immutable distros', Guix System and NixOS are uniquely positioned for how 'powerful' they feel compare to (literally) any other distro. But, with great power comes great responsibility. Hence, you should definitely know your shit.

Finally, if FDE is not a hard requirement for you and if you can live with GNOME and if don't have qualms against containerizing everything and if you don't intend to tinker, then you might also consider openSUSE Aeon.

[–] Laser@feddit.org 2 points 1 year ago* (last edited 1 year ago) (3 children)

Back when I was looking to switch distributions a year ago and it came to the choice between NixOS and Guix System, the latter unfortunately lost due to lack of features I considered essential for me. These were availability of proprietary packages (notably Steam, though I guess this could be rectified with a flatpak version or something), and no support for secure boot, which was the prime reason to switch in the first place, as I wanted to enable passwordless FDE unlock on boot for my machines (at least for the desktop, this should be secure because of fTPM).

Secure Boot is a bit of a more involved process with Lanzaboote, it's not just another "enable = true;", but at least after initial setup it just keeps on working.

I recently spun up another server for various uses, one being backups using restic. According to https://packages.guix.gnu.org/search/?query=restic, it's at 0.9.6 in their repos. NixPKGs has 0.16.5. 0.9.6 turns 5 years old this year.

The other services (yes, they are sketchy, but all GPL) aren't even in Guix at all. Yes, that's a network effect, but if switching the distribution forces me write half of it myself (exaggerating here) it's not suited for my case. The Nix ecosystem has issues but at least it enables me to build the system I want. Guix unfortunately is just another GNU project that's more focused on ideals than practical reality, which, given GNU's nature, is completely understandable and justified. But probably also the main reason for why in the real world, Nix is dominant in its niche while Guix System is a footnote.

load more comments (3 replies)
[–] Dotdev@programming.dev 2 points 1 year ago (1 children)

There is blendOS which is an arch based immutable distro similar to Vanilla OS with different DE options

[–] redeven@lemmy.world 6 points 1 year ago

Except the installer requires one specific repo mirror to be up, which can't be customized, which has been down for weeks and the dev isn't very interested in providing any fix or workaround so a lot of people literally can't install it.

It's a bad suggestion, it's a beta product not fit for end user consumption yet.

[–] Chewy7324@discuss.tchncs.de 2 points 1 year ago* (last edited 1 year ago)

Fedora Atomic is greag. uBlue is better ootb, but most of it can be simply achieved by layering some packages (rpm-fusion, enable auto updates through /etc/rpm-ostreed.conf).

NixOS is a whole nother beast and I'd only recommend it if you use standalone compositors (labwc, hyprland, sway, wayfire, river, ...), or want a declarative system.

Edit: Just read your comment about not liking Fedora. In that case I'd recommend OpenSUSE Tumbleweed. Other immutable distros are smaller and I don't have any experience with them. (IMO with atomic distros the distro doesn't matter much because apps are installed through flatpak or distrobox anyway.(

[–] DieserTypMatthias@lemmy.ml 2 points 1 year ago* (last edited 1 year ago)

Secureblue, GnomeOS (if you like updating daily), VanillaOS, AOSP, SteamOS, blendOS, and many more.

[–] Pacmanlives@lemmy.world 2 points 1 year ago

Opensuse Micro