Just discovered these when I asked Mastodon what OS I should use for a PC I’m building with my kid. Looking forward to trying them out!
You should look into the Universal Blue images
I especially like Bluefin
What’s the difference between Bluefin and Silverblue?
I was interested in the Ublue images but it sounded like Silverblue is kind of the “default vanilla favor” and the Ublue images stack more stuff on top or modify it for special use cases. So I’m now on Silverblue, and it’s pretty fucking awesome as a “forget it’s even there” general purpose laptop OS so far.
It’s basically Silverblue but with all the nice to haves already built in. They try to make it extremely user friendly for install and then just using it without tweaks or having to add anything yourself
How does installing apps work? I know you can use flatpak. But, what if it’s a cli app that you want to install that isn’t on flatpak?
If it doesn’t need to access root files, you install it inside a container.
toolbox create
toolbox enter
Takes just a few seconds and now you’re inside a traditional Fedora 40 CLI system that can access your /home but otherwise has a separate file system.
This is great for setting up a dev environment without polluting the host system.
If it does need to access root files, you can install it with rpm-ostree, which basically creates a new OS image that contains the app.
rpm-ostree install --apply-live [package name]
But if you feel like you need that a lot, a traditional Linux system would be a better fit.
The way I use Silverblue is kinda like Android. All the apps I need for my general purpose laptop are available as flatpaks. The OS itself kind of disappears in the background. I set it to update itself automatically without telling me and I actually don’t do anything with the terminal or outside of /home . The OS is a GUI application launcher, which is exactly what I was looking for after 20 years of tinkering with Linux.
They recommend using brew
to install CLI apps. There are also dev containers and toolbx
, but the latter is not recommended.
You typically do that in a container and use the container.
If you really want it on your system root you can layer it in as a commit on top of the distro with rpm-ostree. System upgrades should change the commits below yours but keep your modifications on top.