Linux on the Desktop: Part One

I left the Linux desktop nearly 10 years ago. Now I'm trying to go back in order to escape from a closed-source environment, by investigating on possible hardware options and trying out first steps on cheap alternatives.

Linux on the Desktop: Part One

The Backstory

My journey through IT began sometime in 1997 when I got my very first computer. After only a few years on MS-DOS, Windows 95 and Windows 98, during which I spent most of my time experimenting with Basic, Visual Basic and C++, I discovered Linux. Back at that time, dial-up internet access and printed magazines were the only way to find out about new things and trends in the computer industry. One of these magazines came with an installation CD for a Linux distribution, which I cannot even remember the name of.
However, it got me trying the system for the first time. I was instantly hooked and started digging deeper into that topic, trying different distributions – namely Slackware, SuSE, Gentoo and Debian – over the following years, while also upgrading my hardware to newer generation computers like AMD’s K6-2 and Intel’s Pentium 4 HTT. I believe it was only in 2009 or 2010 when I had my very first portable computer, an old IBM ThinkPad T21. While my portable Debian/GNOME laptop was perfectly sufficient for, sometime in 2012 I made the move to Apple’s 13” unibody MacBook running MacOS X, after having tried the OS as a side-project on an Apple PowerBook G4 for over a year.

Back at that time, MacOS X still felt a lot like a BSD with a lickable UI on top of it. And with MacPorts it even had a decent package manager that was sort of similar to FreeBSD ports. Compared to my Debian desktop, MacOS made it very simple to be productive no matter where I was: It had solid battery life, made it easily possible to connect to a hotel WiFi and it just worked when connected to an external display or beamer. Compared to the huge PITA those tasks represented on Debian, where the NetworkManager was just as unreliable as Xorg, the MacBook was a great deal back at that time.

Status Quo

While I still keep Linux as my go-to system for running nearly everything on the server-side, I slowly but steadily got sucked into Apple’s emerging ecosystem on the desktop. Today, my one and only computer is a 2018 15” MacBook Pro, my smartphone is usually the “pro” version of Apple’s latest iPhone and even one of the wristwatches I wear is a recent Apple Watch. Do I enjoy the amazing work Apple has done on the hardware as well as the software side? Yes. Do their products enhance different aspects of my life, be it business tasks, travelling or working out? Totally. But do I like being kept in a golden cage where I cannot tell for sure who’s watching and what data is being shared with whom? Well, no, not at all.

Now, frankly speaking, I don’t see any real alternatives to Apple’s ultra-portable products like their iPhones or their watches. Even their iPad lineup is pretty hard to beat. And as bad as their data privacy might or might not be, there simply is no other hardware or platform that is reliable and efficient enough for me to trust it with large portions of my day-to-day life. I’ve been keeping a second (mostly up to date) Android-based phone in my pocket for years, beginning with the Samsung Galaxy S4. I even forced myself into making devices from Google’s Nexus (and later Pixel) line my daily-driver for over a year, but I kept going back to Apple’s iOS over frustration about the Android operating system.

However, it’s a different story for me in regard of the desktop computer. While I do enjoy all the nifty features and nice UI gimmicks macOS provides, most of the work I’m doing on a daily basis could be done on another Unix derivative or on Linux. There are a couple of things here and there where I can imagine struggling to find solid alternatives on a Linux desktop. For example an API client like Paw, a native Apple Music streaming client, a Fantastical-like calendar tool, a photo processor like Capture One and a photo manager like Apple Photos. Nevertheless, these things are nice-to-haves and largely available on iOS as well. Everything else that I need for my business and my own projects should be readily available on Linux. At least that’s the assumption under which I’m approaching this next project of mine: Migrating my main workstation to Linux.

Hardware

It’s probably a well-known fact that Linux and hardware can be a very delicate relationship, especially if the hardware in question carries an Apple logo on its lid. While I find the last generation 15” MacBook Pros some of the best laptops available on the market – and even far better than the latest 16” MacBook devices – running Linux on such a device can be a tedious if not impossible undertaking. Hence I’ve kept an eye on the PC market for the last couple of months in order to figure out the available options for a laptop that supports Linux with little to no issues at all. My main focus is on the CPU and the GPU, with the RAM, the display brightness and its resolution being my second and third priorities.

First of all, I would like to avoid Intel at any cost. Hence, I was mainly looking for laptops rocking one of AMD’s latest Ryzen processors. Also, while a NVIDIA GPU would make sense for running AI-related workloads, the struggles of dealing with their proprietary drivers on Linux isn’t necessarily what I would be looking forward to. Especially as I would like to use the Wayland-based WM Sway as my desktop environment. Not to mention that NVIDIA have been real douchebags in regard of their “efforts” to support the OSS community.
In regard of the RAM, I’m looking forward to 32GB (or more) of DDR4 memory. My current MacBook runs on 32GB RAM and newer models even come with up to 64GB these days. I wouldn’t think 32GB of RAM is too much to ask for, right?
As for the screen-resolution, I would like to stick with something around 220ppi, that is comparable to the MacBook’s 2880x1800 resolution. Considering that this resolution has been de-facto standard for every 15” MacBook since 2012, I would feel kind of ripped-off paying a solid amount of money on a laptop that only comes with a FullHD resolution in 2020.

