It has been a long-running meme in the Linux community that each new year would be the “Year of the Linux Desktop” for decades now. This never happened. Why? A big reason is compatibility with gaming. Some titles worked on Linux but not very many of them.
Things have changed now with Steam’s new compatibility options they developed for the Steam Deck called “Steam Play”. Virtually every title I own in Steam plays flawlessly on Linux now as these options are available for all Steam Linux users and do not require owning a Steam deck to take advantage of.
I have been switched over for a month now exclusively to Ubuntu 21.10 on my main Threadripper desktop and I have not missed Windows at all. In the above screenshot I’m using Steam with “Steam Play” to play all of my titles that don’t include Linux support, editing my web site, overclocking/underclocking my GPU while mining Ethereum. These are all things that were an order of magnitude more difficult / annoying to do on Linux only a few years ago.
Today let’s explore the things that have changed that up until this point had been preventing the year of the Linux desktop!
Compatibility Improvements for Gaming – Steam Play
Let’s start with the big one. Gaming is extremely popular and I have been playing and even writing video games for decades. The compatibility options for games on Linux have been improving slowly over the years but it was probably still something like 10-15% of my Steam library that work without “Steam Play” support.
Now they pretty much all work. Why? Because Valve made the Steam Deck (Valve’s new handheld device capable of playing most items from your existing Steam library) and the Steam Deck runs Linux! Specifically the Steam Deck runs “Steam OS”. This is a full-blown publicly available Linux distribution available directly from Valve here that you can download and install. You do not need to run Steam OS to get these benefits though, they are available to all Steam users on Linux.
This is why the compatibility improved so dramatically all of the sudden. It may have taken another 10-20 years or longer for us to reach the level of compatibility that Valve just gave us because they needed it for the Steam Deck handheld. They wrote an entire compatibility layer essentially for us!
How to Enable Steam Play
Once you’ve installed Steam you can enable Steam Play in the options here:
Check both boxes and after restarting you should notice in your game list that titles are now playable that previously would only show a Windows icon.
Graphics Card Driver Improvements
Another thing that had held me back was the traditionally poor video driver support / functionality in Linux. This has also changed dramatically. Not only do they give really great performance now but they also support overclocking and fan control settings.
Overclocking / Underclocking
This is something that had always been difficult on Linux but things have improved in the past few years. It is necessary for people to control their GPUs clock / fan speeds for many reasons. Years ago you’d have to use the CLI to set most of these but many of them are built right into the GPU settings even for newer GPUs like a NVIDIA RTX 3090* (enabling cool-bits required, more on that later).
Here’s what the overclocking settings look like:
Notice at the very bottom I have a Graphics Card Offset and a Memory Transfer Rate Offset. This is to overclock / underclock the GPU’s processor and memory right inside the official nvidia-settings utility.
You simply type a value in this box then press the “Enter” key and you’ll see a message at the very bottom of the screen (a status message) saying the settings have been successfully applied.
Controlling Fan Speeds
You can also manually override the fan speeds and the GPU will actually respect them. Again we can do this right in the nvidia-settings GUI like this:
This works similarly to adjusting the clock speeds. You can slide the bar and press “Apply” or you can type a value in the box and then press the “Enter” key.
You will hear the fans spinning up immediately!
Enabling Cool-Bits for NVIDIA GPUs
This is necessary to use all of the features I showed above. There’s a few ways to do this. The easiest way is using the nvidia-xconfig utility like this from the CLI:
sudo nvidia-xconfig --cool-bits 31
This will automatically modify your /etc/X11/xorg.conf file to enable Cool-Bits after a reboot. I used a value of 31 which is correct for NVIDIA 3000 series GPUs to enable these features.
There are other values of Cool-Bits for older cards but this value should enable all features. If it’s a really old card you may want to look up the best cool-bits value to use for that generation of card.
You may also add this value manually to the “Device” section in your xorg.conf but I really don’t recommend doing it this way unless you have no choice. If this is the case there are a lot of guides out there to do it the “hard way” but most people should let NVIDIA’s utility configure this for them.
Making the Plunge
I couldn’t be happier with the setup. I’m using the official latest NVIDIA driver with overclocking/underclocking/fan support on a modern RTX 3090 GPU*. My games work flawlessly using “Steam Play” (the ones on Steam at least). I’m mining Ethereum at the same speeds I was on Windows with just as low of wattage.
There honestly has never been a better time. Especially with the news that Windows 11 will place a watermark on systems that don’t have “verified compatible” hardware. I was weighing whether to try Linux Desktop again or stick with Windows 10 or to just go ahead and try Windows 11 as my hardware is all on the list.
I really think most people would be just fine on Linux these days even if they’re gamers. The open source ecosystem has the best and most trusted software on the planet and most of it doesn’t cost a dime. It’s good enough for a gamer / miner / webmaster now as their daily driver for what it’s worth.
Are there things out there that are still holding you back? Leave a comment and if I know of any alternatives / a way to do it I’ll gladly share them!
Linux has gotten closer than its ever been but its still not quite there yet on being a viable desktop for most. The overwhelming bulk of the windows PC enthusiast space are not technically proficient to run linux which still has usability gaps and a lack of professional polish that would be unacceptable to the current PC gaming space.
An average windows PC enthusiast would install windows, then install drivers and use the control panels for that hardware to get everything they want right, they would almost never use the command line at any stage of this, it is a mouse centric system and that’s the ones who have some tech skills, a good chunk don’t even have that level of skill (Linux in its current state is way out of their league).
For Linux to win over the above you need a system were as much as possible is covered by the chosen GUI out of the box. If your resorting editing Linux system files or using the terminal then you’ve failed as an OS that is suitable for the above market were almost everything must be a mouse driven GUI.
Valve at least seems to understand this with SteamOS 3 (which last I checked is not publicly available for PC’s the SteamOS is still the older v2)
* They chose KDE as desktop, this is good as it operates on similar ideas to modern windows UI and win users dont want to re-learn how to operate computer or step back in time to retro windows like XFCE, Cinnamon and Gnome is just a weird alien thing to window users. They are funding development of KDE which still has rough spots in its overall GUI.
* They made it so you cannot alter the Linux file system on the Steam Deck and break it.
* The Intel/AMD open source drivers are excellent but lack the GPU control panels found on widows, Valve have built their own GPU control panel for SteamOS that might grow into something more universal if SteamOS 3 comes to other PC’s (indeed Nvidia are working on compatibility with SteamOS).
* Valve also built a auto recovery system so if an update fails it auto falls back to last good boot image, more simple GUI recovery tools are needed if something goes wrong, Fedora now seem to realise this and are working on such a system.
* Software installation is limited to Flatpacks, appimages and Steam Store, thank fully installing software on linux is now a lot easier, it was a nightmare compared to windows.
SteamOS 3 for general PC’s has the potential to become something that could lure over many windows users in time, its not there yet but if they can push KDE or make their own GUI for controlling as much gaming hardware as possible, RGB lights, water cooling, gaming mice features etc then yes it might start getting preinstalled on prebuilt gaming PC’s and DIY PC scene starts to make the switch.
I’m optimistic about the future, just someone with deep pockets (like Valve) has to spend the money to fill in the missing gaps.
I’m also very optimistic about the future! It looks like Valve has done exactly what you’ve suggested and spent billions of dollars to fill the gaps.
For Ubuntu 21.10 I only used the CLI to set up NVIDIA overclocking. I installed my main applications through the Ubuntu Software center such as VSCode. All of my drivers, 100%, were automatically detected and installed. Ubuntu even supports proprietary drivers out of the box* (* clicking the allow proprietary driver checkbox required, more about this later) and I didn’t even have to fight with the NVIDIA driver anymore at all. This is all managed by either apt/snapd now even when you choose the proprietary option.
If I hired a tech that could install Windows but couldn’t install Linux I would fire them. I’ve seen absolute beginners installing Linux routinely for years on my Minecraft Bedrock Edition – Ubuntu Dedicated Server Guide. A lot of them are children but plenty of them are parents that honestly have probably never installed Windows either. It’s honestly never been easier. Ubuntu pretty much works exactly how you’ve outlined here. The software center are even all flatpaks / snapd so I had VSCode ready to go like a minute or two after I clicked the GUI install button.
I’m trying to think of the % of government employees at my last position before I went full time web development that would be able to install Windows. It has to be something like 10-15% of them would be able to do this. They don’t even have the admin password nor are they allowed to. If we gave them a computer that came like this they would use it and any difficulties they have would be our problem.
Maybe my perspective is off from years of helping average people on the site install Linux. These people probably are above-average to even make it here on Google and find my instructions but they can pretty much all do it. They may have a question or two pop up but no more than if they would have tried to install Windows most likely.
I think you’ve said the truth here and this truth lines up with my L3 tech career experience. The truth is that the reason Windows is so popular is because it’s preinstalled. If someone can install Windows I guarantee they can install Ubuntu but this isn’t the issue. If I were to guess the % of people that installed Windows on their own computer themselves I would guess something like 10-15%. The other ~85% got their OS from it being preinstalled or their work preinstalling it for them and issuing it to them.
In fact the only people that need to install Windows at all are almost certainly enthusiasts that are building their own PC or fall into a category that we do overwhelmingly I’m sure. You still pretty much can’t buy a PC that doesn’t come with it unless you build it yourself. Microsoft absolutely knows this which is why they give away Windows licenses to OEMs for pennies relative to what it costs for an enthusiast to buy a one seat license.
Even there though I haven’t bought a Windows copy for ages. I’m still grandfathered in on a Windows 7 license that I locked in the free Windows 10 upgrade for and I believe this also qualified me for Windows 11 so they aren’t even trying to take a lot of the enthusiast money now and just want you running Windows. This is smart and I would do the same thing as Microsoft is or go even further and 100% give it away for free (controlling the platform is much more important than individual license sales, the platform-era has taught us that and Microsoft is adjusting their business model accordingly).
If I issued people computers with Ubuntu installed on it at work that otherwise had all of the regular applications they expected (obviously no Office which is a big problem in Enterprise so even this theoretical scenario isn’t perfect) if it weren’t for the Office issue I don’t think most of the people I served that were government employees would be able to tell. That’s the other big barrier for enterprise honestly but there are already enterprises that are Google shops instead of Microsoft shops that already don’t use MS Office. It’s a major barrier though. The reason I’m mentioning Google shops is that there are other forces working on the “Office” part of the problem and are making progress which chips away at this enterprise barrier more and more over time.
Your thoughts did convince me of one thing though. For the demographic you are talking about (let’s say enthusiasts who almost universally will want to run some kind of game) I think everything you’ve said is true here. The best way to create the “year of the Linux desktop” for these people is Steam OS. I’d love to see it continue to be enhanced. It’s already annoying to hear that you can’t run the latest version of SteamOS as the Steam Deck does on PC and I hope they fix that quickly.
I can imagine a world though where with enough money and continued exposure to Steam Linux through things like the Steam Deck that this crowd is won over by Linux. It just needs to be good enough to not have to screw around with a whole lot of configuration to bring in this market segment. Ubuntu delivers this experience the best for PC of any Linux distro I’ve seen (including a flatpak-based software center and many of the things you outlined) but Steam OS could outdo them by automatically enabling the latest NVIDIA/ATI proprietary drivers without having to click the proprietary driver box like Ubuntu does and little quality of life things like that to make it “just work” which is all the vast majority of people want it to do (maybe it already does this but I haven’t tried the OS itself yet).
If a lot of streamers start streaming running Steam’s OS a whole bunch of their viewers will switch just seeing them use it (I hate that this is the world we live in that people just follow what their favorite streamers/YouTubers are doing but it largely is especially talking about people who have money for hardware but aren’t really technical experts but still fancy themselves enthusiasts). A lot of this is a mental battle.
It really is pretty close to being ready and it is ready enough for me but indeed I am not an ordinary user. Understand though that it wasn’t that I couldn’t use Linux that was holding me back all this time. I’d been using it for more than 20 years but *never* as my main desktop OS. It just really couldn’t do what I needed it to do for all my life activities until Steam made this compatibility layer essentially which finally solved the last piece.
It needs polish like you said but my goodness, I can actually see it possibly happening for the first time in my entire life. Especially if it is picked up by streamers or becomes hip/cool for gamers to be running Steam OS or another Linux flavor. That’s literally never been even imaginable until Steam Play and some of these other enhancements and they’re just getting warmed up / the Steam deck didn’t launch too long ago. I can actually see a way to get there for the first time. It’s not only not impossible, it might only take the Steam Deck / Steam OS cross-platform tech and a few well placed streamers using it for it to begin!
I think it’s true it’s not there yet for everyone but it’s 100x closer than it’s ever been and is there for more experts/enthusiasts than it’s ever been before as I was never able to make the switch for something like 20 years that I’d been thinking about it until some of these breakthroughs that I’d been waiting literally decades for and thought we were still decades away from until recently. It’s still far from guaranteed but it’s actually realistically possible if everything goes the right way.
Great thoughts and thanks for sharing!