Linux and gaming – just how well does it work?

Linux penguin mascot
Tux, the Linux mascot

With the recent announcement from Valve of the new Steam Deck handheld PC gaming device, it came with a few questions that we likely won’t fully know the answer to until it gets into people’s hands this December.  One of the big ones is just how good will the game compatibility be.  With the device using Valve’s SteamOS, based on the Debian distribution of Linux, we certainly can’t expect every single game out on Steam to just work.  That is before we even look at the performance of the hardware that makes the thing tick.

There isn’t much we can do about judging the hardware beyond the on paper numbers, but we can at least take a look at the software compatibility that Valve’s decision to go with a Linux based system.  So, I decided to give downloading, installing and, most importantly, playing on Linux a go.  Here is the start (and could it be the end?) of my experiences.

It feels like it should really be a rite of passage for any serious PC enthusiast to at least give Linux a go once.  For some reason, the bug has never really bitten me though and I’ve stuck with the safety and comfort of the Microsoft environment.  It wasn’t until the Steam Deck and questions around compatibility did I really consider giving it a whirl.  I like to consider myself fairly proficient with computers, happy to dig around with the internals and play with buried options within registries, but something about the jump over to Linux always felt quite daunting and, most importantly, unnecessary.  As attractive as the “stick it to the man” imagery of the open source operating system is, the moral high-ground never outweighed the potential difficulties and the convenience of just sticking with Windows (see also Amazon).  This is even more true when it comes to gaming. 

Valve making claims that it is easier than ever to do though made me curious to see just how accurate that was.  Let’s see how I get on.

The first decision to make is just which version of Linux was the right one for me.  There are dozens upon dozens of choices available, all filling different requirements.  One of these and the one that the Deck will be using, is SteamOS.  This was the logical choice, given the purpose of trying this out.  However, the first page I found detailing SteamOS was Valve saying that it wasn’t made for casual users.  One of the main reasons behind the creation of SteamOS was to be used with one Valve’s first forays into the world of hardware, Steam Machines.  These were just pre-built systems looking to offer a console like experience for PC users.  The venture was ultimately not very successful, but it was an early attempt by Valve to experiment with hardware and has no doubt led to what they are offering with the Deck in many ways, not just the operating system.

Image taken from Valve's SteamOS page saying "Users should not consider SteamOS as a replacement for their desktop operating system. SteamOS is being designed and optimized for the living room experience."
Valve’s SteamOS page, warning people away.

With Valve’s words of warning, I decided to opt for something that was a little more welcoming from the off.  This is a step that I probably should have taken longer with and I would recommend anyone that is considering giving Linux a try to spend a little more than the 5 minutes I did.  However, I quite quickly found a distribution called Mint that seemed to be tailored for a general user.  This came in three different varieties: Cinnamon – the full fat version, MATE – the slightly slimmed down, more stable version and Xfcce – the most lightweight, barebones version.

I decided to go for Cinnamon, as this is the one that was recommended by the documentation for those who weren’t sure and it would likely give me the closest experience to the type of operating system I was used to.

The official documentation offered for Mint was quite straightforward and it all seemed to be a very simple process.  It looked like anyone that had experience of installing Windows before would have no difficulty in following the process.

First up, was putting the ISO (the bundled together files for the operating system and the equivalent of an installation disc) onto a USB stick (can also be put onto a CD/DVD).  Mint even linked to the right tool to do this, called Etcher.  Simple process of selecting the ISO file, the USB drive to copy it to and off it went, formatting the stick as required.

Then came the big moment.  Leaving the USB stick in its slot and rebooting the computer, in theory, should let me boot straight into Linux Mint.  Things started okay, with the USB stick appearing as a boot option and then the Linux Mint logo appearing on the centre of the screen.  Then I waited… waited some more.  Not much seemed to be happening.  There was a log in the background I could access, but it didn’t seem to say too much.  Rebooting to try again offered the same result.

