Coming Home

desktop linux

This is going to be a coming home story disguised as yet another review of System76’s Thelio line of desktops. The Internet is full of Thelio reviews, which says something about the quality of the product while simultaneously proving geeks find gadgets looking like mid-century modern monoliths irresistible. If you want to use Linux as your primary OS, prefer or simply need top-spec hardware, and feel the objects in your life should be works of art that don’t look like they came out of a 1994 garage sale…this might be a good read.

A Bit of History

I’ve been using UNIX-like operating systems for nearly 30 years. Both at home and work, I’ve been responsible for or experimented with VMS, SunOS/Solaris, AIX, HP-UX, FreeBSD and Linux (starting with Slackware 0.x when “packages” were tarballs). UNIX desktops hold a fond place in my heart.

Several years ago (~10-15) when Macbooks started becoming more prevalent, I joined a team who all used Apple. At the time I’d been surfing desktop Linux distros (CentOS, Fedora, the “new” Ubuntu). Even then, desktop focused releases were making progress, but there were rough edges. Jumping ship ultimately came down to hardware – on a Macbook I got a great display, way better battery life, and wireless drivers that “just worked”. It didn’t hurt knowing Darwin was genuinely inspired by UNIX.

It wasn’t smooth at first. I cursed Steve Jobs daily for “knowing better than users” each time I found a setting I’d gotten used to that couldn’t be replicated on the Macbook without hacks (if at all). This was way back, so things like native terminal completely sucked. I could go on, but the point is I decided to make a change to solve specific pain points, but that also entailed accepting new pain points (or learning experiences). Keep that in mind…

Dilbert Comic

Bad News First

You could be like me, getting tired of some aspect of the system you’re using now. Maybe you’re a DevOps person using a Macbook, and want to switch to Linux since you support it all day. Perhaps you’re a developer that heard VS Code runs fine so now’s the time! There’s a distro for everyone these days, so you might even be my Grandma getting tired of popups and virus threats while browsing Facebook (no my Grandma doesn’t have Facebook, gotcha).

Whatever the reason, it’s important to have honest expectations. There is a lot of good about Linux, and modern distros have made significant advances. However, everything is not going to be smooth. Depending on your OCD tendencies (mine go to eleven), you will require what feels like endless tweaking to get everything mostly working… I say mostly. Some things just won’t work, at least not the same exact thing or in the same exact way. Maybe it works, but with a different UX. Maybe there’s not an app for that, or it sucks.

Even when you spend a weekend going through your configs to port decades of accumulated settings… some things won’t feel the same (the ones you’ve completely forgotten are the ones you’ll miss most). Perhaps something really cool you heard about (and every review says should work effortlessly), crashes constantly for you without any clear reason (I’m looking at you, Steam)…when you search for help, you’ll find Google full of endless threads with vaguely similar problems that never quite get resolved.

This is not meant to disparage… just be honest with yourself. Linux is a commitment. Like most commitments, it pays dividends – eventually. It will make you a better person in the end, but improvement takes grit. If you often say “my machine is just a tool that should get out of the way” – think twice about switching. If you’re willing to patiently view every task as an opportunity to increase understanding, read on.

Waxing Philosophical

When making a decision that will alter your daily workflow and directly impact your productivity, it’s good to think about first principles.

At its roots, Linux (like UNIX) is about freedom. Sure, there are commercial UNIX variants…corporations always try to cash in. Regardless, the UNIX ethos is about empowering humans with an assortment of small, well-engineered, composable tools you can piece together to build your dreams.

Using Linux is about more than having a “perfect” machine. It’s truly a learning experience. Maybe you opt for a distro similar to what you use in your day job to up your professional game. You could distro jump, exponentially improving brain elasticity by learning all the nuances. Whatever your choice, everything from opening a terminal to writing code will feel a bit “fresher”. Things you took for granted will require thought. With enough thought they’ll become more enjoyable through better understand of your dependencies.

Of course we want performant hardware, reliable software and UX that isn’t frustrating…but for many, there is more at stake when choosing an environment where you spend most of your waking hours than spit polish. We want community, freedom of choice, and an ability to look behind the curtain.

Company

While we’re talking philosophy… Perhaps the biggest reason to buy a Thelio is the company behind it. System76 has a great track record of producing quality, Linux-optimized machines. They are a company of hackers and makers dedicated to treating Linux users like first class citizens.

Beyond hacker ethic, I enjoyed the level of knowledge while reading their blog and support articles. There’s also “agile” DNA beneath the surface. Before buying my Thelio I spent months searching the web, reading blogs and watching videos. What impressed me most was each time a reviewer offered a critique, I’d find a future review talking about how that specific issue had been addressed… everything from firmware and OS updates to hardware improvements. No company is perfect, so seeing one focused on learning from user feedback was key in my decision.

