Native Linux Games vs Windows API Compatibility Layers on the Steam Deck

I spoke with Ryan C. Gordon, a renowned Linux developer for the past 22 years, today over a text chat to get his thoughts on the Steam Deck and native Linux ports in the light of Valve’s call for developers not to port games to Linux and instead rely on their Proton fork of WINE and other tools.

I’ve been writing with skepticism on the subject of Windows API compatibility layers for about 19 of those years. Originally I wrote about WINE and it’s successors on the precursor to this site, and then professionally for

Gordon is also a personal friend, and we’ve worked together on open-source projects like ioquake3 so take that as a caveat though our views differ strongly on the outcomes of Windows API compatibility layers in terms of how they help or hurt Linux as a desktop operating system.

The new handheld Steam Deck computer runs Valve’s SteamOS 3.0 when it ships later this year, and is backordered already into 2022. Rumored reservation figures for the first hours of the Steam Deck’s sales are a little above 100,000, not including numbers for the cheapest 64GB model, but that’s before users are asked for more than the refundable $5 and before a wider swath of new users had access to pre-order the device yesterday. Please note that Gordon had not seen these rumored sales figures when we had this conversation.

Here’s Gordon’s response to my question about the situation with Valve asking developers not to port games to Linux, names and my follow-up questions are in bold. The italic emphasis are Gordon’s except for where I’ve italicized product names.

Ryan Gordon: I get why Valve did this; their biggest strength is the massive Steam catalog and millions of users that have accumulated a big personal library, so it would be silly to launch a device that can’t access it.

But this can be a positive thing.

We are no longer talking about people running Linux as their primary desktop to compete here. We are no longer talking about how many people found a machine to install SteamOS on.

We’re now talking about concrete sales numbers for a game console.

And maybe someday down the road, if this is wildly successful, we tell people that it’s a no-brainer to target 18 bazillion Linux users that aren’t Linux users so much as customers reliably running a Linux-based game console. The end result for you and me—clicking “install” in our desktop Steam client—is the same, even if it took millions of unaware and uninterested other people to get us there.

In that sense, it’s a better outcome than Nintendo building their next thing on Linux but requiring you to play on a Switch 2, or whatever.

Not to mention the thing encourages side loading. You want your games on the hardware. Easy. You want to emulate other consoles? Cool. You want to plug in a keyboard and write a Linux game? Do it! A wildly-popular Steam Deck opens up more Linux gaming options even if everything Valve supplies runs on Proton.

Even in the short term, one can always make the argument: okay, sure, your Windows game runs here, but you want more performance, more control, and no worries that Proton didn’t quite paper over some Windows thing weirdly? Then stop letting Valve treat your game like some RetroPie target and do a real Linux port. That choice is available to you now, almost six months before anyone will hold a Steam Deck.

I don’t know what the future holds, but this is the time to hustle more at this potential opportunity, not have a funeral for Linux gaming.

Jack Slater: I feel like we had this enthusiasm before for console-like Steam Machines and our hopes were dashed but we don’t know exactly what the failure was there. OEMs got burned in the end, and Valve has completely given up on those Debian-based foundations of SteamOS and moved to Arch Linux. Their game library is portable by Proton and even native games are unlikely to need any help to run on the new SteamOS 3.0 (excepting any new features both Valve and the developers want to support save syncing is one example here) so the move doesn’t really seem to affect game developers. Do you believe that we won’t see a repeat of Valve’s failures here with the Steam Machines and the other now discontinued hardware products (Controller, Link…)?

Gordon: These are good questions that I don’t know the answer to.

The optimistic view is that obviously Valve couldn’t wave a magic wand and make everyone ship Linux games no matter how much we wanted it to work that way, but it’s possible we look back at this history and see they chipped away at the resistance to the market over time.

First the Steam client, then SteamOS and Steam Machines, then the Steam Deck, over time it just might become an inevitability.

But also maybe not. I really don’t know.

That was the end of our discussion about the situation for now.

I am personally still very disturbed by the idea of Proton keeping Linux as a weird layer in a chain that doesn’t really matter to the end user at all. It’s not as bad to me as Streaming platforms like Stadia that “run Linux” but the end-user would never know. The Steam Deck at least lets users access the Linux desktop and do what they want at that point.