Alright, so, let’s have a look at the PC market and try to find a device that checks those boxes. In the end, those specs are basically what I’m already used to from an over two years old Apple device. It shouldn’t be too hard to find a comparable 15” laptop on the PC market, right?

The Options

Turns out, it is. Especially with the CPU and GPU constraints I mentioned before. While AMD seems to be slowly gaining market share, there still aren’t many power-user-oriented laptops featuring a Ryzen CPU and ideally a Radeon GPU. The closest that I’ve got to those specs so far were the following devices.

Lenovo ThinkPad T14s (AMD version)

The T14s has only recently been launched on the European market with the Ryzen 4750U and 32GB of (soldered) RAM. It also sports integrated AMD Vega graphics and a more or less sleek design, being a 14” slim laptop. However, apart from the CPU, the GPU and the RAM literally every other detail on this device is rather a compromise and less a competitive spec. For example, the laptops display is a 400 nits FullHD IPS panel surrounded by a set of ridiculously large bezels. Also the 57 Wh battery isn’t exactly a marathoner and according to multiple reviews on Reddit the device seems to struggle quite a lot with heat dissipation.

All in all, not exactly the perfect replacement for my 2018 MacBook.

Lenovo ThinkPad X1 Extreme / P1

The X1 Extreme and the P1 seems to be slightly differently specced hardware crammed in what looks like the same shell. However, this device seems like an overall good replacement for the MacBook, although Lenovo does not provide an AMD option (yet?) and the GPU is a dedicated NVIDIA chip. Judging from different benchmarks on those devices, the neither CPU nor the GPU configurations seem to be kicking ass and taking names, making the struggle with an Intel processor and NVIDIA’s Linux drivers even less worthwhile. And while the X1X and the P1 sport well over 32GB RAM and even a 4K display, the high price-point is not exactly helping to convince me to compromise on my preferences.

What does help, however, is the fact that there will be a Fedora Edition available soon. Additionally, just like with the T14s, the ThinkPad series’ TrackPoint is something I would definitely enjoy over Linux’s rather mediocre trackpad implementations.

Asus ROG Zephyrus G14

Okay, now it’s getting weird. The Zephyrus G14 is one of Asus’ latest gaming laptops and comes with an AMD Ryzen 4900HS and an NVIDIA RTX 2060 GPU that might be tempting to struggle with, considering its benchmark results. The G14 also sports 32GB of RAM and even a QHD display. And while the shell’s aesthetic isn’t exactly what I was looking for, the specifications seem to match my preferences pretty good. So, let’s order the Zephyrus G14 and try it, right?!

Well, not quite. Asus is one of those brands that seem to release different variants of their hardware on different markets at different times in different colours, using different serial numbers. As of the time writing, I was not able to figure out how the heck to get the model I was looking for – Ryzen 4900HS, RTX 2060, 32 GB RAM, QHD display, grey shell – anywhere across Europe. What I have found out so far is that Asus seems to sell this specification under the following identifiers: GA401IV-HA112R / GA401IV-HA112, GA401IV-HA304R, GA401IV-HA027R;

Long story short, while the specs look very intriguing, this 14” device seems to be very hard to come by, even though it has already been announced nine months ago.

Razer Blade Pro 15” / 17”

The Razer Blade Pro 15” and 17” devices seem to be the only hardware on the PC laptop market that actually get really close to Apples MacBooks – not only from a specs-perspective, but also from the exterior looks. Just like the Lenovo X1/P1, the Blade sports a combination of Intel CPUs and NVIDIA GPUs, with way over 32GB RAM and a 4K display option. However, unlike the ThinkPad series, Razer doesn’t exactly seem to enjoy a decent reputation when it comes to durability. While I don’t have any first-hand experience, I came across a handful of tweets and Reddit posts, where people have been complaining about their dead Blades and little to no support from Razer. And unlike with an Apple device, I don’t see how one could walk into a store anywhere in the world and have their Razer laptop fixed. Hence, I’m not sure whether I’d really want to trust a Blade being my primary workstation.

The No-Names

Now, since I’m not the first person to complain about the lack of “ideal” Linux hardware, it’s obvious that a handful of companies have began trying to deliver on that: Hardware tailored to the typical Linux power-user. Some of the better known names in that area are TUXEDO Computers, System76, Slimbook and Entroware. These companies basically partner up with manufacturers like Clevo or Tongfang and have them put a specific set of hardware components into what’s usually an already available shell and then rebrand those devices under their own names. System76’s Galago Pro for example is actually a Clevo N130WU, just like the new KDE Slimbook 14” seems to be some Tongfang device.

However, while some vendors, like System76, go the extra mile and actually have their own system firmware in place, most devices are pretty much no different to the ODM’s originals – apart from their price tags, obviously.

