I saw plenty of efforts that aim to create a Linux distribution for non-enthusiasts, for people who just want to use their computers, and not care about the details - A Desktop for All on the GNOME blog, most recently. While I commend the effort, my own experience is that these efforts are futile, and start off from a fundamentally wrong premise: that people are willing (let alone wanting) to manage their own operating systems.
…
My family is using Linux because that’s the system I can maintain for them. Apart from my Dad, they never installed Linux, and never will. They don’t install software, they don’t upgrade, they don’t change settings either. All of that is something I do for them. And to do so effectively, I need a distribution I am familiar with, one that is also flexible enough to fine-tune for every member of the family, because they prefer fundamentally different things!
…
The common pattern between all these three is that neither of them maintains their own systems. I do. As such, how beginner friendly the distribution is, is meaningless. The users of the system don’t care, they’ll never see those parts. They’ll have a preconfigured system maintained by someone else, and that’s exactly what they want. To make this work, I’m using distributions I am familiar with. For my parents, that’s Debian, because I was a Debian person when their systems were installed. For my Wife, it is NixOS, because I’m a NixOS person now. For the Twins, it will likely be NixOS too.
Uhh that’s a very unpopular approach. Nobody wants to do that.
It looks like it’s for their immediate family. I had issues with this when I was supporting people I didn’t live with, but if they’re using the same PC, it shouldn’t be an issue until something breaks.
I’m supporting three people, only one of them lives with me. My parents live in a different city, pretty far away (far enough that just randomly visiting them for in-person troubleshooting is not an option). I maintain three separate computers for them. It doesn’t take much effort nowadays, because I used a system I am familiar with, a general purpose distribution, and set it up so that I can manage it remotely.
I wouldn’t be able to maintain a more limited system for them, because it would lack the tools I need for remote maintenance. Hence my assertion that distributions focused entirely on non-enthusiasts are a futile attempt.
Indeed. But someone has to maintain a system, and those of us who know what we are doing are much better equipped than those who don’t.
The fact is that my family needs to use a computer. I have two options: let them try to do so on their own and deal with the fallout, or do it myself. I will choose the latter, not because I want to, but because the alternative is even worse: I can’t help with systems I have no clue about, even less when it is an OS I am not familiar with.
Thus, I developed a bunch of tooling that makes it almost trivial for me to maintain linux systems for the family. 15 minutes a week on average, I can sacrifice that to make them happy.
The sentiment should rather be, that the system maintains itself. And that’s actually something I would get behind.
Tinkering around is cool, but I’m in my 30s and when my girlfriend’s build pipeline finishes, I’ll be a father, I can’t spend 4h every week fixing stuff, I need a reliable platform to work on. Currently that is indeed a mix of Debian and Nix for me.
At least the normal update process should work completely transparently for the user.
😂😂
It’s not even the upgrades. Automatic, unattended upgrades have been a thing for a long while, and in general, they work remarkably well. At least in the sense that nothing “breaks”: programs will still work, and start up, and all that.
But automatic upgrades can change things. Change an icon, move things around, change behaviour, introduce new features, new bugs, and so on. That is the hard part of maintenance, not the technical “go from version A.B to A.C”.
Most immutable distros I’ve seen aim at improving the A.B->A.C upgrade scenario. They do very little, if anything at all, to keep the system familiar. Because they can’t, unless they control the entire stack. And even if they do, like in the case of the proposed GNOME OS, the UI still changes - often considerably - between major versions. If I maintain a system for others, I can prepare them in advance. If they do it themselves, they do not have that luxury, they’re not going to follow the development of the software they use, and I wouldn’t expect them to do so either. I can do it, and I am doing it, because I’d be doing it anyway for myself.