why doesnt valve demand devs make linux builds? if microsoft changed their apis wouldnt new games just not work on proton?
Valve is solving the chicken-and-egg problem. For a developer, it is costly to maintain a separate build for Linux without the consumer base to justify the effort. And without games, most people will not leave windows.
Proton offers Valve independence from windows without effort and cost for the developers. And without penalties for the gamers as well.
Think of it as the gaming subsystem for Linux.
I don’t understand the logic. Why would Proton make Linux dependent on Windows binaries? It does not make Linux dependent, but enables to use them. I don’t see any reason why Valve should demand devs to build Linux builds (plus Valve should not demand it, it should be a decision of the developers, Valve should not have that much power in my opinion).
if microsoft changed their apis wouldnt new games just not work on proton?
The same would happen with changes in Linux. And arguably it is worse on Linux. Windows binaries have a higher chance of working through WINE or Proton, than Linux binaries in the future. Plus developers only need one binary build, instead developing for Linux and Windows. Also if Microsoft changes their API, then only games affected using the new API would be affected. And changes and additions happen all the time and the Proton / WINE devs are working all the time too.
And “Windows” games run better in Linux/Proton. It’s more like a re-implementation of a feature set, right? Like, I could see devs targeting Proton as the primary target sometime in the future. That’s kinda how some multiplatform systems work already, going all the way back (at least) to “Java apps” in the 90s. (I can’t think of any older examples off the dome, but I only got into coding in a big way in the 00s, so I’m not confident.)
No, because proton is not Windows. Wine only works on Linux, so it’s actually a Linux platform. I consider every developer/publisher who targets proton to actually be targeting Linux, rather than windows. Every single time a windows update breaks something that continues to work on proton I laugh
See also: https://steamcommunity.com/app/221410/discussions/8/1734336452576620754/?l=czech
I really don’t understand the reasoning. Obviously wine works only on Linux, it converts Windows calls to Linux… And there are Windows devs targeting proton compatibility specifically?! In my opinion proton could somehow helps devs realizing that there could be a Linux market but that doesn’t go further than that.
And there are Windows devs targeting proton compatibility specifically?!
A lot of them aim for Steam Deck, so maybe not explicitly, but yeah.
Interesting, do you have any devs communication about it?
Laughs in JVM (but there’s like 1 game using it so…)
Minecraft?
Mindustry (open source)
More like proton makes windows binaries not dependent on windows.
Linux builds suck, they’re less well maintained than the Windows build. If Valve gave me the option to use Proton by default even when there is a native Linux build, I would enable that in a heartbeat.
I’m genuinely wondering if there is any specific game where you noticed that the Linux version was worse than the Windows version on Proton, and how you verified that the Windows version wasn’t just as bad.
I’ve just heard tales. If a game doesn’t work on Linux I just put it at the bottom of my backlog and hope it’s eventually fixed.
Baldur’s Gate 3 apparently had a Linux build that didn’t work well on anything but the Steam deck, and Left 4 Dead 2 apparently has a terrible Linux port.
L4D2’s port was great when I played it, and Valve even made a big triumphant blog post with all the benchmarks proving it worked better than the Windows binary. Maybe your confusing it with Dying Light? That native port was so incredibly trash that everyone forced Proton on to avoid it.
I think there already is an option to enable proton for all titles instead of doing it for every one separately.
There is but it only applies to games without Linux versions. The default behavior is to install the Linux version and, if it doesn’t exist, install the Windows version and use Proton.
In order to install the Windows version you have to check the ‘Force the use of a specific Steam Play compatibility tool’ for that specific game and click the update button to download the Windows version.
Yeah, thats kinda been my experience too. Any time a game has a linux build on steam I swear its a 50/50 if it’ll even run. I almost always end up switching to proton.
why doesnt valve demand devs make linux builds?
Because nobody would do that. Valve is not PlayStation, Xbox or Nintendo. Every publisher would rather release games elsewhere than spend resources on Linux builds.
Plus, most Linux builds are terrible and Proton works much better. To make this happen, first of all you’d need Unreal to die and for most bottom game developers to either lose their jobs or to learn actual game development.
Coming from the indie dev scene a while back, as an indie dev, you are typically burning every single hour in your day making a game, begging for money to get the game to market, pitching your game to publishers, or screaming into the void that is social media in hopes anyone will click your link. You simply do not have time or effort to spare. It’s a hugely saturated market and the currency is public attention.
So, you tend to cast the widest net possible in hopes you get some kind of traction, which means marketing to Windows users. I’m sure plenty of devs would vastly prefer to be on and build for Linux, but the fact of the matter is the marketshare is smaller and Proton exists.
most Linux builds are terrible
wrong.
4/5 Linux builds I’ve used on steam run significantly worse than the windows build through proton or just crash.
ok buddy sure native applications are harder to run than ones through a shim.
And yet for games they are.
It’s not harder to run, but the devs ime give it less attention and testing before release. Also undeclared required libraries are super common so the game just doesn’t start until you check the logs to find out what it’s missing.
I’d love to see more Linux builds, but only if they’re actually something the dev cares about rather than just ticking all the checkboxes in their game engine’s export menu and saying “fuck it we ball”
And old ones wouldn’t work on windows…
Honestly I feel like it’s better for Devs to have a single endpoint of optimisation, and the proton translates that into proper Linux optimisation.
Most of the times a game has a Linux client I need to manually activate compatibility because it’s either not that well supported or the proton version just works better.
At this point, I prefer for Devs to optimise the windows game for proton than to make a Linux version.
It’s interesting to read you guys discussing proton. I’m getting ready for an epic Cities Skylines build, potentially the most advanced and detailed I’ve ever built. I was previously playing on Windows, but cutting it down to “gaming only” doesn’t accurately reflect how much I hate Windows. I need to eliminate it entirely.
I’ve been trying to decide if I should use the proton version or the native Linux version of Cities Skylines as both exist. This thread makes me think Proton will likely result in the most playable game. I’ve used both native and proton in the past.
That said, while most mods will work on either, there are a few that launch as separate programs and would have to be run under wine. If I launch coolmod.exe by clicking an in-game menu would it try to run it with proton like game itselfor would it just default to my OSs standard behavior (probably opening wine)?
If you launch it via doubleclick it will probably go via wine. Idk how I did it but the way I have configured whenever I click an exe, protontricks loads up and asks me to pick an environment for a game. This way if you pick the env assigned to cities skylines, in theory it should use the same isolated “windows files”, which should help with mods I guess.
It launches from a submenu in the game, but the exe comes from steam workshop and I think it sots in the game folder. Interesting stuff and I’m excited at all the love Linux is getting from gamers this year
I love it when the Linux clients don’t support the windows clients saves.
Civ 6 is the worst for this. IIRC for a while you couldn’t do multiplayer between native Linux and Windows
Proton is filling a role until Linux gets popular enough. Once there is enough demand for Linux, devs will start making games with Linux support in mind meaning more well compiled native games. While proton is very good it’s far from perfect and devs will want people to have the most seamless experience possible with their game.
I don’t think that will happen. I think windows and Wine support will be the target platform, not native binaries for Linux
Even if that is the way they chose, if it means games are compatible I dont see an issue.
But I don’t think they will, ultimately if games are properly compiled esspecially for linux they will be better than wine, and of course game devs want there game to run as fast as possible.
They tried making devs port their games to linux, but most of them didnt bother as the userbase of steamOS was very small, and the userbase did not grow because the game catalogue was very small.
why doesnt valve demand devs make linux builds?
You mean games aren’t listed on Steam unless a Linux build is provided? I know Steam has a de-facto monopoly on PC gaming, but I’m afraid studios would just quit the PC market (or move to another PC store) if Valve were to enforce such a rule.
if microsoft changed their apis wouldnt new games just not work on proton?
It’s very unlikely Microsoft would introduce such breaking changes in their APIs. And even if they did, well yes, it would until Proton maintainers add support for these new APIs.
if microsoft changed their apis wouldnt new games just not work on proton?
Also, this is antithetical to the purpose of Windows when it comes to backwards compatibility. Remember that one of its main selling points is the ability to run old programs, regardless of what version it originally targeted.
Believe it or not, the industry would probably start a riot if ms breaks that paradigm. It’s like, one of the main reasons that it has the market-share that it does.
Exactly. Thanks for pointing that out, I lacked the time to mention it in my answer.
I haven’t kept up with wine development in many years, but they used to have (and might still) winelib, which allowed you to compile a window app against it to create a native linux binary.
Here’s the thing. You can’t demand developers to anything. Many CEOs have tried, all of them failed. As the owners of the market they’re providing, the best thing they should be doing is make it as easy as possible for devs to do whatever they want on their platform. Proton is exactly that.
Linux ABI compatibility is a fuck.
Valve archives an acceptable level of Linux game compatibility by shipping ancient Ubuntu libraries.
Honestly Proton is the better option.
if microsoft changed their apis wouldnt new games just not work om proton?
If game developers make use of the new API and wine or proton doesn’t add support for the new API. Sure. It happens it’s not a big problem just an ongoing effort.
It won’t break all existing games just new builds that use the newest APIs that aren’t supported.
I think the bigger risk is Microsoft harassing wine or proton developers. Perhaps similar to the oracle google lawsuit about the use of the Java API in the android SDK.
Linux ABI compatibility is a fuck.
I’m never convinced by this argument. If game developers have problems with ABI they can do what they’re already doing on Windows: ship their game with all the dependencies. Casual gamer’s Windows system might have more versions of Microsoft Visual C++ Redistributable than they have games installed. This had been my experience.
With gl/Vulcan and some other libraries that’s pretty challenging to do if your goal is to become more portable not less portable.
Shipping also sort of different libraries with your proprietary game could also be a licensing issue.
With gl/Vulcan and some other libraries that’s pretty challenging to do if your goal is to become more portable not less portable.
I still don’t see how this is different from Windows. Games on Windows ship with DirectX. Ship whatever graphics libraries you need if you’re worried about ABI breaking.
Shipping also sort of different libraries with your proprietary game could also be a licensing issue.
No, it’s not. Any library you’re dynamically linking to that’s present in a Linux distribution, you can distribute yourself.
I guess there is also the MSIX installer format which doesn’t work with wine which can be a problem occasionally.