Those no-names actually seem to sport very good hardware for an usually okay-ish price. Taking a look at the new KDE Slimbook for example, it becomes clear that without all the marketing bells and whistles, very powerful specs can be provided at a competitive price-point. And while I do believe that System76, Slimbook, TUXEDO and all the others try their best to deliver on quality and durability, they are nevertheless limited by the influence they have on their ODMs. I was very interested in something like System76’s Lemur Pro (even though the specs really don’t fit that well) or the KDE Slimbook (even though the shell seems to be really clunky and not particularly nice), but just like with Razer’s Blades, some of the reviews I’ve read and seen on those machines don’t exactly foster trust in their hardware. In addition, their limited regional availability makes it hard to actually purchase the devices or claim warranty for them.

Also, while most specs on those machines read great, I haven’t yet found a single one that also sports a higher resolution (greater than FullHD) display. Even on a 14” display, a FullHD resolution results in only roundabout 160PPI, which is well beyond the MacBook’s Retina display.

So, what now?

It seems like 2020 is not only a crappy year to travel, but also a crappy year to buy into the PC laptop market. Especially, if an AMD CPU and a display that’s up to the MacBook’s 8 years old standard is on the list of requirements. It’s shocking to see how bad the PC laptop market actually is, at least coming from the Apple ecosystem. Don’t get me wrong, there are plenty options for the average Joe, however, as soon as things get sightly more specific, it’s incredibly hard to find something with a good bang for the buck. Even though I only listed a handful of options here, I checked most major vendors (including Dell, HP, Alienware, MSI, Acer and Samsung) and the major issues were the actual availability of models throughout different regions as well as what looks like a considerable focus on consumer devices over pro hardware.

And since I’m currently forced, just like many other people, to spend less time on an
airplane or on the road and more time in hotels and airbnbs, I’ve decided to begin my undertaking of leaving the Apple desktop by doing smaller, less cost-intensive steps instead.

The Rock Pi 4

I’ve wired up my Raxda Rock Pi 4 (model A) to a portable 15” 4K screen and connected my mechanical Vinpok keyboard and my MadCatz R.A.T. 8+ optical mouse to it. In addition, I’ve attached a 250GB WD Black SSD via M.2 and gave the Manjaro ARM Rock Pi 4B Sway 20.08 Edition a try. Even though I couldn’t find any official information on whether that image is supposed to work on the 4A model, I decided to give it a shot. I attached the NVMe SSD with an USB-C enclosure to my MacBook, dded the Manjaro image on it and used Rock Pi’s official Ubuntu Server image on an SD card to make u-boot boot from the NVMe device. The installation went through perfectly smooth. In fact, I’m extremely please by how well Manjaro implemented the whole installation process.

Rock Pi 4 Setup

As for the hardware, nearly everything worked right out of the box. The audio outputs were recognised and the display was automatically chosen as primary audio output. The network interface was available right away – no WiFi on my Rock Pi model – and even Bluetooth was up and running without any additional configuration. However, the Rock Pi 4 doesn’t manage it to drive the display in full 4K resolution unfortunately. Running kernel 5.8.6 with the Panfrost driver, the HDMI output seems to be limited to only FullHD.

What about the Internet’s Favourite SBC?

I’ve also tested a Raspberry Pi 4 (4GB) with the same Manjaro Sway Edition image and managed to get one HDMI output running on 4K @ 30Hz. However, the Raspberry’s overall performance was incredibly bad – even at FullHD resolution. IO was utterly slow – due to the lack of a NVMe/M.2 port – and browsing the web had a very 90s feeling to it. At 4K it wasn’t even possible to watch YouTube videos, as even in 480p video quality it looked more like a slideshow than anything else. In order to check, whether this might have had something to do with Wayland/Sway rather than the Pi, I also ran the latest MATE Desktop on 4K. The videos on YouTube played better on 480p but again became a slideshow at 1080p. On the other hand the UI felt more sluggish on the Xorg setup than on the Wayland/Sway variant.
In addition, I managed to boot the Pi from an external SSD, but experienced very strange issue further down the road which didn’t occur while running from an SD card. It doesn’t seem like running Raspberry OS or any other flavour from an external drive is ready for prime-time on the Raspberry Pi 4, yet.

What’s next?

I’m currently testing what life is like working on the Rock Pi 4, running Manjaro Sway Edition. Meanwhile, I’m eying for something like the Asus PN50. So far, the Rock Pi 4 seems like a powerful and fun SBC, however the Linux support for ARM isn’t quite there yet, with plenty of tools and applications not available or not compiling correctly. A NUC rocking an amd64 architecture with a powerful Ryzen CPU and well-supported AMD graphics on the other hand would solve those issues and provide a better, more stable and versatile environment, without adding too much weight to my luggage. And while I can definitely see, where posts like this are coming from, I must say that so far the majority of issues don’t seem to affect me too much, mainly because most of my workloads do not require me to use any other UIs than the TUI.

Even if I might not be able to fully escape Apple’s ecosystem, I hope that at least I can limit my (and my data’s) exposure to it by a good amount. Let’s see!

Rock Pi 4 Setup