I’m still not sure how I feel about Silverblue as the future, especially as a developer’s OS. I’ve never really used it in anger though. I wonder if there will ever be an upgrade path from Workstation to Silverblue?
Silverblue sounds OK to me; it feels like how I’m used to macOS being updated. I’m more sceptical about Toolbox.
I don’t mind (much) deploying containers, but I categorically don’t want to use them locally on my machine for dev environments. Perhaps I’m misunderstanding how Toolbox would work, but my experience using Docker (on a Mac) has effectively inoculated me against the idea of containers for dev environments. We use that at work and I’m finding it frustrating.
Nix has a better story for dev environments IMHO, and thankfully Nix seem to be gaining some traction at work. We are starting to see shell.nix files checked into projects which means less need to run stuff in Docker.
Toolbox uses container technology, but it is not like Docker. Toolbox containers pretty much act like independent hosts - think of them as like VMs, but with a shared kernel and shared resources, and /home and such automatically shared so you don’t have to muck around with copying files to and from the container.
Silverblue is, to me, a solution looking very hard for a problem to solve. I don’t see what actual issues warrant this shift, nor what improvement Silverblue is on “regular” Fedora.
Also, the vast majority of containers I see are based on Debian or Ubuntu, and I’m using Fedora exactly because I don’t want to run any of those on my own machines.
An alternative understanding, that I’m trying to be open to, is that Silverblue is a solution for a lot of problems that people who aren’t using Linux yet have. Or, at least, for problems that people who are trying to use Linux in some specific environments/specific deployment cases have.
I played with Silverblue back when it was first introduced and I got pretty much the same impression. It makes a lot of things I need (e.g. managing local changes) harder to do, in order to solve a bunch of problems I don’t have in the first place, or which are entirely self-inflicted by the distro. The very description that the author uses – “a image based OS model, similar to what people had gotten used to on their phones” raises the obvious question of why I would want my desktop to work like that security nightmare, unreviewable, CVE exhibition thrashfire that my phone is.
On the other hand, a good chunk of today’s computer industry either uses this exact deployment model (Apple) or would really, really like to use it (Microsoft, were it not for those pestering users). Maybe, if it’s not what “the people” want, it’s at least something that makes development easier. I’m not sure. Lots of things people seem to love about it (e.g. easy rollbacks) are things I can’t even remember the last time I needed on a desktop/laptop, maybe I’m just not the target audience here.
Silverblue’s ability to rollback seems like a solid improvement.
It’s not the same mechanism, but the way I understand it, the end result is not much different from suse’s snapper which will take a root fs snapshot before each update. You lose the immutability, but keep the rollback. There are similar wrappers for Fedora too.