Introduction: Proton is Great, but...
Ever since Valve launched Steam Play Proton back in August 2018, it is undeniable that it enhanced the Linux gaming experience to a substantial degree. By simply enabling Proton for all games in the Steam settings, you can play Windows-only games on Linux with a single click. As Valve updated Proton, more and more Windows-only games could be played. Heck, some in the FOSS community took it a step further and made their own flavor of Proton like Glorious Eggroll to add in more fixes.
Now that the Steam Deck is set to arrive near the end of this year, Valve is encouraging developers to target Proton. On the website, it even says that there's not need to port over to a native Linux version and provides some advice on the FAQ on the ideal setup such as using the Vulkan API or not using Media Foundation:
On the surface, all of this sounds great. Developers do not have to spend so much time and resources to get their games running on Linux. If all they need to do is to make some minor tweaks so that their games play nice with Proton, then that will make Linux a less scary environment. On the consumer side, that means more games are playable on Linux.
However, there's always a catch. A tradeoff. What will happen to native Linux support? Will Proton boost it or hurt it in the long run? The Proton vs. native Linux debate has been around ever since Proton began. However, due to the recent developments surrounding the Steam Deck, it was especially put to the forefront with Nuclear Monster's recent interviews with Ryan Gordan and Ethan Lee.
A Tale of Two Interviews
Ryan Gordan and Ethan Lee are developers who port games to Linux. In their interviews with Nuclear Monster regarding Valve seemingly encouraging developers to target Proton, they had polar opposite opinions.
Gordan had a more positive, optimistic outlook. He posited that it's no longer just how many people use desktop Linux and more so about the sales numbers of Steam Deck. His reasoning was that if it sells extremely well, then it would be a "no brainer" to target an insignificant Linux userbase and emphasizes the importance of convenience to the point that people don't even realize that they are using Linux.
As he addressed the Proton vs. native Linux debate more directly, he suggested that there's nothing stopping developers from wanting to make a native Linux version of their games. If developers want to eke out some more performance, then a native Linux version is an option:
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.
Ethan Lee, on the other hand, had an extremely pessimistic outlook. Just to be clear, Lee is not anti-Proton. In his interview, he considers WINE and Proton as an "essential preservation project". On Twitter, he expressed concern over Valve directly approaching developers to encourage them to target Proton over making native Linux versions:
He further elaborated with Nuclear Monster that the way Valve has been communicating with developers is very one-sided and how this may have a lot of unintended consequences:
The one that seemed to get mixed in with this is, from what my partners have told me, is an e-mail sent to those requesting kits that, much like the developer documentation, prominently features Proton and makes no mention of why you want to care about native. This is probably a case of just not thinking about the wording and the communication, or worse, not thinking about the consequences of obscuring the information until it’s too late.
One of those consequences may entail Lee needing to find other things to do for a living. As his livelihood revolves around making Linux ports, there will be no more need for his services if all the developers just want to target Proton. Lee lamented that his work on Proton may be akin to building his own casket while Valve shovels dirt onto him, saying “don’t worry, you’ll be fine when someone else finds you!”.
When Lee was asked about how Valve could repair the situation with people who handle Linux ports, he listed two things that he also had already communicated to Valve:
1. The developer docs absolutely need to include native somewhere. If your plan is to migrate to native you can’t hide this stuff forever, if you try it’s going to feel like a bait-and-switch and developers will just walk away the second you start to ask for the investment that you repeatedly insisted was not necessary to begin with.
2. If you’re going to intentionally tank businesses who work on native, the least you could do is subsidize work on stuff that native specifically cares about. I and every other specialist could name a million things that would fit this bill, just in the last week the FNA team has been talking about Wayland support, which includes drafting numerous new EGL extensions and Wayland protocols, and other things like Linux high-resolution timer precision, which we’ve discovered is actually a big pain in the ass to track vs. Windows where you can just set the timer resolution and know that your sleeps will be at a certain level of precision. These are tough problems that need people looking at them, and native cares about this stuff! Instead the money’s just getting dumped into crap like the Synchronization Primitive of the Month that basically nobody making production-quality software can ship.
Closing Thoughts: A Little Bit of Column A and A Little Bit of Column B
After Nuclear Monster published both interviews, it sparked a lot of debate amongst the Linux gaming community such as in GamingOnLinux and the discussions are quite nuanced. While Gordan and Lee have opposite feelings regarding Valve's approach to Steam Deck, most in the community agree that both of their arguments have credence.
The debate surrounding native Linux support is a "chicken and the egg" catch-22 situation: "There's no native Linux games because the userbase is too small, but the userbase is small because there are too few native Linux games". In 2015, Valve attempted to boost the Linux userbase with its Steam Machines initiative. However, this brute force solution fell on its face for a multitude of reasons. The hardware costed significantly more than the PlayStation 4 and Xbox One at the time, some of the Steam Machines were not "plug-and-play" as they lacked RAM or storage, and most importantly, the native Linux Steam library was too miniscule.
The Steam Machines were a flop.
Another issue is that some native Linux versions of games either run poorly or lack features their Windows counterparts had. For instance, the Linux version of Borderlands 2 runs just fine, but you cannot do crossplay with the Windows version as they are not in-sync. You can, however, play the Windows version of Borderlands 2 via Proton and play online that way. In other words, just because a game has a native Linux version, it does not necessarily mean the port was done particularly well or to completion.
This is why Valve decided to take a more methodical approach by testing and improving Proton over 3 years before launching hardware again. It does not want to experience another flop. By making Proton very convenient to developers and "guaranteeing" playability on Linux, the Steam Deck will avoid the Steam Machines' "no games" problem.
On the other hand, I do understand where Ethan Lee is coming from. In his interview, he mentioned that Valve has been contacting developers who have had a history of making Linux ports. I feel that Lee is getting unjustifiably buried as those developers are likely not the culprits behind the bad or outdated Linux ports. For instance, Feral Interactive's Linux port of Shadow of Mordor runs really well under the Vulkan API and performs a bit better than the Windows version, so I would hate for that sort of work to just stop:
As a result, I think Valve should only really worry about the developers who have a history of either making bad Linux ports or never dabbling in Linux in the first place. That's where the true audience is for Proton.
Ultimately, Gordan and Lee both make cromulent points and neither one are wrong. In my perspective, I see Proton as a sort of bitter medicine. It will taste bad at first, but the body will benefit long term. Likewise, I expect native Linux support to take a hit initially as many developers will likely prioritize convenience. However, if the Steam Deck is very successful and more PC gaming hardware companies want to get their share of the pie with their own SteamOS handhelds (which Valve hopes for, by the way), then native Linux versions will more likely happen courtesy of a larger userbase.