Now, they're trying to stop being tied to x86.
ARM64 is being tested because hardware is already widely deployed, but not being tied to x86 is the important part. Enabling e.g. RISC-V as well.
Now, they're trying to stop being tied to x86.
ARM64 is being tested because hardware is already widely deployed, but not being tied to x86 is the important part. Enabling e.g. RISC-V as well.
They are only working really hard not to pay for Windows OS licences.
The day they actually support native Linux games, instead of doing Windows API translation is when I believe they are actually serious about Linux games, and not saving OS licenses.
It's not about saving the cost of a license, it's about guaranteeing their own survival.
As for "supporting native games," I take that to mean "sufficiently incentivize game devs to port their games to Linux." How would that work, or did you have something else in mind?
It would work by placing carrots and whips in place for anyone that wants to target their shop, just like console vendors do.
But what they got in return is a much more usable gaming operating system that doesn't constantly pester you about switching to Edge, using Copilot or draining all your battery for an update while you game
What they got in return is freedom from Microsoft's arbitrary OEM hardware requirements like having a front camera for Windows Hello, or having a TPM
What they got in return ultimately is leverage. As sibling comment mentioned, they were in fear that they could be kicked off of Windows by Microsoft. Now, Microsoft is the one in fear that if they ever kick Steam off, gamers now have a perfectly functioning alternative operating system to switch to.
So far. Depending on Microsoft's continued benevolence is probably not a great business strategy when you're as big as Valve. You don't want to be caught with your pants down when MS wants their pound of flesh from your $8 billion company.
The simple reality is that there are decades worth of Windows games that will never have a Linux version. Because of the studios being gone. Because of the source code being lost. Because of the licensing issues for dependencies, assets, music. If not for the Valve efforts people would always need a copy of Windows to play a good chunk of their libraries. At which point why bother with Linux? But with Proton the calculus changes. Most of those Windows-only games are now fully playable on Linux. Many people no longer need Windows and that's a huge win for desktop Linux adoption.
By this logic Apple should not have developed x86 translation for its latest Macs because it showed they are not serious about the platform and disincentivized devs from providing native Arm ports. Except we know that's not what happened.
However I really do not think Valve is in a position to dictate such terms. They have multiple competitors both in distribution and console space. Big names are already publishing on their own stores. Small indies can move to itch.io. Everyone else can switch to Epic. Steam Deck is already underpowered compared to recent Windows based handhelds. If it stops supporting Windows games via Proton then it is as good as dead.
I understand your idealism. But a step like this would kill gaming on Linux much quicker than anything Microsoft could do. Because Valve is the only big distributor even remotely interested in it. In contrast Epic is absolutely hostile to Linux. And they're the ones to gain the most users in case Steam fails.
Sure, but they don't want to be dependent on Windows itself. If they can run all those Windows games on another OS, that's a win. Proton is pretty amazing, even if it's not 100%.
And if game devs for some cataclysmic reason abandon Windows, they'll figure that out too.
Proton has caused a significant increase in Linux playable games. The side effect is that it effectively killed porting companies.
edit: also all porting companies were effectively using their proprietary equivalent of proton (although often inferior) .
(the Win32 and DX APIs are also much more straightforward to use than wrestling directly with X11, Wayland, Vulkan and the Linux audio API flavour of the month)
On Windows, good luck with running DirectX 6, 7, 8, and some DX9 and Direct Draw games under Windows > 8 without issues.
Direct Draw games will lag even under an i5.
Soon Wine will have Wayland support and 99% of those ports that no one is willing to update will remain stuck on X11.
A Proton like layer would also totally make sense on Windows, assuming that support for older Windows APIs is better in Proton than on Windows itself (which isn't a far fetched assumption).
As for the missing libraries, if you can fetch some old Debian DVD images (just the first DVD) it will run fine.
But, by default, you'll get a slideshow in a game that would run screamly fast under a Pentium 3 and a Windows release from its era.
it is not full Proton, but DXVK is used on Windows as it has sometimes better compatibility and/or performance for older titles.
Until there is a Linus figure that coordinates the userspace and organises a common platform API with long term support for closed-source software, Proton is the only pragmatic choice.
Valve want to get off Windows ASAP, not necessarily waste money chasing windmills driven by silly ideology that native is better.
I love Linux, I have used it for 25 years, and even I accept that native games run WORSE than their Proton counterpart.
systemd, GNOME, mesa etc all have developers who are being paid by companies for their work (Red Hat, Microsoft, Canonical, SUSE etc). That said, you're not wrong on the 'no overarching vision' part, see Wayland.
> Linus figure that coordinates the userspace and organises a common platform API
Flatpak with the freedesktop runtimes are just this, that said some companies (e.g. Canonical) are trying to sabotage these efforts and Ubuntu not shipping with Flatpak is the biggest hurdle.
What we need is something that groups Qt/GTK, pipewire, part of systemd, part of flatpak, part of Wayland into a single library, a bit like Win32 is. And the guarantee that it remains stable even for closed source projects. For example Linux is free to change its internals and requires everything to be open, so drivers can be adapted whenever the APIs change. This is not good enough for a desktop API.
The collective time spent on developing proton is probably less than a dozen high profile Linux ports.
The latest commit to proton 9.0 is three weeks ago. The latest commit to an experimental branch is 3 days ago and it is just an update of a wine version and no other commits. A lot of proton commits just update a version here and there.
The focus is certainly not on proton. It is simply very cheap to work on it, because it is highly effective. The steam deck probably cost them more software and hardware developer hours than proton.
Wine's version of the Windows API isn't conceptually different from any other cross-platform technology here. You could make a similar purity argument against using the Unity engine since most of its games end up being primarily on Windows too.
Aside from that there is a huge catalog of games using DX 9-12 and other windows-specific APIs that is just never going to get ported and that even valve would never be able to get source code for. Most of that source code is essentially unobtainable and in some cases has passed through multiple IP holders such that whoever owns it now (most likely a big company like EA or microsoft) doesn't even know what they have, let alone how to build it or even where the archives are.
An additional fact is that nowadays many older games have communities that have modded them unofficially by resorting to DLL injection and other hacks - these hacks can work under proton with the windows executable, but would fail on with a native linux binary. An example is oblivion script extender and its many cousins for that family of bethesda games. Many of the more advanced mods for those games require the capabilities of those low level hacks.
Even as someone who tries to predominantly buy games with a native Linux version, it's not something I really want. If I have some desire to play a game from 2008 again, I'm glad Steam will still offer me the Windows version.
If anything, due to Wine, Proton etc. “Windows API” is almost a pseudo opensource way of developing cross-platform content. There are significant downsides but on the bright-side it’s extremely stable considering to most stuff on Linux.
Is Proton in some way inferior to native?
Frankly when the SteamDeck launched I hoped that game developers will start treating it as they do any other console and build specifically for it, but sadly Proton prevented that from happening.
Also, I never argued against Proton having been a boon for Linux gamers, but I tried to present an opposing point of view that usually does not get taken into account.
Like I mentioned in the other comment my impression over the past 3-4 years is that the number of native linux ports has dwindled to nothing and that is most likely due to Proton making them unnecessary.
Without Proton the steam deck would not be popular enough to warrant any Linux ports either way. So Linux ports would be doomed regardless.
The real travesty is steam, with the recent introduction of WoW64 in Wine, is now the only software that requires me to run 32bit binaries on my desktop. Real annoying.
Is your argument specifically about the game developer's mental model for Linux's priority, or something core about the Proton abstraction layer?
All software runs on some abstraction. So specifically, if the game developer prioritized a Linux port by explicitly testing Proton, would that be enough for you to consider the game "developed for Linux"?
Regarding games, that is a binary that targets the ubuntu based Steam Linux Runtime. That's what I meant when I said that devs should be able to target it as a regular console SDK.
To quote from down the conversation:
> @flibitijibibo (Jul 16, 2021): Don't look at me - I'm just trying to figure out how much time I have left, either way it's pretty clearly finite
Also some anecdata from someone that pretty much bought all native linux releases from Steam since the linux version was released: in the past 2-3 years there were barely any new ones, outside of Valve's own titles maybe.
> The day they actually support native Linux games
Not "the day a majority of their library is linux native"
As others mentioned valve has been developing their games as linux native already, what do you expect them to do? Force every single developer to support all the platforms possible? Delete all the games not linux native?
In what way are they supposed to be paying for Windows licenses? What do you even mean by that? You aren’t required to give 30% to MS to ships Windows apps (nor macOS)
If anything they are trying to build a moat, good-luck playing Xbox games on your Steam Deck if you don’t go out of your way to install Windows. Making them affectively a monopoly for now.
> The day they actually support native Linux games
They do, and have for a long time now, for nearly all of their own releases. There's not much more they can do than that; they don't control what platforms other companies want to port to.
What you're asking of them is akin to complaining that Apple sells tech instead of dishwashers when fundamentally that's so far from what they do that it's absurd, not to mention that if they suddenly stopped selling all tech their business would obviously die. I feel a bit foolish for even entertaining this because what you propose is so obviously outlandish to me that I'm about 85% sure you're just messing around to get a rise out of people.
Every Counter-Strike, every Team Fortress, every Half-Life (even Alyx), every Portal, DOTA 2, Artifact.