Jack Wallen encounters an issue with Linux that illustrates what sets it apart from other platforms.

Image: Jack Wallen



Up until recently, Elementary OS was my platform of choice. It's an elegant, simple, and user-friendly solution for the desktop. One thing that the Elementary developers do that I believe is fairly wise is to not allow upgrades from one major release to another. In other words, if you use Elementary OS Loki, you can't upgrade to Juno. To get the benefits of Juno, you must do a full-blown re-install of the OS.

Why is this route wise? My latest adventures in Linux will help explain.

A few months ago, I purchased a System76 Thelio. It's a beast of a desktop, while at the same a masterful work of art. Preinstalled on that desktop machine was System76's own Pop!_OS. Based on Ubuntu, it seemed like a great way for me to dive back into the GNOME desktop. So I did. It took no time to get accustomed to the new workflow with GNOME. Once my fingers understood the new keyboard shortcuts, I was good to go.

This is where it gets interesting.

SEE: 20 quick tips to make Linux networking easier (free PDF) (TechRepublic)

The big upgrade

Everything was working great. But then Ubuntu officially released 19.04, and my fingers were itching to type do-release-upgrade. Before bed one night, I opened a terminal and issued the command to run the upgrade. It was a fairly safe assumption that System76 vetted everything, and the upgrade would go off without a hitch.

My assumption was correct--System76 did their work.

Upon rebooting, it seemed like the upgrade was successful. Not one thing was wrong. Yes, GNOME was slightly different, and the default icon theme wasn't quite as slick as the previous one, but the end result provided an improved experience. The Thelio ran faster and smoother, which is a feat in and of itself considering how blazingly fast it was, to begin with.

Until (you knew it was coming) the dreaded suspend occurred. Since this isn't a laptop, suspend isn't a big deal. But when I logged back into the desktop, I discovered something odd. Both trackpads I use (a Logitech T650 and an MS Arc Mouse--don't judge me) no longer scrolled. They would both move the cursor and successfully click on items, but scrolling would not happen.

After digging around, I realized the issue was the 5.x kernel. Since there was no time table for the fix, I decided to reboot with the previous (4.18) kernel. But alas, no matter how I configured GRUB, I couldn't reach the GRUB menu, which was odd, as I was always able to make things work with Linux. Was I destined to return to my old scroll wheel mouse? I'd grown to really like that Arc Mouse, so the idea of having that physical wheel under finger had me shaking my first-world head.

SEE: System update policy template download (Tech Pro Research)

And so, I hopped into a Pop!_OS chat to get the scoop. Turns out, the Thelio/Pop!_OS combination used UEFI, which is managed in a completely different configuration file.

The more fool I.

After making a quick configuration change (I'll address this in another article), I rebooted and was able to choose between the 4.18 and the 5.x kernels. With the 4.18 kernel running, scrolling functioned as expected, and I could get back to work. Sure, I was missing out on some of the improvements found in the 5.x kernel, but the ability to scroll took precedence. It's the small things.

That 4.18 kernel saved me from a frustrating workflow. But, because this is Linux, you can always retain a functioning kernel. This makes it possible when a newer, shinier kernel comes along to install it without the fear that your computer will be rendered unbootable or hampered in any way (so long as you configure the UEFI boot to grant you access to the advanced boot options).

Try that in Windows.

On second thought, don't. Because you can't.

SEE: Server deployment/migration checklist (Tech Pro Research)

Not the stuff for newbies

I will grant you that this is not something new-to-Linux users might undertake. Because most new Linux users won't run the do-release-upgrade command, they won't find themselves in situations that require them to edit the loader.conf file (hint, hint). But for those who like to experiment, anything is possible.

And that is part of the profound difference between Linux and other operating systems. Linux works flawlessly for new users. At the same time, Linux makes it possible for experienced users to tinker to their heart's content. When things do go wrong, Linux gives you all the tools necessary to fix the problems.

I won't deny that over the years I've had Linux installations go awry. But each and every time, I resolved the problems without too much hassle. There were a scant few occasions where the only path to resolution was a complete reinstallation. Even then, Linux is one of the easiest operating systems on the market to install.

SEE: Linux, Android, and More Open Source Tech coverage (TechRepublic on Flipboard)

Linux desktop thriving

You may think that Linux on the desktop is dead. It's not. Given the state of Linux desktop distributions, it's all too clear that Linux, as a desktop operating system, is better than ever. The Linux desktop has become a set-it-and-forget-it environment where "just works" is the modus operandi. And on those rare occasions, where things do go astray, it's always possible to resolve the issue, without too much strain or stress.

This difference between Linux and other operating systems has shown itself to me many times over the years. When it reared up this time, it dawned on me just how profound it is.

Open Source Weekly Newsletter You don't want to miss our tips, tutorials, and commentary on the Linux OS and open source applications. Delivered Tuesdays Sign up today

Also see