Hardware

System76 has a fairly standard build page. Pick your model and load up. I went with the “baby” Thelio-r2 which got me 16 Ryzen cores (32 threads), 64GB and 1TB. Honestly, everything inside could be pieced together by an enthusiast…because of that, some have complained about the price point. Prices fluctuate, and while there is certainly markup, when I spec’d the premium components (CPU and GPU) it wasn’t much. Comparing apples to Apple, when taking the build quality and engineering effort behind System76’s offerings into account, you quickly realize the price is right (how much is a Mac Pro again?).

Thelios

This is ultimately about what you get beyond commodities. The case is truly a work of art. For the oddball UNIX geek meets aesthete like myself, it’s something you will feel honored to have on your desk. Best of all, form is function. It doesn’t just look good, it optimizes airflow and does it quietly. If you opt for an ATI video card like I did (don’t enjoy Nvidia’s contentious relationship with the Linux community), your GPU blower will be the loudest thing you hear.

Speed of the boot process will blow your mind. This is largely due to System76’s investment in Core Boot and obsessive tuning and integration of the hardware and OS. It blows away my latest generation Macbook, and boots considerably faster than any of my other stock Linux machines.

Beyond nuts and bolts, you are paying for the design process, commitment to open source, and responsible manufacturing done in the USA. When you take all of these together, it feels like a lot of bang for your buck!

Software

System76 will ship their systems with stock Ubuntu if you want, but also offer Pop!_OS (it’s easy to laugh, but I got over ridiculous OS names years ago). I decided to give Pop a try since I’ve used Ubuntu extensively and was curious how a committed group of hackers might improve it.

Ubuntu has gotten some well deserved shade thanks to interesting business choices by Canonical, but was once touted as the future of desktop Linux. Mint also receives rave reviews and a lot of community love, so the Ubuntu lineage for a daily workstation makes sense. Best of all, Pop!_OS 20.04 is based on Focal Fossa (a LTS release), and done in a “semi-rolling” manner that ensures you don’t have to wait forever for updates to your favorite packages. While not as “point-releasey” as distros like Arch, I’ve found it strikes a good balance between new and stable.

There has been comments about Pop!_OS being little more than a theme. After some time on keyboard, I’ve found it boils down to a lot of thoughtful touches. From default settings, bundled apps, Mac-like rescue partition, easy encryption, a “Pop Shop” that makes browsing non-deb packages a breeze, integrated firmware updates – they’ve done a lot more than the theme, and the theme isn’t too bad!

Perhaps the biggest improvement is native tiling desktop support. It’s off by default, but with the click of a button you can have a Gnome desktop that includes many of the coveted workflow optimizations of i3 or Material Shell out of the box. The auto-tiling alone is useful on big displays (required a plugin on my Macbook). To level up, you can learn super key combinations to open common applications, resize and organize windows, or change desktops.

Tiling Desktop Support

Conclusion

Hopefully you’ve made it this far… I didn’t want the opening history to bore you or the bad news to scare you. If you’re thinking of buying a Linux desktop, System76’s Thelio won’t disappoint. You’ll feel a sense of pride each morning when you see it, and a state of zen while working beside it.

There are a lot of other great blogs and video articles on the Thelio which go into more detail on the hardware and software. I’ll link to a few below I think you’ll enjoy… I wanted to do something different by asking you to pause, reflect and be honest with yourself before a big purchase.

Make the switch for the right reasons. Embrace the UNIX philosophy. When something inevitably doesn’t work or you find rough spots, recognize the learning opportunity. Maybe you can fix the bug, or provide feedback via open source projects that ultimately improves the lives of other users – try doing that with closed source. After all, the freedom to tweak and change until you find a state of system Nirvana that works for you is what UNIX is about… No vendor lock-in. No omnipotent designer that knows better. No mystery binary blobs.

In the end, I’m happy to be home on a Linux machine once again. It’s not perfect. Neither am I. Life is about learning, not perfection. Embrace the freedom. You won’t regret it. Anything made by humans will have hiccups… the question is, can you believe in the technology you’re using?

References Some of these are older review, but each are fun to read or watch… As you move from older to newer, you’ll notice how many of the initial suggestions by the community were incorporated into the Thelio design!

Update: Since writing this article, I’ve moved to Arch Linux as my primary distribution. PopOS! wasn’t bad for a full blown desktop environment, and the System76 team was responsive to issues I had along the way. However, I’ve always been a window manager minimalist, so felt more at home with Arch and bspwm. The good news is installing Arch on Thelio is painless, and the various system76-* driver packages ensure no functionality is lost.