To be fair, I’m not sure most people playing games on Windows care about Windows except to get annoyed when something changes or breaks. More and more work for fun or for pay is also being done on mobile devices. There are people who do all of that on an iPad and then only use a computer running Windows to play games and I’m not sure they would care very much if the operating system underneath were running Linux except if it caused them any hassle. Clearly I’m in the same camp, at the end of the day. As I’m another person who put down $5 on a Steam Deck even though the entire process of gaming on it will involve the Windows layer I think ruins Linux. I pre-ordered because it does something I want in playing these games portably, the device is also perfect for emulating older game consoles and cheaper than its competitors (The Ava Neo, One XPlayer, GPD Win, etc).

Gordon’s pitch here is that there still will be a use for native Linux games, and that is also his work. Gordon is typically contracted by game developers and publishers and platforms to port games to Linux. Gordon’s resume most likely has the most years in porting games to Linux and now he also runs a successful Patreon crowdfunding campaign.

Can Every Game Run on the Steam Deck?

Reader Sketch has pointed to this developer-focused video where Valve says “Our goal is for every game to work by the time we ship Steam Deck.” I think that’s a great goal, but I am also vehemently against the “compatibility layer” emulation solution because it devalues the Linux platform.

People who play games don’t care or need to care about the distinction between native and emulated platforms until they run into the limitations of emulation and that’s OK. I just do not expect Valve to be able to emulate “every game” as well as playing it natively. To be fair, they only said that their goal is for the games “…to work” which isn’t a guarantee of perfection.

Valve has also said they’re talking with anti-cheat developers to get multiplayer games like Destiny 2 and PUBG working with their emulation layer:

For Deck, we’re vastly improving Proton’s game compatibility and support for anti-cheat solutions by working directly with the vendors.

My old colleague from Atomic Gamer, Foffers. has written up his impressions of the Steam Deck announcement and is also concerned about the compatibility:

But this also means that if you want to use any Windows-based tools to assist with your games – like Wabbajack, for example, to install a Skyrim modlist – that’s out of the question as well, and this is not to mention any games running outside of Steam. So Overwatch over in the launcher? A game that has some timed exclusivity on Epic Games Store? Something classic from GOG? None of that is happening on the Steam Deck, not how it’s currently set up. Yes, you can link those games to launch from Steam over on a Windows-based Steam install, but that won’t be happening on the Steam Deck unless Valve partners with those companies to work with Proton via a new solution.

Foffers has a lot of experience with other handheld computers, like the GPD Win series and the One XPlayer. I highly recommend reading his impressions of the Steam Deck.

For what it’s worth, I put in a $5 deposit on the Steam Deck. It should be perfect for what I want to use it for, but I am very disappointed that Valve seems to have given up on porting games to Linux. They seemed very serious about it 7 years ago at Steam Dev Days when they gave out a free development box

Digital Foundry’s Perspective on the Steam Deck’s Performance

Richard Leadbetter at Digital Foundry has put together his thoughts on the Steam Deck‘s performance, and compares it to the Xbox Series S, the lower performance version of the new generation of Xbox consoles:

But really, the most interesting elements of Steam Deck are the semi-custom AMD processor and the background operating system – and we’ll start with the first. Valve, via IGN, describes the chip as being next-gen in nature using the latest architectures – which is true, but only if we consider the consoles as the defining factor of what a generation actually is. You can effectively consider Steam Deck’s chip as being most similar in nature to Xbox Series S, with significant reductions in all dimensions. The eight-core, 16-thread AMD Zen 2 chip is cut down by half, while the fixed 3.6GHz clock adjusts to a variable 2.4GHz to 3.5GHz. Series S’s 20 RDNA 2 compute units drop down to just eight and again, a fixed clock on the Microsoft machine (1565MHz) shifts to a variable 1.0GHz to 1.6GHz on Steam Deck, meaning a range of 1TF to 1.6TF of GPU compute against the locked 4TF on Series S. Bearing in mind that we’ve measured Series S as drawing up to 82.5W of power, we need to keep expectations in check about the performance of Steam Deck.

Nintendo Switch (OLED Model) Due in October

The Nintendo Switch has been rumored to receive a major internal processing power upgrade for months, and instead, Nintendo announced a new version of the Switch earlier this month with minor changes.

The Nintendo Switch (OLED Model), that’s Nintendo’s official name for the device, has a 7 inch OLED display (the original Switch‘s display was 6.2 inches), a built-in ethernet adapter replacing one of the USB ports, and more internal storage for $50 more than the regular retail price, making the (OLED Model) $350 when it ships on October 8th with Black and White color options.

