So I’ve recently taken an interest in these three distros:
All of these offer something very interesting:
Access to (basically) all Linux-capable software, no matter from what repo.
Both NixOS and blendOS are based on config files, from which your system is basically derived from, and Vanilla OS uses a package manager apx
to install from any given repo, regardless of distribution.
While I’ve looked into Fedora Silverblue, that distro is limited to only install Flatpaks (edit: no, not really), which is fine for “apps”, but seems to be more of a problem with managing system- and CLI tools.
I haven’t distro hopped yet, as I’m still on Manjaro GNOME on my devices.
What are your thoughts on the three distros mentioned above?
Which ones are the most interesting, and for what reasons?
Personally, I’m mostly interested in NixOS & blendOS, as I believe they may have more advantages compared to Arch;
What do you think?
I would check out something like universal-blue.org. It is fedora silverblue but with fixes that make it more usable (like codecs by default). It also ships distrobox right out of the gate so you can use that for apps that aren’t in the fedora repos, copr , or flatpak. You also don’t have to layer packages if you install via distrobox so I think it ends up being pretty handy for stuff that you want that isn’t available as a flatpak. Finally there are many different images for all different desktop environments so you can switch between them just by using rpm-ostree rebase and the link to the different image.
What is your usecase?
This is the key question.
Daily driver;
- Dev work (VS Code) 👩💻
- Using Firefox 🔥🦊🛜
- Playing games every now and then (mostly Steam & Proton) 🎮
I think NixOS is awesome, but it certainly doesn’t offer “access to (basically) all Linux-capable software, no matter from what repo.” - at least not natively. You can do that through containers, but you can do that with containers on any distro. Where it shines is declaring the complete system configuration (including installed programs and their configuration) in its config file (on file-based configuration, I wouldn’t really consider blendos a viable competitor).
Sorry for my ignorance,
but why is blendOS not a viable competitor to NixOS?To clarify, I was referring specifically to its ability to specify the full system configuration in its config file - not overall. But I haven’t used blendos, and my impression is mostly from a quick look at their documentation. They have a snippet with sample configuration. There, they have a “Modules” section, but I couldn’t find what modules are available, what options they have, how to configure them if we want to do something more complex than the available options.
Then containers are clearer: they have a list of installed apps, and then commands to bring them to the desired state (somewhat similar to a dockerfile). But even then, i imagine that if you have a more complex configuration, that’s going to get clunkier.
Thanks, that makes sense.
Do you think the use of OCI containers/images is a mistake/bad choice from blendOS?
How is NixOS different?Do you think the use of OCI containers/images is a mistake/bad choice from blendOS?
No. It’s probably the best way to run packages from Arch, Debian. Ubuntu, Fedora, and others, all on the same system.
How is NixOS different?
NixOS simply doesn’t tackle that problem, so it doesn’t come with containers out of the box. If you want to run packages from other distros on NixOS, you’d probably need to manually configure the containers.
I feel like you’re under the impression that the three distros, NixSO, blendos, and Vanilla OS, have similar goals. I don’t know about Vanilla OS, but the main similarity between the other two is that they’re both non-standard in some way.
But they’re actually solving completely different problems: BlendOS wants to be a blend of different OSes, NixOS wants to have a reproducible, declarative configuration (declarative here means, you don’t list a bunch of steps to reach your system state, but instead declare what that state is).
While I’ve looked into Fedora Silverblue, that distro is limited to only install Flatpaks, which is fine for “apps”, but seems to be more of a problem with managing system- and CLI tools.
No. Your understanding to Fedora Silverblue is wrong. I can just run
rpm-ostree install package.name
in Silverblue, like other Fedora spins. The small disadvantage is that I need to reboot to apply this update. (re-construct)but doesn’t that result in new A/B snapshots, or something like that?
Well, you can call it snapshots, but there is no need to think about it. In most cases, the system points to the newest snapshot (deployment 0). If a rollback is needed, I can pin to the older deployments. When a major change is to be applied (Like bump Fedora version), I’d manually mark the current deployment as dont-auto-delete.
Sure, but I’d like to have a more seamless experience, i.e. not having to open/start any “containers” or something like that.
I never used toolbox in my Fedora Silverblue system. I feel that I can’t tell the difference between using Silverblue and the default Fedora spin
Thank you; that was very insightful 😊
Also: I think
rpm-ostree
only supports rpm-based packages, tho; right?Can I install
.deb
software too?
And is there any kind of system-as-a-config-file kind of solution available like in NixOS or blendOS?For other systems I think distrobox and toolbox are kind the intended way to mess with them. For configuration as code ansible is a popular answer.
How well does Ansible work when I want to change my config? Is a quick reboot sufficient!
Also: I think rpm-ostree only supports rpm-based packages, tho; right?
Can I install .deb software too?
I don’t think
rpm-ostree
could support.deb
softwares, just likednf/yum
can’t support deb packages.Can you share your use case for trying to install a deb package in Fedora? I’m just curious.
And is there any kind of system-as-a-config-file kind of solution available like in NixOS or blendOS?
Good question. I only have a few computers, so I had never considered about it.
@zhenbo_endle @tanja you can install deb software in a seamless way using toolbox https://catalog.redhat.com/software/containers/rhel8/toolbox and a very simple Debian container
- NixOS built its own package manager. neet. Remind us why it’s better.
- blend and vanilla both run debian packages, which has a reduced validity check.
So none. Didn’t even have to look further, as they’re all dead to me.