Hot take incoming. Just some thoughts I’ve been having recently as I experience Linux at work for several years now. To clarify, I mean Linux on the desktop as a consumer. As in, what our lord and savior Richard M. Stallman would call “GNU/Linux”; pick your favorite distro here. I’m leaving out Linux on the server, embedded Linux, and the billions of phones running Android that have Linux kernels, for which Linux there is a success story without rival. But Linux as a daily driver OS as a user/developer just…sucks.
I have to use it because there is no other option for building Android and embedded Linux which I occasionally need to do
I like to use it because I can change stuff about it that I don’t like (can being the key word, here, usually I’m too lazy or busy)
I want to use it because getting one over on ‘the man’ tickles my rebellious funny bone
But…little things here and there like snap sandboxing the browser and preventing a standard web feature from working bite me in the ass every now and again.
In this one obscure case, supposedly it’s been fixed, but I’m on Ubuntu 20.04 LTS, so who knows, maybe the fix didn’t get shipped out to this old dinosaur. Whatever it is, I don’t want to spend the time to dig into the innards to find out what’s causing it this time, and just uninstalled chromium from snap. (I thought I installed it through apt, but it turns out apt install chromium-browser just installs the snap instead. I get it, I read the post, I understand why they moved it to snap, I’m just annoyed to be one of the lucky 2 people that ran into WebSerial not working because of this or some related series of decisions.)
I usually use Brave, and I had already found out the hard way they ripped WebSerial out leading me to try Chromium
I sighed, installed Google Chrome with Google’s apt repo, WebSerial works, I moved on. for some reason I can’t get it to talk to my custom ESP32 board anyway, but that’s another problem I have to figure out some other time
Had I been using Windows or Mac at that particular time (or had I already been using Big Brother Google™ in the first place), I wouldn’t have run into this obstacle that cost me a few hours. And that’s not the only time I’ve ever encountered something that took some time to research and work around or learn to accept, don’t fight it, no tears, only free software now
Stuff like that reminds me why Linux on the desktop is not receiving more mainstream adoption. It’s not just esoteric electronics-geeks-only features that I mean, either. Basic ordinary stuff like the screen sleeping when I don’t want it to, or not sleeping when I do want it to (thanks VirtualBox), or the lack of overall polish, like YES THANK YOU i know you’ve found the very same printer yet again as you’ve popped up a notification about it the last 500 times I woke up my computer. I’m sure I could fix any particular thing given enough time to investigate, but man, I just want my stuff to work so I can do my actual work.
As the old adage goes, “it’s only free if you don’t value your time”. Imagine someone less technically inclined trying to cope with an issue like this…they’re probably fine if they had a friend set up their Linux box and all they need to do is browse Facebook and get their Gmail. But if they need anything more elaborate than that, they’re stepping into a minefield of gotchas. Need to reflash your phone? Better hope your browser wasn’t installed via snap, or you gotta enable the raw-usb feature and hope your distro is new enough to have that fix. (when was the last time aunt sallie needed to reflash her phone?)
In a world where everybody can change things, everybody’s got a different way to solve something, and some of them occasionally break stuff. There’s no unified vision, nor any single authority figure with some common sense saying “why are we doing it like this, this sucks, fix it”.
The thought occurred to me, macOS (my other main daily driver) is a much easier and more pleasant *nix to use because people get paid to work on the product, which is something I can’t say for Linux.
- Desktop environment rich with window management features and surprisingly few glitches (I say this just as a notification popped up on my Linux box and won’t go away; I’m clicking on the x right now and it’s just clicking on something underneath the notification…sigh.)
- One unified app store that has a good enough selection for most people
- Developers can still hack things up
- Sleeps when I shut the lid
- Wakes up when I open the lid
- Runs browsers with any and all features intact except Brave, because fsck you, we don’t trust our users enough to let you run WebSerial
- A team is paid to make sure it’s accessible while blind, deaf, limited motion (and maybe that accessibility focus trickles down to benefit the average user too)
There are companies, RedHat, SUSE, Canonical, et al, who get paid in a sense, but my gross oversimplification of the matter is they don’t really get paid to work on Linux as a product, they get paid to tell businesses how to use Linux and other free stuff to work around issues navigating what is otherwise a proprietary-software-dominated world. “But all my Microsoft Office™ files…” They work just fine in LibreOffice! That’ll be $2,500. “Our team really likes Slack…” Have you tried [zulip/mattermost/insert other open source Slack clone flavor of the month]? Thanks, pay $1,000 at the next window.
That means Linux the product only gets the free fixes, for the most part. The fixes where some user crosses the Venn diagram between giving enough of a shit, being frustrated just enough by an issue, and having the ability and time to just go and fix it themselves and contribute the patch / PR / whatnot. Or the fixes that were sponsored by a company in the process of using the code for their product or service–if the company cares enough to upstream it (or doesn’t care one way or the other)
Maybe I’m just suffering Ubuntu-itis and I can sort everything out by hopping over to Debian or arch btw. At least until the next issue I run into.
Does anybody else get tired of this, or is it just me?
I ain’t reading all that crap edition: Linux on the desktop sucks because nobody gets paid to fix it, they only get paid by businesses to tell them how to shoehorn Linux into their business world.
oh god i spent so much time whining about this that i could have spent coding
So the TLDR is Ubuntu sucks. This is nothing new, there are a few people that seem to think that Ubuntu == Linux…
I’ve been meaning to switch to something else for this and other reasons, it’s just that everything I google on the bing is written for an Ubuntu system ¯\_(ツ)_/¯ it’s hard to wade against the current
I mean, how much of those Ubuntu guides do you really need anyway? Most of them are just “install these packages” and the rest is pretty generic.
10 years on Arch and I don’t think I’ve ever ran into something so Ubuntu-specific I couldn’t make it work. If anything it’s often easier because Arch doesn’t do stupid shit that gets in your way. Absolute worst case… you can run an Ubuntu container for the oddball thing that insists on Ubuntu.
Ubuntu’s been pissing me off since like 10.10/11.04. Preserve your sanity, join the dark side.
I have found Arch to be easier and cleaner than Ubuntu/Mint ever was.
Then just use one of the many distros that are built upon ubuntu. Linux Mint works great for linux beginners for example. I’s basically ubuntu done right. I even got my parents to use it (they are using it for years now!).
Linux mint Debian edition
I get paid to work on Linux
Me too
People are paid to work on it tho.
Paying people doesn’t necessarily translate to what you might want from it.
On the contrary, when people get paid to make Linux you end up with the Red Hat nonsense
And specifically on Ubuntu. I haven’t really heard that many complaints from people who used Linux Mint which is a community project, while Ubuntu is very much a corporate project, that paid employees work on, by Canonical.
So I didn’t read it either (sue me), however people are paid to work on Linux. The examples you give about RedHat and SUSE are completely incorrect - they’re not there to tell people how to use Linux, they literally develop for it and are paid to make it a better product.
The “issue”, of course, is that they focus their paid efforts on Enterprise and server usage, and not as a user-facing product for the most part, although it could be argued that widespread adoption by companies is how you get it into peoples’ hands, since they get used to it at work or education.
Also, you’re using Ubuntu LTS 20.04 which is technically out of date, as 22.04 LTS also exists, and LTS is primarily meant to be for server/company use, rather than trying to keep up with the latest software and features.
I took a look at your bullet point list too, and literally every single one of your bullet points (other than accessibility, unfortunately) is covered by my laptop running Debian 12 with KDE Plasma - seriously, try out a KDE Plasma distro, it most likely fixes all your problems.
I’ve been itching to jump onto KDE Plasma. I work with Qt/QML a lot, which means I’d be right at home to tinker around with things. Actually recently developed an embedded Linux demo unit which used a small part of KDE Framework 6. Good stuff.
For what it’s worth if you want to stay inside the Ubuntu ecosystem (so to speak), I would personally recommend installing KDE Neon, which is based on Ubuntu and maintained by the KDE developers. Otherwise, Debian - most Ubuntu specific things work in Debian, although not everything (PPAs and stuff).
I get your frustration but I think that’s just the price you pay for doing “IT” things (meaning here more in-depth stuff than just using a browser)in the current IT landscape. I think there isn’t an easy fix, not even money.
The snap rant - I’d say that’s Ubuntu’s fault for pushing for it. I’m not a fan and I’d advise against using snaps, but if you decide to use them and then complain that you don’t like how it works …who’s fault is that? (other than arguably Ubuntu’s, who have paid developers to work on that crap btw).
Virtualbox - same as above. That’s not Linux doing stupid things, that’s Vmware (now owned by Oracle, damn) and if you decide to use it you can blame the folks who develop it for not doing a more user-friendly job, or you can chose to work around the issues you encounter, or you can use something else. Personally I used libvirt + virt-manager in the past and while virt-manager doesn’t look nice and modern it worked well for me.
For the sleep/wake up issues it might be firmware, it might be your desktop environment, it might be some software you’re using, it might be several things. I’d start looking into the output of
sudo systemd-inhibit --list
to see what’s keeping your system from sleeping if you still have issues.If you ever decide to try Arch I’d recommend doing so for a bit and see how it feels. Their wiki is the best I’ve seen and really helpful with a lot of topics from gaming to setting up a web server and many others.
I personally use Firefox not Chrome, Arch not Ubuntu, native packages not snap, libvirt not virtualbox, KDE Plasma not Gnome. I try to use more “libre” stuff. Ofc you’re free to use whatever you want, that’s the beauty of it, but if something doesn’t work the way you want, you can try something else.
And because your use cases are more complex (like webserial, virtual machines, etc) I think you’d encounter issues in other operating systems too?! I think people underestimate how hard it is to do stuff in Windows for example, because they never try doing more complex stuff in it - getting an obscure error that could mean anything. Googling for answers to only find stupid crap like “I rebooted and it works” - which ofc it never does.
tl;dr: There is no Linux “product” there are a bunch of 'em glued together. Try different tools maybe they work more to your liking.
I think you’d encounter issues in other operating systems too?! I think people underestimate how hard it is to do stuff in Windows for example, because they never try doing more complex stuff in it - getting an obscure error that could mean anything.
You put that into words better than I ever could. I’ve been a linux sysadmin longer than I care to admit and sure, it throws obscure errors every now and then which are tricky or difficult to solve at best, but rarely impossible. On the current job I need to maintain windows servers as well and it’s a total shitshow on error messages and tracking them down. No clear logfiles with (somewhat, ymmv) error messages to throw on your preferred search engine, just some obscure 0x04whattefuck -code which leads to microsoft forums where some (apparently) paid technican says that you need to restart your server and/or reinstall a part of it. It’s a bit different thing when rebooting a machine takes 15-20 minutes and several thousand people across the globe can’t do their job while it’s happening.
With linux I at least have a bit more control on what I’m doing, a bit more reasonable error messages to work with and, since I’ve worked with it long enough, I have some understanding what I’m dealing with and what kind of cause-and-effect chains I’m running. With windows I’ve seen properly seasoned veterans who ought to know their environment in and out (much like I’m working with linux) they’re just lost and throwing those 0x0FUBAR codes on the google just like me.
At this week I had to deal with a email bomb (sort of, a dev made a slight change on something and it generated couple of millions of emails in a few hours). With linux I could build something up with grep, awk, xargs and whatnot to mitigate the problem AND monitor how my single line of commands is doing. But as I was on a Windows server all I could (with my current knowledge) was to search some powershell commands and run them & hope for the best.
Complicated stuff is complicated for a reason, but with linux I at least have the tools to see what’s going on and verify if my actions actually make an effect. With windows I feel like my hands are tied and all I have available is to hit enter and go grab a coffee, because maybe after that something happened which I can measure.
I (very much personally) think that should any of the issues OP had happen on windows there would be very little to do about them. With linux there’s at least an option to try something different.
All good points. I fully agree, and I deserve it for living on the edge of technology like this. (The cavemen probably burned a few eyebrows off before figuring out not to touch the fire)
Worth noting, I didn’t mean to use snap, it was that “apt install chromium-browser” transparently installed it as a snap and I wasn’t paying attention at the time.
In general I don’t really care one way or another between apt, snap, or just plain downloading the source and doing a good old fashioned build from source like the old days. I just didn’t know to expect this certain installation method to lock out a certain browser feature I needed at the time. Now I know, so I won’t use snap for that (or maybe ever, I’m debating whether I just uninstall it). I wonder what fell out of my brain to make room for that, though. :D
I am pretty sure the no display sleep thing is down to whether I had a VirtualBox machine as the active window when I left it, so my “fix” is just to make sure I click some other window before I leave the desk. I have had fine experiences running VMs in Windows, nothing to report. I even do crazy stuff like pass through USB devices to the guest machine and all (that seems to work regardless of what host OS I run it on).
I do run into things on Windows and Mac sometimes, to be completely fair. Just fewer and further between. Maybe that’s just because there’s fewer things I can do on them, though. (Can’t build embedded Linux or Android images on them)
I try to summorize your post.
You used one distro (Ubuntu) and hated it.
Me too bro. It sucks ass, thats why I don’t use it. And Snap is not the default! No one who actually cares about his desktop uses snap. Its not even that compatible with Linux distros, it only supports systemd and probably gets more hardcoded into Ubuntu.
But other distros may be great. Linux Mint seems to be the only one to be paid to work as desktop with Cinnamon, literally, its their made Desktop. The other one would be System76 with Cosmic Desktop.
yeah and ubuntu is probly one of the ones that has more paid workers.
ok i dont know that ; but canonical sure pays people,Yeah but it really looks for me like bad practice what they do there. They often hardcode packages.
I switched to Arch Linux because
- Its Satisfying to understand a simple and dynamic system.
- Its Important to understand how your system works.
At my work I am forced to use Ubuntu and develop a custom distro… its really weird how Ubuntu hardcodes solutions inside packages. I really don’t like it but my employer loves it for some reason. Especially because a lot is hardcoded I assume.
But its definetly more dynamic than some other Systems like MacOS or Windows 10/11
yeah its nice to have a broad and flexible ability to maintain and improve - as much as possible - your own tools that you depend on.
i think some people like to buy things from people with certificates, who can be sued when it doesnt work.
maybe they are more comfortable arguing about contracts, rather than fix/ maintaining their own tools and get on with some work.
TLDR but after quickly reading some parts it seems like you really should try another distribution. There are better choices on the desktop.
I hear Mint is pretty good
I find when I get frustrated with something on Linux, I go try to do it on Windows. And then I go do it on Linux.
i really hope no one starts paying windows staff to do anything to whatever linux i’m using.
at least i can fork off though wen that happens.
I use a Tiling Window Manager. I want my system tk be minimal, less than 1GB RAM on a cold boot. I want a keyboard driven environment, zsh as my main shell, autotiling windows, etc etc. I could achieve some of that on MacOS, but could never properly do it on Windows.
I often find out that the Windows solution is mostly worse. Even for developing with closed source toolboxes, it just was worse.
That’s a lot of words for “I’m too lazy to master the most essential tool of my professional life and keep it updated to my requirements”.
If you don’t want to do it, feel free to pay an Ubuntu support subscription, open a ticket, and get back to work. As you said: you should be working on your problem instead of whining. Or maybe you earn more whining?
There’s a saying that goes like that: “To a bad workman, there’s always bad tools.”
well thankfully a couple companies like s76 are actually working and getting paid to do it
This is definitely a downvote for me.
So you’re mad you ran into problems that everyone including yourself knows you’d run into, which most people therefore stopped recommending Ubuntu to new users because of? If you hate Ubuntu so much just don’t use Ubuntu, most of us have distro-hopped a couple times before settling into one we like.
I think that you’re missing the point of his message
I think it’s a kind of unreasonable message, though.
He’s asking for a feature that requires advanced knowledge to even have interest in, and disappointed a more casual focused distribution is designed in a way that’s harder for casual users to hurt themselves with but doesn’t expose as much low level stuff.
How so? Ubuntu sucks, his issues are with Ubuntu. Most new users are not going to have this issues because they are not going to be recommended Ubuntu.
So… it sounds like you’re struggling with Snap. In addition to others’ suggestion (try a different distro without Snap, perhaps one of those distros made by a different company such as Fedora (Red Hat), an OpenSUSE variety (SUSE), or even a corporate, less Snap-reliant Ubuntu-based distro like Pop_OS (System 76)), you could also try uninstalling Snap from Ubuntu or installing another binary option like Flatpak/Flathub and installing your software that way. Frankly, the amount of money these companies make working on Linux or Linux-based products has nothing to do with your struggles. Plus, the companies you mention do, in fact, make money working on the kernel itself because they contribute to the kernel as a project. Even Microsoft and Google do the same, though Microsoft does so for the sake of WSL and Google does for Chrome OS and Android. So plenty of people make money if the Linux kernel keeps having work done on it and keeps improving. I don’t see what the problem is with the kernel itself. The lack of polish, as you call it, in Linux-based OSes is not a fault at all of the kernel but in all the various other parts that go into the OS. And that level of polish can vary quite widely. As you note, Snap has been holding Ubuntu back quite a bit due to lack and reluctance of community adoption. Even just trying a different Ubuntu-based OS such as Pop_OS, Linux Mint or Neon may change your view.
No, fuck red hat, use something else.
To keep this post short and sweet, I laser focused on the one issue that most recently grinded my gears. I can get rid of snap, but then, what’s going to happen next? That’s all I’m saying, really. There’s no perfect story, even my Mac drives me bonkers at times (yes thank you I know I removed the drive without ejecting). But yeah, should really try something different than Ubuntu at some point, or start fixing some of the stuff that bugs me instead of banging my head on the wall about it. I used to fix stuff. Even contributed some code to a few open source projects over the years. I’m just always trying to deal with something else at the time I run into these things and don’t have the patience to engineer my way out of it in the heat of the moment. I’m a whiny baby and I’d rather it just be fixed for me.
iirc there are companies working on genome, and you could always fund a specific issue using rysolv (unlike in windows and mac os where you pay them money and can only hope they will fix a problem you have)
A team is paid to make sure it’s accessible while blind, deaf, limited motion (and maybe that accessibility focus trickles down to benefit the average user too)
So, choosing to ignore all the factually inaccurate and low effort “it didn’t read my mind” claims in this post, this one really bothers me. Unified DEs like KDE Plasma and Gnome could absolutely do better here even without paid devs, and I wish they did.
Most devs have never seen a braille display or used a screen reader. Thos that did probably could not read of the braille display and were happy for the screen reader to read or random words with no idea how to use a computer with just the information read out.
It is hard for a seeing dev to get a feel for how information needs to be presented using assistive technologies (which are usually not even available to the developer).
It’s worth a whole post of its own. Shame I had to drown it out with the other crap.