Celebrating 6 years since Valve announced Steam Play Proton for Linux
gamingonlinux.com
gamingonlinux.com
I initially had some issues with not being able to run Wayland due to Nvidia drivers, but that's now fixed with Explicit Sync support in their recent driver upgrades and am now using Wayland.
Thanks to Docker, JetBrains IDEs and most Daily Apps I use are cross-platform Desktop Web Apps (e.g. VS Code, Discord, Obsidian, etc) I was able to run everything I wanted to. The command-line is also super charged in Linux starting with a GPU-accelerated Alacritty running Oh My Zsh that's enhanced with productivity tools like fzf, exa, bat, zoxide and starship. There's also awesome tools like lazydocker, lazygit, btop and neovim pushing the limits of what's possible in a terminal UI and distrobox which lets me easily run Ubuntu VMs to install experimental software without impacting my Fedora Desktop.
Anyway happy to have abandoned the Surveillance and Spyware train that Windows has become, thankfully never have to go back thanks to the great support of Steam and cross-platform Desktop Apps running natively on Linux.
Now I cut out Intel and Nvidia I have an AMD machine with Debian, and for the first time I have a stable, dependable machine. I know how long the battery lasts and I can leave the house without a charger. And looking back, windows always had you on your toes, it is so instilled in us to work around its flaws.
Imagine you buy most of your games on DRM free platforms and they hardly even install on any gaming focused distribution.
As well as "game libraries": Lutris, Bottles, Heroic
Personally I use this alias to launch an exe via proton:
alias proton='SteamGameId="${SteamGameId-1000}" PROTON_USE_WINESYNC=1 STEAM_COMPAT_CLIENT_INSTALL_PATH="$PWD" STEAM_COMPAT_DATA_PATH=$HOME/proton /usr/share/steam/compatibilitytools.d/proton-cachyos/proton waitforexitandrun'
# cd /gamepath
# proton Game.exeIn broader terms, Proton is also a valuable lesson in how much the "last 10%" integration of software matters. Proton isn't developed from scratch by Valve, most of it is non-Valve code. Proton base is Wine plus DXVK plus gstreamer, but it's Valve's integration of those that allows the dramatic leap from "if you're a power user, you may get the game to work after lots of tinkering" to "just enable Proton for this game and click play".
Valve is also paying some developers of open source projects like DXVK or Mesa to keep working on it. I think it is also the key to its success. And it shows a good example to some big companies that how to use FOSS libraries correctly.
Valve pays DXVK devs, and I think CodeWeavers, with their long history of commercial Wine support, has also been getting paid by Valve to improve Wine in the specific ways required.
And wine does not implement all the APIs. If you do not submit requests or report bugs, the community will not fix it. So the source code contains a lot of "fixme" and stubs. Some APIs are implemented without the support of some flags.
In this case an active and sustainable community is very helpful. Not only for the business of Valve and CodeWeavers, but also the whole "running Windows apps on Linux" thing.
For modern applications, you do not need to do that. Even though it cannot run on Linux natively, you can always find some alternatives.
The first sale doctrine and other countries' equivalent laws still applies.
I was playing around with a Snapdragon 845 handheld running Linux like 2 years ago, and running older games like DMC4 using WineD3D fine. Using an additional translation layer of box86 to run x86 proton on ARM.
Installed Pop OS; expected there might be one or two hiccups with the Nvidia drivers. Yet I had zero driver config/installation issues - and there's not been a single Windows game I could not play on Linux at full settings.
On top of it the Linux machine also streams to my Steam Deck.
I've abandoned Windows 2 years ago - I see no reason to ever return.
I also enjoy playing on Linux but this really depends on the type of games you play. If you play a lot of multiplayer games, you will be disappointed on Linux, Riot games won't work, Blizzard games won't work, Fortnite won't work
Even with Elden Ring that runs perfectly on my Linux machine, I cannot use any multiplayer features (summoning friends, reading messages etc.) because the EAC anticheat doesn't work on Linux
As for Blizzard I have no idea about the other Blizzard games, but I play Diablo 4 using Lutris, other than one update that caused the Battle.net launcher problems it works fine, at least for D4 (and D3).
Destiny 2 is another example, turning on BattlEye on Proton is literally flipping a switch in the SDK. And they had a Destiny build for Linux because it was running on Stadia. But Destiny has a horrible codebase, and even with BattlEye on Windows there is a decent chunk of hard cheating.
And its not that just the non-competitive games choose to allow Proton. Halo and Apex Legends are good examples that play on Proton.
I had to disable online features in Elden Ring in order to get rid of multitude of messages from other players. That was on Steam on Linux.
I haven't tried friend summoninig, but online features did work for sure.
Blizz games are definitely doable now for the most part.
I think raytracing is fine, as Vulkan on Linux is phenomenally good & active, is seemingly the go-to spot for Vulkan as a whole. Proton turned on raytracing support by default 9 months ago, and it's probably not flawless, but runs many flashy games like Cyberpunk 2077.
Valve's Wayland compositor is called gamescope, and gamescope has kind of forged some kind of path to make HDR work. And that relies on kernel patches that dont seem intended for upstreaming. It's all packaged and works great on Steam Deck. I have tried and tried to get the same stack working locally with a rx580 but no dice, can't get gamescope embedded to run, to much chagrin & sadness.
Wayland and Linux both have been on a long sojourn to make good protocols & implement HDR. It's finally coming together; KDE is shipping something. I don't know if GNOME and Wlroots have actually started work but there are tickets. https://wiki.archlinux.org/title/HDR_monitor_support
Valve had the resources to cut their own path, and it's kind of awesome & excellent. They've made a Cathedral atop Linux. I want to think that if Wayland wasn't so new in general, if there was more bandwidth & focus & not tons of other necessary big work in flight, HDR might have advanced at a much more respectable rate. But who knows. I think it's important to have appropriate expectations, and this slow walk does show a weakness of the Bazaar model of development that Wayland embodies. But I really want to hope it's for an excellent end result, that HDR has well considered development path by the time it's really in the wild.
HDR soon! After a lot of puzzling it out.
Besides that, Valve does approach people who already do good open source work in the space.
I also own a Steam Deck, which is a wonderful little device and it proved to me that I could safely go through with this switch and not lose access to much.
Congrats to both the Proton and hardware team at Valve, and the people who contributed to Wine; the Year of the Linux Desktop has come, as far as I'm concerned.
Given that, and that I'm most comfortable developing on Linux and in C++, does anyone have a good toolchain recommendation for cross compiling C++ to Windows from Linux? (Ideally something that I can point CMake at and get a build that I can test in Proton.)
This works pretty well: https://github.com/mstorsjo/msvc-wine
Use it alongside something like this CMake toolchain file:
set(CMAKE_SYSTEM_NAME Windows) set(CMAKE_SYSTEM_PROCESSOR amd64)
set(CMAKE_C_COMPILER cl)
set(CMAKE_CXX_COMPILER cl)
set(CMAKE_AR lib)
set(CMAKE_LINKER link)
set(CMAKE_MT mt)
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
after adding the various scripts to path.If you want to speed up a little you can use `clang-cl` with the MSVC libraries, and it will work fine too.
It's funny because it's quite literally true. Thanks Microsoft - unironically!
-DCMAKE_CXX_COMPILER=x86_64-w64-mingw32-c++ -DCMAKE_C_COMPILER=x86_64-w64-mingw32-c
Something like SDL or Raylib is useful for cross platform windowing and sound if you are writing games/? mingw: https://github.com/search?q=mingw&type=repositories
The msys2/MINGW-packages are PKGBUILD packages: https://github.com/msys2/MINGW-packages :
> Package scripts for MinGW-w64 targets to build under MSYS2.
> [..., SDL, gles, glfw, egl, glbinding, cargo-c, gtest, cppunit, qt5, gtk4, icu, ki-i18n-qt5, SDL2_pango, jack2, gstreamer, ffmpeg, blender, gegl, gnome-text-editor, gtksourceview, kdiff3, libgit2, libusb, libressl, libsodium, libserialport, libslirp, hugo]
PKGBUILD is a bash script packaging spec from Arch, which builds packages with makepkg.
msys2/setup-msys2: https://github.com/msys2/setup-msys2:
> setup-msys2 is a GitHub Action (GHA) to setup an MSYS2 environment (i.e. MSYS, MINGW32, MINGW64, UCRT64, CLANG32, CLANG64 and/or CLANGARM64 shells)
Though, if you're writing a 3d app/game, e.g. panda3d already builds for Windows, Mac, and Linux; and pygbag compiles panda3d to WASM, and there's also harfang-wasm, and TIL about leptos is more like React in Rust and should work for GUI apps, too.
panda3d > Building applications: https://docs.panda3d.org/1.11/python/distribution/building-b...
https://github.com/topics/mingw :
> nCine, win-sudo, drmingw debugger,
mstorsjo/llvm-mingw: https://github.com/mstorsjo/llvm-mingw :
> Address Sanitizer and Undefined Behaviour Sanitizer, LLVM Control Flow Guard -mguard=cf ; i686, x86_64, armv7 and arm64
panda3d/panda3d: https://github.com/panda3d/panda3d
Before Steam for Linux, there was tuxmath.
tux4kuds/tuxmath//mingw/ has CodeBlocks build config with mingw32 fwics: https://github.com/tux4kids/tuxmath/blob/master/mingw/tuxmat...
Code::Blocks: https://en.m.wikipedia.org/wiki/Code::Blocks
There's a CMake build: https://github.com/tux4kids/tuxmath/blob/master/CMakeLists.t...
But it says the autotools build is still it; configure.ac for autoconf and Makefile.am for automake
SDL supports SVG since SDL_image 2.0.2 with IMG_LoadSVG_RW() and since SDL_image 2.6.0 with IMG_LoadSizedSVG_RW: https://wiki.libsdl.org/SDL2_image/IMG_LoadSizedSVG_RW
conda-forge has SDL on Win/Mac/Lin.
conda-forge/sdl2-feedstock: https://github.com/conda-forge/sdl2-feedstock
emscripten-forge does not yet have SDL or .*gl.* or tuxmath or bash or busybox: https://github.com/emscripten-forge/recipes/tree/main/recipe...
conda-forge/panda3d-feedstock / recipe/meta.yaml builds panda3d on Win, Mac, Lin, and Github Actions containers: https://github.com/conda-forge/panda3d-feedstock/blob/main/r... :
conda install -c conda-forge panda3d # mamba install panda3d # miniforge
# pip install panda3d
Panda3d docs > Distributing Panda3D Applications > Third-party dependencies lists a few libraries that I don't think are in the MSYS or conda-forge package repos:
https://docs.panda3d.org/1.10/python/distribution/thirdparty...What about math games on open source operating systems, Steam?
"Render and interact with through Blender, o3de, panda3d ManimCommunity/manim#3362" https://github.com/ManimCommunity/manim/issues/3362
Instead of going through the pain that it always is on Arch to find and install the right version of the right package, I just selected the Windows version using Proton and called it a day. (Eventually I did figure out that I could modify the shell script to launch a ScummVM instance via flatpak instead of the bundled version)
Apex Legends did opt-in to EACs Linux support and the effect has been that nearly every cheat for that game now targets Linux, because it is so much easier to avoid being detected on there. I would be fascinated to know the ratio of actual genuine Linux users playing Apex versus those who just dual boot into Linux to cheat with impunity.
Source for that?
It makes no sense.
1. Cheating in Apex has been rampant for many years, way before the game started to work on Linux.
2. I have not heard that cheating would increase lately, especially linked to Linux.
3. A lot of cheating is being done by Chinese players. It sounds incredible (I literally don't believe) that those pesky cheaters would bother and would even be able to start using Linux on their home computers and in game dungeons.
https://www.unknowncheats.me/forum/apex-legends/
Paid/private cheats are hard to keep track of but the free/open-source cheats are nearly all for Linux at this point, aside from the crude macro-based "cheats" which use AutoHotkey or similar. Apex enabled Linux support over two years ago so I wouldn't expect it to cause a recent uptick in cheating, it's been table stakes for a while.
You can easily find articles/videos from those pre-Linux days that talk about rampant cheating. Since Linux got introduced I have not seen any drastic changes to the worse, if anything it subjectively became better.
I cannot tell you the last time I have come across something that doesn't work via Proton.
It is one of the many crown jewels of Valve.
EDIT - ’From dust’ released in 2009 still doesn't work but that is due to Ubisofts awful DRM infrastructure.
I've bought myself a Steam Deck a while ago, thinking that I _might_ be able to play some of my Windows games on it. I had some experience with Wine many many years ago and it just didn't work well so I always dual booted my PC with Windows for gaming. To my surprise I was able to play AAA titles like RDR2 and Fallout without any issues or tinkering about.
I'm so happy that a company like Valve was able to put their shoulders under an initiative like this and actually stuck with it. Thank you, Valve!
Proton is absolutely amazing and everything has worked for me, some older badly made games haven't had ideal performance but with latest Proton even some of them have improved massively. Going from ~120 to stable locked 500FPS as expected. Soon, if not yet, the games will run better with Proton on Linux than natively on Windows, at least with AMD.
Works reasonably well on a fast wifi.
A nice trick with Lutris is to create 2 initial prefixes for wine 32 and 64 bits and then to duplicate them in the library for each game. Only the lauch settings will be different but you get all games installed in 2 wine instances.
> Improving Wine for Linux gaming seems like a better plan than lobbying individual game developers for native ports. Why the hate?
What a time to be alive.
Don't get me wrong, Proton and DXVK are very useful tools for compatibility with legacy software but Valve really jumped the shark by positioning it as the default way to run Games on linux and alledgedly even actively discouraging native ports. We had Wine long before Proton (or Steam for Linux for that matter) and so what if it's a little bit more convenient now.
IMO peak Linux gaming was between the early Humble Bundles that required cross platform support for inclusion to the Kickstarter era where many campaigns felt the need to promise Linux versions to the Steam Machine hype that even got some AAA developers on board. Not seeing anything like that these days even with the Steam deck - seems most developers don't care to provide official support when gamers will buy the games to run with Proton anyway.
Ty valve
It's notable this happened at all because Valve supported what was there all along. They didn't go make their own path. They, and the ecosystem, all benefit.
Truly thankful
I know it's huge technical debt but Microsoft is really doing poor job, or no job at all, on its backward compatibility.
Now, Gabe, put some headcount towards Half Life 3 please, cheers
Happy Steam Deck owner. Have Nintendo Switch and PS5 in place though.
I wonder what happened to that
Oh Linux.
The inability to trivially target arbitrary versions of glibc is so frustrating. So much of Linux is stuck with terrible patterns from the 80s.
And honestly it works. One part of Steam Deck's success that it was entirely built on an immutable flatpak based distro (Arch)
This is more clearing up ambiguity for others reading than a correction, there's a decent chance you knew this already.
Fedora Silverblue is a distro which heavily uses flatpaks and is immutable out of the box. I believe this is what Bazzite, a community alternative to SteamOS, is based on.
Still nicely done on valve's part.
Yes. Seems really complicated though. It’s a whole lot of machinery and complexity to achieve what should be a very simple zip + double-click.
The Linux model is just inherently complex.
Don't get me wrong microsoft is one of the good guys here, compared to apple they are a very programmer focused company and try very hard to provide the information needed to do things with the os. There are people who are very good with windows and understand it well, I just never liked all the hidden complexity and am much happier with linux and it's explicit complexity. I have to admit that statement is a bit of a lie, I actually think linux is far to complex and am happier with openbsd, which exposes and expects even more of the end user and is correspondingly much simpler.
This has not been my experience in the slightest. Supporting “Linux” is radically harder, more complex, more error prone, and more miserable than supporting Windows. YMMV.
It's the other two that complicate the matter in order to provide sandboxing. Thankfully you can simply choose not to use snap or flatpack. Really though, to characterize AppImage that way makes your comment sounds like the sort of cope windows users tell themselves to explain to themselves why they continue to tolerate Microsoft's abusive business practices.
The arrogance and smugness of some Linux users is probably the main reason for me. I just don’t want to be associated with that kind of people..
Generally unpolished UX and poor UI design (even by Windows standards…) is the second reason. Overall IMHO usually for consumer/desktop use cases all the tinkering you need to do on Linux to do many of the things that just work on Windows/macOS it’s just more trouble that it’s worth.. (unless you’re into masochism and there is nothing wrong with that).
Sure Linux has plenty of it's own issues, but nowadays it's Windows that has degraded so much on the UX and UI department that I would dare say it is inferior to KDE and specially inferior to Gnome.
When you first boot into Windows 11 you realize that all programs sourced from microsoft itself are all based on inconsistent UX and UI. No program "skin" look alike, no button look similar. No modal dialog with a simple yes no question look "proper". Compare that to Windows 95 where everything was 1000x more consistent, it's like night and day. Even the stuff that uses the latest and greatest internal toolkit (that will surely be deprecated in a year) have that plain "flat" ui taken to the extreme that I at least find boring as hell.
And then you have to deal with two control panels to configure the system, a legacy they've been trying to move away since the win 8 days, with some dialogs that came up straight from windows 95 and windows 3.1 that still has the UX from those days... it's like living in an apartheid state, where each department at microsoft has to battle for their dear existence and fail at cooperating with each other.
And yes, I do feel smug when I realize a 3 Trillion dollar company fails at things that the open source community been nailing more and more every year. I guess linux is a cathartic experience nowadays. Can't get enough of it!
To be honest I’m surprisingly happy* about Windows 11, after minimal amount of tweaking (less than I need on any Linux distro I tried to make it usable) I turned off most of the annoying stuff and I don’t really have much to complain about it + WSL
*the only thing I really want from an OS these days is to stay out of my way and require the minimal amount of pointless busywork from me (all the package management nonsense on Linux + permanent issues with Nvidia’s drivers).
> explain to themselves why they continue to tolerate Microsoft's abusive business practices.
I can’t possibly eye roll hard enough.
Not really.
You can make portable binaries if you statically link everything and use MUSL as your libc but this brings in a host of other problems. Dynamic linking is impossible to do completely portable too as the dynamic linker is a part of the distro and the executable bakes an absolute path to it!
proton is then, really, hurting native elf/linux gaming.
Some game devs are aware of that and still try to provide clean elf/linux binaries.
Not to mention, it is a version mess, namely most of the time you get games to run-ish less than optimaly (if it runs at all) and you need some exact version of proton (wine/vkd3d) since forward and backward compatibility is super shabby, but you often end up with "if you want to run game UHEOTHC optimally, you need an external custom version GMX.ultra.74389.12 of protron which does include direct copy of closed source windows components (and you better be careful since it is illegal to redistribute many windows components...).
It would have been 1 billion times cheaper, and saner, to write audit tools for ELF64 binaries in order to drive game devs at crafting clean binaries (glibc ABI selection, dynamic loading of video game core interface libs, static linking).
I am sorry, but there is nothing to be proud of, actually quite the other way around. They are doing the "embrace and extend": does embrace elf/linux but does extend it with abomination like proton.
Shame on you, valve.
However you give them a tool to take the same Windows build they ship to the rest of their customers and they get to ship for Linux too? Why would they say no?
We're going to need a whole extra order of magnitude on the Linux desktop market share before we'll ever see serious investment from the games industry at large for native Linux builds.
And what does it matter if you're running a Windows PE calling Win32? The system is still Linux. How different is it to rely on Proton then it is to rely on flatpak or another containerization technology to ship your app. You still have to bolt on a giant pile of complexity just to ship a zip file of game.exe and its libraries.
You need already a significant "PC market share" to get video games, but you will never get that "PC market share" because you don't have video games.
But in the first place, you will really not get that "PC market share" because people uses what is installed by default on the PC they buy. So you will need mass default installation of elf/linux on PC first of all. Everything else is pointless for "PC market share", only hardcore (omega hardcore) regulation can do anything here.
Regulation for video games: forced support of a set of as simple as possible exe file format and OS interfaces, very stable in time, namely not msft ones which are disgusting and grotesquely complex and massive (but msft would be forced to support them). And if regulation happens, it will happen most likely for other more important things than video games (for instance, critical online services of administrations or utilities).
In the end, we are reasonably left only with the good will of game devs.
And I think proton is not helping here, to say the least.
Is it illegal for me to create a piece of art (i.e. a game) whose sole purpose is to demonstrate the fragility/absurdity of modern software abstractions by building it in some insane nesting of APIs?
I don't ask these to rhetorically imply that we don't need more regulation. I completely agree that there are online services that need way more regulation as they have become infrastructural.
These are all questions that we have to collectively (and not just programmers) discuss and decide where the lines are. It's not as simple as "force a set of simple as possible exe file format and OS interfaces."
Longterm for Linux isn’t it better for games to be built against stable and backwards compatible APIs?
> It would have been 1 billion times cheaper, and saner, to write audit tools for ELF64 binaries
Regardless if it wouldn’t have been cheaper for game developers to spend time doing that to get a handful of additional users. What incentives would they have to use these tools? Now they can release games on Linux almost for free.
But you can't! That's the whole point. You might have some indie devs support linux out of good will, but anything larger won't chase a 2% niche of a market _no matter how little extra development_ it would take. You either get Linux support "for free" or not at all.
Yes, a few game devs will drop native Linux support because building and maintaining just the Windows version and relying on Proton will be cheaper for them. Some number of them would have inevitably dropped native Linux support anyway. Take Rocket League for example. For most games, very few would have EVER had a native version for Linux. Source: the decades of PC gaming history prior to Proton.
Even with regular WINE being available, it's not like game devs were testing how their game ran in WINE. Currently, if your game doesn't work in Proton (and therefore the Steam Deck), you get an "Unsupported" icon on your store page. Getting that Deck Verified green checkmark is an actual economic incentive for game devs to support Linux in any way, even if that way is unsavory to some.
So, like Electron, the argument is less "Electron app vs native app" and more "Electron(/Proton) app vs no app at all".
Also, given that Proton isn't preventing developers from still offering a native Linux version, you really can't say that Valve/Proton are why those devs are dropping it. The developer is still choosing to drop native support.
Agreed and in both cases I'd rather have quality than quantity.
> Yes, a few game devs will drop native Linux support because building and maintaining just the Windows version and relying on Proton will be cheaper for them.
There have been pretty much no native ports of big games since proton got pushed by Steam. All Linux game porting companies have either shuttered or switched focus to only Mac and mobile.
> For most games, very few would have EVER had a native version for Linux. Source: the decades of PC gaming history prior to Proton.
There were many more native releases in the period before Proton than now.
> Getting that Deck Verified green checkmark is an actual economic incentive for game devs to support Linux in any way
In a way where they can in the future publish changes that break the game on Linux without you being able to complain because what you bought is a Windows game.
> So, like Electron, the argument is less "Electron app vs native app" and more "Electron(/Proton) app vs no app at all".
Absurd. There were plenty of native programs released before either compatibility layer.
Of course, but if there's a game that I really would like to play, it doesn't matter how good some hypothetical version of it might be if nobody ever ports it. The quality of a nonexistent game(/port) is zero, no?
> There have been pretty much no native ports of big games since proton got pushed by Steam. All Linux game porting companies have either shuttered or switched focus to only Mac and mobile. > There were many more native releases in the period before Proton than now.
I suppose we are just in different circles of "big games". Before Proton, I can't recall the last time I saw a AAA game with Linux support. The occasional indie game had support, but that's still the case. World of Goo 2 just came out with native Linux support, for example. DRM free too, if you buy it direct from them.
> In a way where they can in the future publish changes that break the game on Linux without you being able to complain because what you bought is a Windows game.
This is the case regardless of native vs Proton. Just because a game has a native Linux version at some point is not a guarantee that an update won't break it nor that they won't just drop Linux as a platform outright.
> Absurd. There were plenty of native programs released before either compatibility layer.
And there are still about as many (in my experience) with both compatibility layers.
>It would have been 1 billion times cheaper, and saner, to write audit tools for ELF64 binaries in order to drive game devs at crafting clean binaries
Are you sure? The man hours spent on Proton and wine and DXVK are nowhere near enough to port even a dozen triple A games. Even if they do, nobody is going to rewrite their renderer from DirectX to Vulkan just to support Linux, they will still rely on DXVK as a dependency. I don't remember which game it was, but they had an entire dev team to build a renderer just for Linux and they scrapped it, because at some point the Windows and Linux renderer diverged too much and that was the end of Linux support.
I am often playing a bunch of games that were built with 'nw' and there is no Linux version for them and the chromium version they use often doesn't work, because Wine doesn't support CEF sandboxing. What I do is download a recent 'nw' release and just copy it into the folder and overwrite all the 'nw' related files and then it works. According to your comment, this is a great evil, since I am enabling these developers to not provide an explicit Linux release. Instead you're suggesting that they and I would save billions by not copying 'nw' into the folder.
And if we look the most popular/largest games the proportion that use Unreal/Unity gets much lower.
Backwards compatibility is also a thing. If you ship a binary for Windows you can be pretty sure that it will work for 10-20+ years, that’s hardly the case for Linux (because its developers hate proprietary binary software due to irrational “reasons”).
The only way to successfully migrate a large amount of user to any new system is to make sure it can do the same things as the old and then build from there.
> The only way to successfully migrate a large amount of user to any new system is to make sure it can do the same things as the old and then build from there.
This is contrary to every single new gaming console in history. If backwards compatibility is offered it is always an add on, usually only released after the system has already gained adoption.
to quote pcgamer "It may get updates, and may have 3,525 games, but PlayerUnknown’s Battlegrounds isn’t one of them, and neither are Nier: Automata, Black Desert Online, Prey, nor The Witcher 3—these are all current Steam top sellers." - https://web.archive.org/web/20240701183442/https://www.pcgam...
>This is contrary to every single new gaming console in history
pc and console might be in the same genre but otherwise there buying habits and consumer culture aren't comparable. windows pc gamer never had to worry about not being able to play old games after over two decades and counting. they are used to steep sales and 3rd party stores.
If devs that supported Linux before can do so now for less effort, that's a good thing. I don't care what ldd says.
Also, wrapping up the myriad dependencies a game can have under a centralized system like Proton is better than native apps. Much easier to centralize compat fixes.
If we are honnest with ourselves, we know that many games devs which did provide native elf/linux builds and which are not announcing elf/linux support anymore for their future games, it is because of proton.
And at the same time, you have some "games" currently being developed which are running state-of-the-art UE5 engine (for instance "vein") with a native elf/linux build. And we are talking super small teams.
Finally when Valve got involved to fix wine with Proton, it changed everything as a Linux user, and finally I don't need dedicated consoles to play what few games I still do. If a game is loaded with invasive DRM to NOT work under Proton/Linux, they're doing me a favor as I don't want to support them anyways.
Proton alone made Valve saints to myself and most all Linux users in giving gaming back to the Linux world, far more than scabs like Epic that criticize Valve for market dominance ever will.