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

  • @highduc@lemmy.ml
    link
    fedilink
    English
    141 year ago

    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.

    • @IsoKiero@sopuli.xyz
      link
      fedilink
      English
      121 year ago

      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.

    • @fury@lemmy.worldOP
      link
      fedilink
      English
      01 year ago

      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)