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.
Nix? Nah better stay away from that one.
The main goal of the author is to explain that the best way to help a non-enthusiast use Linux, is to maintain their system for them, so they don’t have to.
Use whatever distro you’re most comfortable with to do so. For the author (hi!) that’s NixOS. If it’s Debian, Fedora, Arch, or whatever for you, it makes very little difference for the end-user, they’ll see nothing of it.
the best way to help a non-enthusiast use Linux, is to maintain their system for them, so they don’t have to.
Uhh that’s a very unpopular approach. Nobody wants to do that.
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.
when my girlfriend’s build pipeline finishes
😂😂
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.
I don’t get this take… Mint is almost ready for mass market IMHO esp if it comes from a vendor with support
Ain’t this is what frmework doing?
this and also this sounds like a project ripe for teaching yourself configuration management with something like ansible &/or terraform; which will get you paid since they’re in such high demand right now.
The blog post is about people who don’t want to maintain their systems, and distros that try to cater to them. Mint isn’t in that set. Nor are people who’d buy a framework laptop.
Or we can just decrease the importance of desktop. Users like mobile more. So I just self host stuff and offload data and apps to my server. Thin client (desktop/laptop/mobile/tablet) + thick server.
That does not address the problem at all, though. That solves the upgrade and maintenance problem, but does nothing for users who just want things to work as they always did. It does not address change.
By maintaining a system for my family, I can address that: either by undoing things, working them around, or preparing them in advance. No amount of automation will solve that. It’s not a technical problem.
Lots ppl nowadays don’t even own a pc or mac. The market shares already prove lots of ppl can live without desktop. Unless your family need to use complicated softwares like cad, compilers… My point is most ppl do consider their phone and tablet just work. And those two’s maintenance are a lot simpler. Of course, your family, your choice.
Again, you’re misunderstanding the problem. Keeping applications up to date is not a problem. Keeping things working the way my family got used to is an entirely different matter, and it’s actually worse on Android & iOS (thus, most phones and tablets).
The main reason the family even has desktop PCs is because we couldn’t make tablets work for them. Something as simple as reading email was a problem, because the various email apps (gmail, k9, etc) changed their UIs, confusing the heck out of my parents. It would’ve been possible to improve that situation, but the tooling to remotely manage an android phone are far more limited than on a bog standard Linux desktop.
A lot of people do use phones tablets as their main computer, yes. Ask them how happy they are about it, how much trouble updates and random UI changes cause. Just because they “can live with it” does not mean they enjoy the experience, or want to live with it. Chances are, they don’t have other options. My family does. I think more people should have those options available to them.
(Also, the blog post is about desktop, specifically, and is a critique of distros trying to aim at non-enthusiasts. When it comes to mobile, those efforts are even more futile, because those specialised distros will have absolutely no chance of working on anything but a very tiny subset of mobile devices.)
and start off from a fundamentally wrong premise: that people are willing (let alone wanting) to manage their own operating systems.
people shouldn’t need to manage their own operating systems, to begin with
The best way to help a non-enthusiast Linux user is teach them basic system maintenance.
Nope. That leads to frustration on both sides. If they want to learn - sure! I will teach them.
But if they aren’t into computers at all, trying to teach them sysadmin skills is a recipe for disaster.
You should not need to be a sysadmin to use a computer.
Not a sysadmin, but a capable user.
People shouldn’t just accept technology as magic. They should understand at least the basic principles of the technology around them. Corporations want us to be dumb and incapable. Look at cars, you seriously can’t expect a normal person to fix anything on them. But that’s not because of inherent complexity, but because corporations want us to just buy new parts when they think it’s time.
Sapere aude was true in the 19th century and it’s true today as well.
A capable user is already a willing one. A whole lot of them aren’t, and that is fine.
There is a huge difference between being able to use something, and being able to fix them, and being willing to fix them.
Case in point, if my car breaks down, I take it to a professional to fix it. Not because it is magic I have no hope of learning, but because I am absolutely uninterested in it.
If my pants rip, I take it to a professional, because that’s far more practical than trying to fix it myself.
Same goes for computers: my Dad is a very capable user. He spent 3 decades in IT, authored succesful books on subjects that interested him. He would be capable of learning how to maintain his system, but he simply doesn’t want to. It isn’t interesting, nor fun for him. So I help him by doing it myself.
My wife is also a very capable user, she can do everything on her computer that she wants. She hates computers, though, and would sooner divorce me than learning how to run apt update. She is a very capable user because I built a system she’s ok with.
Similarly, she is an amazing cook, and I am not. I am a disaster in the kitchen even if I try. So I simply don’t. The best I can do is throwing frozen pizza in the oven, amd I am not interested in becomimg more capable than that. Why should she become more familiar with computers then?
What I am trying to say is that people have wildly varying interests. We should not expect everyone to be competent at everything they may ever encounter.
I think you don’t distinguish enough between professionals and capables.
All your points are either “sysadmin” or “complete buffoon” and nothing in between. That’s not how reality works.
You absolutely are expected to be able to check your oil and just a few years ago, you were expected to be able to change your tires. That doesn’t make you a car mechanic, but a capable user.
I’m absolutely not a car guy, but I know how to change a tire. Why? Because it’s necessary knowledge. I also know how to file my taxes, even though I’m not an accountant or tax consultant. Again, because it’s necessary.
I think you don’t distinguish enough between professionals and capables.
Oh, but I do. The thing you’re not seeing is that there’s a difference between “can do something” and “willing to do something”.
I am absolutely capable of filing my own taxes, did so in the past, but will never do it again: I hired a professional instead. She can do it faster than me, I can be sure she does it accurately, and according to the latest laws and regulations (so I don’t have to keep myself up to date on those!). Not to mention that I save a ton of time, which I can translate into work, and I end up making more money in that time than the services of my accountant cost. Likewise, I also know how to change a tire. I also know that I never want to do that. If I have to, I will call a professional, because I can, and changing the tire myself is absolutely not necessary.
Similarly, both my parents are perfectly capable of maintaining their own systems (my Dad spent decades in IT, taught IT at a university, authored successful technical books on his area of expertise, etc; Mom programmed in DBase way back when), but they have no desire to do so. They have better things to do with their time.
It’s not a question of “can”, but a question of “want”. A whole lot of people could maintain their operating systems. They absolutely do not want to, though. And if someone doesn’t want to do something, the best way to help them is to make it possible for them to avoid doing the thing they don’t want to do. In our particular case, that means maintaining their OS for them, for that helps a ton more than trying to force them to learn or do something they could, but viscerally hate.
You do not need to maintain your own operating system in order to use it. Rather than trying to force people into maintaining theirs, we should make it easier for friends & family to maintain it for them. That would be a far bigger win for everyone involved.
You should have basic maintenance knowledge like checking tyre pressure and the fluid levels in your car.
By doing it all for them, you are perpetuating the learned helplessness encouraged by Microsoft and Apple over the last few decades and doing them no favours at all.
Consider what they would do if you were unavailable to help them.
I use fedora atomic and I maintain nothing.
I use my computer once every week and I don’t have to care about anything. Fedora does everything.
If you take care of the systems of your kids or family, that’s up to you. You choose to do that.
Yeah, +1 from my side for Fedora Atomic, especially uBlue.
For this use case, I can absolutely recommend using Aurora (KDE) or Bluefin (Gnome), especially with the
gts
branch.uBlue offers different branches, namely:
latest
: in sync with the current Fedora repos, all the newest stuff official Fedora also ships, including kernelstable
this is the default by now. You have to wait two weeks more for feature and kernel updates, but they are better tested. If something would have broken, others would have noticed and already fixed it.gts
: this one is what I recommend for this use case. With that, you’ll get the last release.
At the moment, F41 hit Bazzite/ Aurora
latest
already three weeks ago when it landed, onstable
, I got it a few days ago, and ongts
, you have to wait another 5 months until F42 is released, and then you’ll update to F41.gts
is perfect for those who don’t need the very latest features, and want something more chill with fewer surprises.And the other benefits of uBlue/ Atomic also apply of course, like better hardware enablement, QoL tweaks, automatic staged updates, and much more.
9.5/10, can absolutely recommend!
Same here with Bazzite. I freaking love it. I love the whole Ublue project. I haven’t tried the Fedora Atomic spins, how do they differ from Ublue?
Any other take to add to this?
Difference are preinstalled packages and DEs. In the end, it’s all fedora linux with rpm-ostree. They are all good
I can of agree the focus to make Linux easy to use is not exactly on the right things. There is a bit too much of a “make a GUI of everything”. Which is not wrong per say, but should not be the goal. More a mean to an end.
I disagree that users won’t do stuff on their own. They will, but they will allocate very little time to it, on average, especially when compared to a tech savy person. And that’s just because their computer is a tool.And if they cannot make their tool work for what they want to do, they’ll find another way. Or deem it impossible.
I think distro must make mundane tasks such as system maintenance hands off. As an opt-in option not to upset power user. But things such as updates, full system update, disk space reclaiming, … should have a single “do the right thing without being asked to” toggle. Things a bit more complicated such as printing/scanning document should be more context aware. A bit like on smartphone where, if you have a document open, you can select print and, if no printer is configured, you have the option to add one there and then.
Immutable distro have made good progress on that front IMO. But we still need better integration between applications and the Desktop Environment for things like printing, sharing and so on. I’m hopeful though. Generally speaking, things are moving in that direction. Even if we can argue flapak and snap are a step backward with regards to the integration of the DE, this is also an opportunity to formalize some form of protocol with the DE.
I disagree that users won’t do stuff on their own. They will, but they will allocate very little time to it, on average, especially when compared to a tech savy person. And that’s just because their computer is a tool.And if they cannot make their tool work for what they want to do, they’ll find another way. Or deem it impossible.
also don’t forget that many don’t even have the time and energy
I disagree that users won’t do stuff on their own. They will, but they will allocate very little time to it, on average, especially when compared to a tech savy person.
My experience differs here. My parents will not maintain their systems. They could, especially my Dad (he is a techy, after all), they just don’t want to.
I think distro must make mundane tasks such as system maintenance hands off. As an opt-in option not to upset power user. But things such as updates, full system update, disk space reclaiming, … should have a single “do the right thing without being asked to” toggle.
That’s the thing: doing this is impossible, unless the distro controls the entire stack (which they don’t). Updates and upgrades can break things, and they will break things. Or if not break, then change things. You may find it surprising, but most users I talked to, regardless of their expertise, hate when the software they use daily suddenly changes.
They just want to get things done. If their tools transform under them, that sets them back. Automated updates don’t help there. In fact, automated updates work against this goal. Which is why I maintain my parents systems: so if anything changes in a way that would break their routine, I can either reconfigure it, patch it, work it around some other way, or prepare them in advance. That needs a human element. And this part is why they have no desire to maintain their own systems.
The technical part of “update all packages” is pretty much a solved problem, and can be automated away in the vast majority of cases. But that’s just a tiny part of the whole system maintenance problem space.
Things a bit more complicated such as printing/scanning document should be more context aware.
Now, this is something that has not been a problem for my family for literal decades. Printer is plugged in, they turn it on, press “Print”, done. If out of ink, or paper gets jammed, they get a notification, and can fix that, and try again. Scanning… just worked since forever. We did make an effort to buy hardware that works well with Linux - something I helped with, too.
Daily tasks are not a problem, and never were. The maintaining a system parts are, and there, not even the automatable parts.
Immutable distro have made good progress on that front IMO. But we still need better integration between applications and the Desktop Environment for things like printing, sharing and so on. I’m hopeful though. Generally speaking, things are moving in that direction. Even if we can argue flapak and snap are a step backward with regards to the integration of the DE, this is also an opportunity to formalize some form of protocol with the DE.
From personal experience, these distros make no difference whatsoever for the end user. The hard part isn’t upgrading software, that worked fine with traditional packaging too. The hard part is making sure software doesn’t change in a way that breaks the habits and expectations of users. There is no technical solution there, which is another reason distros targeting non-enthusiasts are futile: they solve problems that never were a problem, but leave the real issues unaddressed.
Flatpak did help me, because when Dad said he wants the latest LibreOffice, and doesn’t care if they completely change the UI, I could just install it for him via flatpak, instead of using Debian’s repo. My Mom, on the other hand, does not want the latest LibreOffice. She does not want it to change, ever. Every major upgrade so far brought in something that required her to re-learn parts of it, so she’s sticking to whatever is in Debian stable, and we set aside a few hours every two years or so, to learn the changed things whenever I upgrade her to the next Debian release.
You see, different people have different needs, and there’s no one-size-fits-all solution. A general purpose operating system like Debian lets me build a systems that suit both of my parents. An immutable distro that relies entirely on flatpak for end-user applications would be unusable for my Mom. It would also be unusable for my Wife, because she relies on software I wrote, which I could easily install on her system as a NixOS derivation (something I am familiar with building), but one that I would have a much harder time turning into a flatpak thing (because I have no clue how to do that, and frankly, I’m not interested in learning it either).
Installing Linux is definitely not something, the average computer user ever wants to do. The same goes for Windows. Unfortunately you can’t just buy a Linux computer at your local electronics store. Until that changes, Linux will remain in a niche.
You can buy it online tho
But yeah I would not advise Linux to people unless they are at least a PC gamer or have somebody like that in their life who can figure it it out when something happens
But that goes for Windows as well.
True but people have some windows skills already
Most people I know have zero Windows skills that wouldn’t transfer to Linux. They can start a browser and click on a bookmark, but that’s as far as it goes.
Even if you could, it would change nearly nothing. The average computer user doesn’t want to maintain their system either. They want a system they don’t need to care about, or at worst, a system their friends & family can help with. Thus, the best way for a Linux enthusiast to help their family use Linux is to install and maintain it for them. For that, you need a general purpose distro you’re familiar with, one that’s easy to maintain remotely.
In other words, distros that target the average computer user are futile, because the target audience is not interested in neither installing, nor maintaining their systems.
(And this is what the linked blog post is about, in more words.)
One big issue with retail computers coming with Linux is the kickbacks from the Windows ecosystem.
Things like AV trials and MS Office. I don’t know if they break even or make a profit on all the bloatware from a Windows based sale.
Yup. No-one (non techie) needs a specific Linux distro. They’re all easy to use for normie activities once installed.
A regular reminder that ChromeOS is Linux. It’s Linux you can buy from a bricks and mortar store, preconfigured for the average low-knowledge user, and with minimal to no maintenance overhead.
We enthusiasts obviously mostly hate it, but we’re not its target audience. Its target audience (non-techies who mostly just like to use their phones) get on great with it.
People need to accept that any Linux distro made for mass market is going to look more or less like ChromeOS. There’s nothing wrong with that, as long as traditional distros also continue to exist. But people need to get out of their heads that the “year of Linux on the desktop” looks like Ubuntu or Fedora or Mint. What it looks like is ChromeOS.
Who hates ChromeOS? Never heard someone say that
I don’t like it. I don’t hate it, but I don’t like it. It’s not flexible enough for what I - and my family - needs from an operating system.
Imho, the best way to help a beginner should have happened many years before they put their hands on any Linux distro. It should have happened when they were still a small child, at school. In the way they were taught how to… learn and how to get better… aka, by expecting difficulties and by expecting to fail, often.
Failing should be expected as a beginner learning anything new. Like, say, we all learned to walk as toddlers. It was not by being told we walked perfectly but by falling on our diapered butt. Failing at outing one foot in front of the other and falling, over and over again.
That sounds obvious but, to my old eyes at the very least, it also sounds almost like an heresy when compared to what I see kids being taught nowadays. That things should be frictionless and that nobody should fail at anything, ever. That’s such a poor choice that doesn’t prepare them much. Well, imho.
When I switched (from 35+ years being an Apple user) to Linux, it was frustrating.
Even when where things went smooth, it could still be frustrating and it often was. If only, because it required me to change 35 years old habits. And when it wasn’t going smooth, even when I was using the best docs and guides, at times it could be incredibly and utterly frustrating, when not completely maddening. Either nothing on my machine was ever exactly like described in the doc, or the app version was different and some setting had changed, or my issue was a somewhat different, or the solution simply did not work, or I missed a tiny detail or a word somewhere in the guide. Whatever. Frustration was a constant.
That’s what people should be taught to expect and to be fine with. And not just with Linux, btw ;)
I’m going to disagree here, partially. I agree that teaching people how to use a computer, at an early age, is important. It’s also important to teach them about failure, and set realistic expectations.
That has little to do with constant system updates & maintenance. That is an entirely different skillset. Like, I can use my oven just fine, I know how to get around its kinda awkward menu system, to tell it whether I want to heat up frozen pizza, or if I’m baking bread, and stuff like that. I’m okay with learning a new menu system if I have to replace my oven. I will, however, leave the replacement to a professional. I will let a professional fix it too, should it break.
Same goes for computers and my family: they are perfectly capable of using computers. They can - reluctantly - adapt to change. They do not want to fix or maintain things, however. And that’s fine! It’s not their area of expertise, nor are they interested in it.
Most end-users are like that: they can use their systems, but don’t want to keep up with the constant change. That’s tiresome and distracting and annoying and error-prone. I believe these things are best done by someone who can smooth out the experience, someone who can help the end-users adapt, too, perhaps even prepare them in advance. That is what we should focus on, rather than trying to force unwilling people into maintenance. That never ends well.
Long time Mac user here because of a steam deck. I’ve enjoyed KDE so much because of how much tweaking I can do. It basically feels like my Mac now, with the dock and the placement of the window management buttons, but also more colorful and “game-y”.
A week ago, I started tinkering a bit more with some other new options and it just wigged out, forcing me to reset it to default appearance in order to see anything again, and I spent and afternoon putting things back to how I liked them, albeit a bit different.
Also, now searching for global themes only results in an error and I have no idea why, nor how to fix it.
Nothing I do really makes it perfect, and I find myself a little put off by things such as my window styles not perfectly color matching the application styles because they were created by completely different artists with different goals in mind.
That said, my steam deck is a toy, and playing around is pretty much the only thing I’m doing with KDE and Linux at the moment. I am finding fun in it, ever if frustration is involved.
Unironically, Chrome OS Flex might be the way to go. Dead simple, uses A/B updates and is just that, for people who just need something to work.
Sadly, no. That doesn’t account for software changing, which is the #1 reason my family hates upgrades, and which is why I manage their systems, so I can either undo a change they don’t want, work it around, or prepare them in advance. No amount of A/B updates and automation helps with this.