After reading online a few suggested fixes, not much seemed to help matters.  Fearing that my journey was going to come to a very abrupt end before it had even started, I decided to start from the beginning again, suspecting that maybe the image on the USB was corrupted in some way.  This didn’t help too much, but then I noticed I had actually tried compatibility mode.  The result…

Welcome screen for Linux Mint
A sight I half expected to never see

Bingo!  We were in.  It was only displaying on my TV hooked up to my computer and not my actual monitor, but it was a start.

Now, this wasn’t an actually installed version of the operating system.  This was just running straight off of the USB stick.  The installation is helpfully right there on the desktop for you to open up and begin. 

As is normally the case with these installations, you just need to select the language options, time zones and the like.  Nothing particularly taxing.  Then I reach the actual installation section.  According to the documentation, I should have had an option to install this alongside my existing installation of Windows and the setup would sort everything all out for me.  No option was visible to me.  Instead, I could either erase everything on the drive and start fresh (err… no) or do “something else…”

This is when things started to get a little hairy and I started to wonder if I had bitten off a bit too much.  I’m sure many are used to messing around with hard drive partitioning will be comfortable with all this, but it isn’t something I had any need to do before.  The worry that I would end up wiping my entire Windows install became quite real.

The first step was to reduce the size of part of the drive, freeing up space for me to create enough room for the extra partitions.  After spending quite some time trying to get simple instructions on how to do this, I finally managed to set it off, lowering the space of where Windows was installed by around 60GB.  This then required me to wait for a very long time.  All the while, I was worried that it would finally be done and I would see that it probably had wiped everything. 

Image of the partitioning options during Linux Mint installation
err…. yeah, sure

Fortunately, after about 15 minutes, it came back showing that the space had been reduced and the “used” figure did not change.  I was now able to create the two partitions required for the installation.  One of these is for the operating system itself (around 15GB) and the other bit is for the “swap” partition, which is used for hibernation and in case you run around of RAM.  This should match the amount RAM you have (32GB, in my case).

Now that was done, I was able to start the installation.  This was briefly interrupted by messages complaining about EFI.  It said I could continue, but might encounter problems.  After so much fiddling already, I decided just to go with it.  What is the worst that could happen?

The installation itself was pretty painless and took just a few minutes.  Soon I was ready to reboot and see my gloriously fully installed Linux operating system.

Of course, I am soon faced by the same black screen and Mint logo that I saw the first time I tried booting from the USB.  Even more worrying, the boot options didn’t have Windows as an option.  Was I screwed?  Had I destroyed both my Windows installation and was Mint not working?  It was this stage that I really felt like I just wanted to run back to Phil Spencer asking for forgiveness, beg Panos Panay to welcome me back and take papa Gates’s full embrace.

Cooling my head and taking a step back, I manage to access some more options for launching.  Looking at some of the system status information, I see this:

Taken from the system status screen.  Says "Physical Volumes: not ok (BAD)"
I like the clear messaging here

“not ok (BAD)” would indicate something wasn’t too good.  I run one of the tools here and also using the refresh the boot menu option, before restarting.  First up is the boot menu, which now contains Windows 10 (as well as Windows 7, oddly).  One issue sorted, now I just have to hope that Mint boots.  Well…

Welcome to Linux Mint!

We are in!  I was pretty pleased with the results here.  This was definitely not as simple as doing a Windows install, which is completely plug and play now, and I certainly needed to do quite a bit of fiddling, but it worked.  And on my actual monitor finally too.

As with any new operating system, first port of call is sorting out the drivers.  Mint offers you a nice “getting started” window that will take you through the different steps of getting everything in working order, from the drivers to the look of the system.  However, the drivers presented to me only seemed to pick up graphics card.  This would suffice for the moment so I just went ahead and installed those.