The Nintendo Switch is four years old and it is showing its age. I know the hardware can be difficult to come by, and pre-orders for the new Nintendo Switch (OLED model) sold out almost instantly online through Gamestop today which might prove Nintendo right that they didn’t need to make the internals more powerful just yet.

I’m not really interested in the (OLED Model) for myself, but I can see why someone might want one if they mainly play handheld or if this is their first Nintendo Switch.

The regular Nintendo Switch is sticking around at $300 as is the Nintendo Switch Lite at $200.

Valve Announces Their Linux-Running Windows-Emulating Handheld “Steam Deck”

It won’t be available in New Zealand?!

Calling it “The most gaming power you have ever held” Valve announced their Steam Deck handheld gaming computer today. The pricing starts at $400 and it ships this December to the US, UK, and EU according to the company. Order reservations start Friday, July 16th at 10AM Pacific time and are $5 to get a spot in line with the remainder due when your order comes up.

Valve is restricting sales in the first 48 hours to people with Steam accounts older than June 2021 that have made a purchase on Steam. They say the reservation system is to let them make the ordering process fair, but they also won’t let Steam users order more than one device or switch which tier of system they’re ordering. The only changes allowed will be cancellations which are refunded to a Steam wallet if the refund is 30 days after the reservation is made.

The basic model of Steam Deck has a paltry 64GB of eMMC storage. Another model is $530 and includes 256GB of faster NVMe SSD PCIe third generation x4 storage. The highest end version is $650 and has a 512GB NVMe SSD and “Premium anti-glare etched glass”. Typical NVMe SSDs run about $100 per terabyte so it seems a little expensive for these upgrades. There is also a microSD card slot for expanding the storage on the system.

All models have a 4 core AMD Zen 2 APU that supports up to 8 threads and 16GB of DDR5 RAM.

The display is an LCD, not an OLED, and it uses a 16:10 aspect ratio, has a resolution of 1280×800, and a fixed 60hz refresh rate. No variable rate. It’s a 7” touch screen, measured diagonally. We won’t know the full quality of the display until reviewers who are more technical get their hands on it.

The controls on the device include a traditional dual-stick layout and two square trackpads with haptic feedback that Valve claims have 55% better latency than their discontinued Steam Controller.

The Steam Deck will also have a dock available in the future from Valve with more ports, and third-party docks may work out of the box. The USB-C port supports external display resolutions up to 8K at 60hz or 4K at 120Hz. The same USB-C port allows for charging the internal 40Whr battery at 45 watts using power delivery 3.0. Valve says the device will have anywhere between 2 and 8 hours of battery life.

Unlike the Nintendo Switch, Valve’s Steam Deck supports Bluetooth audio. There is also a traditional 3.5mm stereo headphone jack and stereo speakers.

The Steam Deck is running what Valve calls SteamOS 3.0, in a change from earlier versions that used a version of Debian, Valve’s new Linux operating system is using Arch Linux as a base. Arch Linux uses the pacman package manager instead of Debian’s apt system. Valve also notes that you can install any operating system including Windows on the device.

Valve appears to have completely given up on native Linux gaming, their developer FAQ for the Steam Deck includes this question and answer:

Do I need to port my game to Linux to have it work on Steam Deck?

No porting necessary. Your Windows build will likely work right out of the box, thanks to Proton.

Proton is Valve’s fork of the open-source WINE Windows API emulator. Proton is focused on game compatibility.

Comparable devices that use similar hardware to the Steam Deck like the Aya Neo and One XPlayer cost closer to a thousand US dollars and come from brands people do not recognize. None of these devices will run the highest end games very well, especially not when outputting video to an external screen, but they are all more powerful than systems like the Nintendo Switch.

I’d expect the performance on the Steam Deck to still be good enough for the majority of the games on Steam, the 1280×800 resolution is a little larger than 720p and not that difficult a target to hit, but the Steam Deck should be extremely capable of streaming games from a more powerful local computer (there’s no cellular hardware).

Competing stores for computers could run on the Steam Deck, but Epic’s Game store doesn’t run on Linux for example, that one is only available on Windows and macOS. The only other store that I know of that runs on Linux is the Itch store. Software like the PlayStation 4 & 5 Remote Play, that lets users stream games from their consoles to computers and mobile devices, also does not support Linux.

One thing that should run exceptionally well on the Steam Deck is emulators. They should be absolutely terrific on the device, and I hope that emulator authors are able to get onto the platform easily.