I get why Bradley Taunt has trouble loving desktop GNU/Linux. It isn’t nearly as cohesive or as polished an experience as macOS. But these are familiar arguments to anybody who pays attention to Bryan Lunduke’s “Linux Sucks” presentations – something he’s been doing since 2009.
GNU/Linux has all kinds of rough edges that make it a pain in the ass to use for personal computing.
- You still need to become your own sysadmin just to install it and configure it.
- CUPS is an OK printing system as long as it works. It doesn’t always1.
- Bluetooth on Linux still sucks2.
- Wayland is the new hotness, but doesn’t support nearly as much hardware as X11.
- X11 is
all butunmaintained. - Hi-DPI support is still rough.
- Power management and battery life for laptops is still not as good as macOS.
- copy/paste can be challenging
I know this from experience; I’ve been using it since 1998. This is a screenshot of my current desktop.
My stack hasn’t changed much over the years, either. It’s usually something like this.
- Slackware GNU/Linux
- X.org
- Openbox window manager
- Quodlibet for music
- GNU Emacs for text editing
- Mozilla firefox for web browsing
- Claws Mail for email/NNTP
- Hexchat for IRC
- ImageMagick for viewing/editing images
- xfce-terminal
Of course, this isn’t a “desktop” configuration. I’m not using Plasma or GNOME. I don’t even use XFCE or LXQt in their entirety. I’ve never worried about having a “cohesive” experience; I pick and choose and build my own environment to suit my needs.
Why? Because I’ve always had to. Default configurations and standardized desktops are all somebody else’s idea of “one size fits all”. It never quite fits me. Perhaps I cold make myself fit, but why should I do that on Linux? If I wanted to adapt to an inflexible computing environment I can do that with my company-issued Windows laptop at work.
Make no mistake: I don’t love GNU/Linux, any more than I love my job. Neither can love me back. However, I am grateful GNU/Linux exists, and that it works as well as it does.
You can talk about fragmentation and a lack of cohesion all you like, but think about it: every component of a GNU/Linux distribution you can name has their own developer/dev team behind it. No central authority is riding herd on any of these disparate teams, they don’t all talk to each other, and they’re trying to support all kinds of hardware, even stuff that’s been obsolete for twenty years.
Even the most polished GNU/Linux distributions are Frankenstein monsters cobbled together from parts. The better the distribution, the less janky the experience, but jank is inevitable. Why am I still using GNU/Linux on my personal desktop? I learned early on to embrace the jank. It’s the price I pay for having a great big toolbox that I can use to build a computing environment that works for me – even if it doesn’t necessarily work for you.
You can get around some of this jank if you run BSD, but while the basic operating system (kernel, shell, standard utilities) comes from one project, the vast majority of the software you’ll install to make your BSD installation useful to you will come from ports/packages of varying quality. The people doing the ports do their best, but it isn’t easy even if the code sticks to POSIX or is a shell script compatible with the classic Bourne shell (instead of bash).
It might not be as nice as a late-model Mac with all the upgrades (which can also install all kinds of UNIX-style tools using Homebrew or Fink), but you can run it on old hardware and secondhand hardware – and it beats the shit out of Windows3 if you aren’t a gamer4}.
In any case, you’ve got to decide for yourself what works best for you. If you’re happy with a Mac or Windows, I won’t begrudge you. I’ve got trouble enough being the captain of my own soul; I don’t get paid enough to be the admiral of yours.
Most of the time I swear by CUPS; but sometimes I swear at it.↩︎
However, Bluetooth is innately a shitty protocol for wireless peripherals. It’s such a pain in the ass that OpenBSD outright refuses to support it. The rest of us are stuck until manufacturers come up with a better protocol.↩︎
In fairness, Windows 7 wasn’t nearly as horrible as Windows 98SE or Windows 3.1, and even has an OK third-party package mangler, but I still won’t use Windows unless I’m getting paid.↩︎
Steam’s Proton supposedly works for lots of games, but it’s basically WINE on steroids. Don’t expect miracles.↩︎