Next up was the main purpose of doing this.  Actually seeing how well games would run.  Unfortunately, Linux uses a different way from Windows to run programs.  .exe files do not exist here and they won’t run.  So, my initial attempts to just run something directly from a drive didn’t get very far at all.  You really need to use something like WINE or use an actual Linux version of a game.  I did briefly try to use PlayOnLinux, but didn’t get very far with this.  I might try looking into this some more and report back later.

Really though, I was here to see how well Steam would cope.  So, I started to download Steam.  The installation and the updating process were all fine and I was soon looking at a big list of my games on Steam.  All greyed out.  Again, because Linux uses a different structure than Windows for its programs, those installations on your Windows drives aren’t going to work.  This means re-downloading the games.  Glancing online, there are some suggestions on how to access the games on your other drives meaning you don’t have to entirely re-download the games and only download the bits that are required for Linux, but my quick tests didn’t work too well.  Again, this is something I will play with some more and hopefully report back on.

Instead, given my desire not to wait hours for downloads and the very limited space I had on my Linux drive, I picked a few lightweight games to give a go.  These were Deus Ex, Doom 2: Hell on Earth, Hotline Miami and Sonic Mania.  I didn’t check anything about these beforehand, whether they have Linux versions or not, as Valve claim they can handle that all for you.  Enter Proton.  Proton is an option you can enable within Steam that will assist with making non-native Linux games run on the open source platform.  Valve have worked with others, predominately, WINE in order to perfect this.  Judging by ProtonDB, which collates user tests to show which games Proton works with and how well, this is reasonably good, unless the game has multiplayer.  This is when it runs afoul of anti-cheat software.  Valve have said they are working to resolve those issues specifically, ahead of the release of the Deck.

Anyway, onto the testing.  I didn’t do anything to extensive with these, mostly just checking whether they would boot and get into the first level okay.  Presumably, if it could do that then the game should function mostly okay throughout, although the odd glitch might be present.  I also didn’t do any frame rate analysis to check performance, but with these older, simply games I don’t think that would be particularly informative.

Deus Ex was first up.  I clicked the play button fully expecting things to go wrong. 

Deus Ex logo
We will be crowned kings, or better than kings: Gods!

Surprisingly, it loaded with absolutely no problem.  I went into the first level and stood on the dock of the Statue of Liberty.  It did look very dark, to the point where it was almost impossible to see anything on the dock.  Checking the game in Windows, it is a dark area although it appeared a little clearer.  Some tweaks to the options might help with this, but my brief adjustments didn’t make much difference.

Moving on, Doom 2: Hell on Earth.  Initially, I was presented with a black screen and not much more.  Hitting enter seemed to clear this though and I was soon presented with the usual “press start” screen.  I was chainsawing imps in no time with absolutely zero problems.

Doom 2 opening level
Chainsaw works just as well in Linux as in Windows

The same happened with Hotline Miami too.  No issues as far as I could see, other than me completely forgetting how to play and dying multiple times to the first few enemies.

The final test was Sonic Mania and I chucked in controller support into the mix.  I use a PS4 controller, connecting through a 8bitdo Bluetooth receiver.  Steam needed an option enabled to detect it as an X360 controller, but once on everything was fine and Sonic was charging around Green Zone just as he would at his “normal” Windows home.

So, 4 for 4 and no real issues encountered, besides the darkness in Deus Ex.  I was genuinely shocked at just how easy it all was, once the operating system was installed.  When it comes the Steam Deck, this has gone some way to alleviating my compatibility concerns. I would like to test this some more to get a better judgement on this, particularly with more modern and complex games.  This might not be possible without re-downloading quite a bit, but I’ll be experimenting some more and will report back.

In terms of my PC usage, I don’t really see myself fully adopting or even partly adopting Linux, just as there isn’t any real benefit for me personally, beyond the rebel image.  That has not stopped me from writing this very article in LibreOffice Writer though. 

As an operating system for the Steam Deck, it is looking like I’m not going to have any complaints.


3 thoughts on “Linux and gaming – just how well does it work?

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s