Returning to Linux on the Desktop

Returning to Linux on the Desktop

Since 1997, I have had an off and on relationship with Linux as a desktop operating system. I've thoroughly enjoyed it as a server operating system, but have never had the everything "just works" experience on desktops. Invariably, there is always something major flaw that becomes too annoying or troublesome that leads me back to Windows. Here are some of the Linux distributions that I've attempted to use to replace Windows over the years (in no particular order):

  1. Fedora

  2. openSUSE

  3. Ubuntu

  4. Kubuntu

  5. Xubuntu

  6. Linux Mint

  7. Elementary OS

  8. Debian

With each of these distros, I ran into various quirky hardware compatibility issues or UX/application bugs, or in some cases, bloated pre-installed configurations, non-optimal hardware configurations, and/or a political stance that resulted in more work to configure non-free/proprietary software.

Things changed in January of this year...

Throughout the pandemic, I had been leveraging an old home computer with 8GB of RAM and an Intel Celeron J1999 to work remotely from my office. The hardware served as a thin client, as I leveraged VMware Horizon to connect to hosted VMs and an office desktop over the VMware Blast protocol. This worked exceptionally well; however, with each subsequent Windows 10 update, the Celeron began to dramatically slow down further.

Performance was so bad in January, that I decided to take a spare hard drive and put Linux and the Linux version of the VMware Horizon Client on the Celeron to see if it was any better. I had been hearing great things and reading solid reviews on System76's Pop!_OS (Ubuntu-based), so I decided to give it a whirl... Holy crap!

Everything worked without any extra configuration! Even with the overhead of the Gnome 3 environment, my Pop!_OS 20.04 installation made the Celeron perform like a brand new PC. I had no unusual anomalies crop up with hardware support or stability. The Celeron, as I refer to it, is actually a Gigabyte Brix Mini PC (GB-BXBT-1900).

After using Pop!_OS 20.04 for most of January and part of February, I had fallen in love the user interface over Windows 10. For me, this included the keyboard navigation, windows tiling, and workspace management. I found that I was being distracted less by operating system and application notifications. Also, I was maximizing my productivity because of the killer keyboard shortcuts and the improved user interface performance. I tend to be a minimalist, so Pop!_OS was perfect for me. The operating system does it's job exceptionally well, in a very aesthetically pleasing way, yet gets the hell out of the way and allows its users to focus on work more easily. In fact, I find that I'm using 95% of the bundled software included with the operating system. Everything just feels well polished and purposeful.

By then end of February, I had started using the Celeron for more than just as a thin client to connect to the office. I found myself using it for software development, writing projects, and web browsing. While I still couldn't believe the performance advantages over Windows 10 with many of the same applications (ex: VS Code, Docker, Chrome, etc), I was still suffering though some of the performance constraints of the J1999 processor. I wanted more RAM and a faster system overall. I immediately gravitated towards the System76 Meerkat (Meer5). As a fan of Mini PCs, it was the perfect system for me: something that would not take up a lot of real estate on my desk and overall had a great mix of features, expansion options, and power efficiency.

The only thing that kept me from investing in the Meerkat was that it was simply a re-branded Intel 10th Generation NUC. When I priced out the System76 Meerkat, the base i3 model without any additional upgrades was $300 more than pricing out the i5 NUC with upgraded RAM/Storage from Newegg.com. So, sorry System76, I decided to save the extra money and I purchased the Intel i5 Gen 10 NUC with required sub-components from Newegg.com. I feel bad not supporting System76 with a hardware purchase. I am taking full-advantage of using the same hardware reference architecture as the Meerkat to maximize my experience with Pop!_OS, but this is the life of a Dad on a budget... I still would gladly purchase a support license for Pop!_OS to support its development.

I did reach out to System76 for information about purchasing a support license for Pop!_OS outside of a hardware purchase, but their sales department never returned my inquiry. I've also tried to contribute feedback to their GitHub projects, but they haven't responded to me there either. I'm sure they prioritize responses to paying customers; however, it does make me wonder how engaged they are after being ignored by both sales and dev teams. Still, I have found an option on their website to contribute monetarily to support the continued development of Pop!_OS and I plan on making the yearly contribution because it is an exceptional OS.

Update 04-08-2021: I did hear back from System76 today. It appears they responded to me in my account portal, but I didn’t receive a notification until today. I’ve posted their response below.

Screenshot 2021-04-08 163235.png

While the Pop!_OS performance on my new NUC is stellar, I did opt to install Windows 10 on a secondary SSD disk, so that I can dual-boot from the UEFI without having weird bootloader dependencies in either OS. I decided that it was prudent to install Windows 10 to have support for specific games/applications that I couldn't run in Linux or replace with Linux-native applications; however, since I setup Windows 10 on the secondary drive. I have only booted it once to perform Windows 10 updates and NUC driver updates. I'm having too much fun to leave my Linux environment.

If you're on the fence about trying Linux as a potential desktop operating system replacement, there are a ton of resources to help you get started:

  1. You can try most Linux distributions out on your hardware in a non-destructive way by live-booting a USB drive or optical media.

  2. If you want to have a pain-free hardware experience, most Linux distributions work phenomenally well inside virtual machines on any hypervisor (ex: VMware Player/Workstation, Hyper-V, VirtualBox, etc.)

  3. Window Subsystem for Linux (WSL) is an amazing option that continues to get better as it evolves. Depending on your use case, WSL may be all that you need and then some.

I'd love to hear about some of your stories about running Linux as a desktop operating system. Please leave a comment and share!





Raspberry PI iSCSI Issues

Raspberry PI iSCSI Issues

An old hobby from the '90s lives again....

An old hobby from the '90s lives again....