Proton has done far more for Linux gaming than any porting company out there, by bringing about 6000 games to us in less than 2 years.
There’s about 100 games every month that get a Platinum rating according to ProtonDB. (because of the recent changes on ProtonDB rating, this is now more accurate than it was before).
Proton has become better over time: the percentage of games getting a Platinum rating is steadily increasing over time as well – it used to be about 40% of all unique games reported, and now we are closer to 50%. This is cumulative, so the range will vary month by month but the trend is very clear.
Proton is one of the biggest contributions to desktop Linux in at least the past ten years. Thanks to Proton, I now play all my games on Linux, and could finally just remove Windows from my desktop altogether. All I do when I want to buy a game that doesn’t support Linux natively is check ProtonDB, and if the rating is platinum (works out of the box) or gold (might need to run a command, move a file around, or select a specific Proton version in Steam), I just buy it without further issues. If it’s rated silver, I’ll take a more detailed look and weigh the work vs. the benefit.
It’s been amazing, and I pretty much forget which games in my Steam library use Proton, and which don’t. It’s so seamless and effortless that I don’t have to know – from big, triple-A titles, all the way down to small indie games.
Shows perfectly how Windows APIs are still miles better than Linux’es. It surely looks like it’s easier to provide Windows API compatibility than to port to native Linux APIs. And now with the ongoing transition to Wayland everything has become an even bigger mess.
birdie,
I don’t necessarily have a problem with win32s, but I don’t quite see what lead you to make this statement?
It’s pretty obvious to me that most game publishers target windows first because windows has all the market share. This says a lot about priorities, but it doesn’t say much about the technical difficulty of porting to linux. A lot of gaming APIs are technically cross platform, making it very easy to port, it’s just a matter of convincing the publisher to do so. Unfortunately some software publishers provide zero support to linux users due to the small desktop market share, but on the bright side, anything that increase software availability on linux, even if it’s through wine, will give linux a greater footprint for gamers.
Sorry the numbers are deceptive. The majority of the 6,502 that are listed work correctly on the protondb are not using Windows API but are Linux native games. So not using the proton layer instead using the steam runtime layer.
https://www.protondb.com/
Pays to go here notice in the top 100 games 40 percent are Linux native and 20 percent work by the proton/wine compatibility layer to gold quality. Please note working perfectly out box with user needing to tweak stuff is Platinum rating on the wine based compatibility layer. Steam also has the steam runtime that provide a compatibility layer around Linux native binaries to different Linux Distributions. The Linux native games from steam are fairly much Platinum quality and they are not using wine.
There is something interesting if you look at the steam provided Linux native games they are mostly all using SDL https://www.libsdl.org/ if you are using SDL you really don’t need to care about if user has X11 or Wayland. Serous-ally people have updated the libsdl library on really old Linux native binaries and got the game running straight under Wayland directly no issue.
Linux does have a issue of have a kid and candy store problem of providing too many API to choose from of different levels of stability. This is not a problem you cannot over come by restricting yourself to what the steam run-time provides or what the flatpak runtimes provide.
There is a reason why Valve is providing proton based on wine and it the same reason why they dosbox some games. There are a lot of games in the Steam catalog where the current owner does not have the source code to the game any more so porting is impossible. This is not a new problem there are a lot old games being sold to windows users using dosbox for the same reason so its not a unique to Linux problem.
Of course you have a percentage of game developers who don’t want to do Linux native ports having a lot of users with wine having issues with their game and complain shows them there is market share this has in fact lead to increasing Linux native ports. So in a lot of ways its easier to release a Linux native user than have steam proton wine users complaining all the time.
So basically birdle you have it backwards like it or not.
Nope.
WIndows has had backwards compatability as a top design goal, because there is so much binary only software out there.
Linux has had to deal with different trade offs. What’s the problem with that?
For gaming, the backwards compatability focus might be better.
For security and high performance near-real-time applications, it might not be so good.
https://github.com/ValveSoftware/steam-runtime
Steam Runtime from Valve has a lot of focus on being backwards compatible with old programs by using chroot and other methods. So the large number of Linux native games that protondb shows are using a solution for backwards compatibility.
Flatpak and Snap solutions for runtimes provide the same kind of thing.
baki there is more than 1 way to skin cat. Talking about proton is ignoring the work Valve has put into the steam-runtime and the number of Linux native games that has brought.
Please note valve allows third parties to use steam runtime solution outside of steam if they wish to.
Linux has broad market and due to chroots and other things it quite possible to have multi different backwards compatibility support requirements on the system.
I have been consistently impressed with Steam Proton support!
One thing that’s funny, before Proton was big, I would only buy games on Steam that were native to Linux, including Painkiller: Hell & Damnation. Well, at some point recently the game just stopped working completely. I spent quite a bit of time trying to debug the problem before thinking, “I wonder how this works with Proton…”. So I opened the configuration settings for the game, clicked a checkbox, pressed “Play”, and the game just worked flawlessly. Kinda goofy. 😛
While I think Proton is admirable, gaming is the only thing for which I continue to use Windows.
Reason #1: hassle. Gaming is all about fun and anything that adds friction diminishes that. A bug in a Windows game is bad enough and I have no intention of making things worse. Either it’s seamless or I don’t bother.
Secondly, I’ve invested relatively heavily in a gaming rig, especially considering the limited amount of time I actually get to spend on it. To get the most bang for my buck, I don’t want to sacrifice performance, neither from Xorg APIs that are suboptimal, nor from a Windows compatibility layer.
And yes, you can turn this into an ethical debate or you can blame Microsoft for making money (hello, Windows Insider), but all things considered, Windows is by far the best platform for my use case.
I recently mucked up my pc which ran windows. Upon a fresh start i installed both windows and Ubuntu. I assumed id have to use Windows for gaming. I mainly intended to use Ubuntu for work.
I was blown away but what most would consider old news. First… Steam installed easily and a few of my games were playable.
Later i found the option in steams options to enable different runtimes. Pretty much my whole steam library ran well. I had to tinker with a few, but all eventually worked. Only a few indie windiws games did not.
All my games run well enough for me.
The only issue i face Right now is some multiplayer. Most recently halo master chief edition. So far, single player runs flawlessly, but multi player needs easy anticheat software. Its just not wine compatible. If they could get that working it would be great. I assume that’s hard to ensure. Will probably need root or something. I don’t mind running something if it meant things working.
But rather than boot to windows, I just play it single player.
I was excited at first, then I searched for “Need For Speed” and saw a grand total of 3 games, the most recent one from 10 years ago.
This is a classic case of putting the cart before the horse: First Desktop Linux has to make sure their GPU drivers don’t suck and their APIs are not awful (and X.org-based or PulseAudio-based), and then they can think of making a matchsticks-and-glue implementation of the Windows API on top of the native system.
And anyway, with the move to ultraportable laptops PC gaming is a niche now. We are barely getting Windows releases anymore (LA Noire, Batman Arkam Knight, GTA V to name a few cases when the PC Mustard Race snobs were left twiddling their thumbs while the console peasants were playing).
Its not exactly that simple. To make sure GPU drivers work you need applications to test them with. This is a horse and cart problem as you said. To be correct its a horse cart and cargo problem. Wine has been useful over the years to find different GPU driver issues.
Its not putting cart before horse. If the horse is the graphics driver and the cart is wine. At times you end up with a cart built for a clydesdale and only have a shetland pony of a horse.
The horse cart and cargo problem is you have cargo too big to transport on horse. You need cart to transport cargo. Horse, cart and cargo all have to be compatible with each other.
oiaohm,
Is this the long lost cousin of the car analogy? Haha.
Nice try, but Desktop Linux does have native applications that use the GPU, and they often ship with hardware acceleration disabled when possible
https://www.reddit.com/r/linux/comments/662dxm/psa_hardware_acceleration_on_firefox_may_be/
Then there are benchmarks and test suites and the like.
This is you cherry picking. Really when Chrome, Chromium both turn acceleration on by default under Linux since mid 2019. KDE and Gnome applications are using opengl accleration by default so does VLC…. long long list of applications under Linux that use acceleration by default.
Please note there are no active bug reports to explain why Firefox does not enable by default acceleration at this point. Mozilla with firefox and thunderbird decides not to even in their provided flatpak. Basically its to the point on the Linux desktop if the application has hardware acceleration and its not made by mozilla its on by default..
So like it or not its insanely rare for hardware acceleration not to be enabled on Linux. Just bad bit is a very population application is still doing it.
“Then there are benchmarks and test suites and the like..”
Test suites Nvidia closed source and AMD/Intel open source drivers both pass VK-GL-CTS what is the test suites for opengl and vulkan. So we are well past the test suite stage.
Most graphical benchmark suites are not made for Linux even some of the ones that are pure opengl and vulkan. So as stupid as it sounds you need wine to run some of the benchmarks to detect possible graphical driver issues when the GPU is at full load under different workloads. Because the test suites don’t push the GPU to full load and are a large diversity of workloads..
The truly hilarious thing is that 10 years from now Desktop Linux might have GPU drivers good enough to support gaming, only 34 years too late (3dfx voodoo released in 1996 for those keeping tab).
Then the Desktop Linux people will immediately start tackling the thorny issue of power management, which became an important thing with the whole trend for ultraportables and all-day laptops that started with the Macbook Air.
https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.6-Intel-PM-ACPI-CST
Power management be it desktop or server with Linux is still a very thorny issue with there has been a lot of documentation withheld.
https://www.phoronix.com/scan.php?page=article&item=kubuntu-focus
We are seeing different distributions now work on releasing laptops constructed from parts that are compatible so power management in fact works. So the thorny issue of windows laptops having screw up acpi tables and the like causing Linux to badly perform power wise is being taken by more groups providing Linux laptops that come with Linux default installed.
So, mighty Desktop Linux devs cannot work around some ACPI tables?
kurkosdr,
You can, and I have, but the reality is most developers who are fixing them don’t own your machine and therein lies the problem with expecting all hardware to just work.
Nearly all hardware is explicitly tested against windows and drivers get written to do whatever is required to make it work under windows. However if there’s no effort by the manufacturer to test under linux, then that leaves the onus on 3rd party linux developers to support hardware they’ve never even touched or looked at.
Obviously as a user you don’t care why something works or doesn’t, you simply need it to work and more often than not official windows drivers are available that do just that. But with no official drivers on the linux side, it can be hit or miss. You may not like that, and you may even be temped to blame linux for bugs that are technically in your hardware. Everyone would like linux to just work, but at the end of the day it’s really up to you to buy hardware with official linux support or take a risk on hardware that may or may not work.
There are vendors who provide official linux support, and if you aren’t inclined to work out problems on your own because you don’t have the patience or tools, then you should be buying from them.
And anyway, Desktop Linux has more problems than ACPI, with the drivers often failing to trigger power-saving modes for the GPU and Wifi or Ethernet cards and the kernel failing to utilize SpeedStep to trigger a voltage+frequency drop on the CPU.
kurkosdr,
It’s not clear who you are responding do, but it doesn’t really change my advice either way. If you want a working linux computer out of the box your best bet it to get hardware that’s certified to support linux by the manufacturer and/or vendor, otherwise you get what you get and it’s up to you to work it out. It’s blunt, but it really is as simple as that. I know you might not like this answer, but complaining about it isn’t going to solve much. To be clear, I’m not trying to dismiss anybody’s claims or experiences, after all I’ve also had my share of problems too, but I’m just trying to speak to the reality of the situation. Linux only has a small share of the desktop market and unfortunately that means many manufacturers don’t consider it worthwhile to support. IMHO it’s important to understand this before jumping into the linux pool, but if you understand this and still want to take part in linux, that’s great! In the long term choosing manufacturers who are investing in linux is the best way to improve linux support. Aka vote with your wallet.
“And anyway, Desktop Linux has more problems than ACPI, with the drivers often failing to trigger power-saving modes for the GPU and Wifi or Ethernet cards and the kernel failing to utilize SpeedStep to trigger a voltage+frequency drop on the CPU.”
Nothing like being wrong kurkosdr. Linux kernel has been utilizing SpeedStep EIST since 2006 there is a problem there is two ways to-do by ACPI or directly. The voltage+frequency drop that will not break the cpu in particular hardware config in fact comes from a table guess where stored that right in acpi data. Guess what Windows does not use the ACPI data most of the time instead uses a direct mode ignoring this in firmware. This issue also explains why with some laptops you leave them in the firmware screen they overheat as well to the point they can damage the cpu. So its not Linux kernel getting SpeedStep wrong alone if Linux is getting SpeedStep wrong so is system firmware so the machine is technically broken out the box. There is a passive mode coming to Linux this year that basically makes Linux ignore the APCI information like windows as well of course that will still leave the means to fry some systems if you leave them sitting in firmware for a few hours because the core problem is not going to get fixed.
GPU, Wifi and Ethernet power saving to use or not can be configured by those building the machine under Linux and has to be. You have fun thing inside some laptops you send power saving to the Ethernet and the keyboard and trackpad turns off. because the motherboard maker used the power rail of the Ethernet port to power the USB ports of keyboard and mouse so when you power save the Ethernet port it cuts the power to keyboard and track-pad.
Doing power management well would be a lot simpler if this mega quirky hardware was not used. Yes under windows this kind of stuff is worked around by vendor provided drivers. Yes some ethernet/gpu/wifi cards drivers under windows don’t ever power manage not because the card cannot because in some laptops its connected to keyboard and mouse or screen or something this is why installing randomly sourced drivers under windows for ethernet/gpu/wifi at times can make particular windows laptops develop really horrible quirks..
Those making hardware don’t always lay out power rails sanely this has made doing power management correctly a true per machine configuration.
Is this LXer?
As for games, I left Linux gaming since UnReal Tournament. My gaming is primarily games in my Era, and can be provided through emulators like MAME, stella, nesticle, etc. That rules out Steam AND Proton. LOL
My question is. Of all the games that can be played on Linux. How many do one actually play? Like… If it is there already and working, then why on earth keep using Windows at all? It is not like just because it can be played, then you have to install it. If it can only run on Windows, then fine, keep using Windows. Else, I don’t see any reason to keep using that crappy OS. For me it is easy. I only play Dos, Win98, Commodore64 and Amiga games. And I use old authentic hardware for it. Except that TheC64 full size, that I also have in my collection. On my normal everyday driver (laptop) I am not playing any other games than Frozen Bubble.