
Valve Rolls Out Wine-Based “Proton” for Running Windows Games on Linux - kbumsik
https://www.phoronix.com/scan.php?page=news_item&px=Valve-Steam-Play-Proton-Linux
======
bdz
John Carmack in 2013

>I truly do feel that emulation of some sort is a proper technical direction
for gaming on Linux. It is obviously pragmatic in the range of possible
support, but it shouldn’t have the technical stigma that it does. There really
isn’t much of anything special that a native port does – we still make OpenGL
calls, winsock is just BSD sockets, windows threads become pthreads, and the
translation of input and audio interfaces don’t make much difference (XInput
and Xaudio2 are good APIs!). A good shim layer should have far less impact on
performance than the variability in driver quality.

>Translating from D3D to OpenGL would involve more inefficiencies, but
figuring out exactly what the difficulties are and making some form of “D3D
interop” extension for OpenGL to smooth it out is a lot easier than making
dozens of completely refactored, high performance native ports.

[https://www.reddit.com/r/linux/comments/17x0sh/john_carmack_...](https://www.reddit.com/r/linux/comments/17x0sh/john_carmack_asks_why_wine_isnt_good_enough/c89sfto/)

~~~
sandworm101
Except that the availability of emulation may cause developers to stop native
linux support. I dont want to hear "talk to valve about your linux issue"
every time i report a bug.

~~~
TangoTrotFox
Which would you see as more probable?

1) The ease of quality emulation leads to developers ceasing native linux
support, resulting in lower quality linux gaming overall.

2) The ease of quality emulation leads more gamers to be willing to migrate to
linux as their primary OS, thus helping linux come closer to being a first
class deployment target, resulting in higher quality linux gaming overall.

Of course this isn't a dichotomy, but rather I think it's often unwise to look
a gift horse in the mouth, especially when you're looking at hypotheticals.

~~~
zaarn
I think point 2 should be swapped for "ease of quality emulation means
developers are willing to support linux through the emulation layer and can do
so at reduced cost compared to porting"

~~~
jplayer01
He's right though. Linux gaming is a chicken and egg problem. Without enough
users, the financial argument for making a Linux port is very weak. Without
enough games, gamers will stay on Windows. At least if there's a reliable
shim, the Linux gaming community might grow and become more relevant,
fostering competition amongst game developers and hopefully incentivizing them
to eventually doing native ports.

~~~
zaarn
The most ironic fate would be if Wine would eventually morph into a Linux
gaming framework that everyone uses.

Though I would consider this unlikely.

~~~
cbhl
For new code, don't Unity and the like already fulfill this role?

------
acd
This is good for gaming on Linux!

Future prediction: Hackers reverse engineer Microsoft SQL server for Linux
compatibility DLLs and adds better Wine support. Microsoft will eventually
start selling a commercial Windows 10 compatibility layer for Linux. Reason
Microsoft does not found main revenue through operating sales but of online
cloud adoption and subscriptions. Microsoft of today is much more open source
friendly than before.

[https://en.wikipedia.org/wiki/Xenix](https://en.wikipedia.org/wiki/Xenix)
[https://en.wikipedia.org/wiki/Windows_Services_for_UNIX](https://en.wikipedia.org/wiki/Windows_Services_for_UNIX)
[https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux)

~~~
BuildTheRobots
> Hackers reverse engineer Microsoft SQL server for Linux compatibility DLLs
> and adds better Wine support. Microsoft will eventually start selling a
> commercial Windows 10 compatibility layer for Linux

I like the optimism but I honestly believe it's going to go the other way
round.

Based on Microsoft s EEE strategy from the past, combined with the way they've
pushed for SecureBoot on x86 and Arm and the (re-)rise of the WSL, I honestly
expect it to get even more difficult in the future to boot a linux kernel on
your own hardware.

Once all the usual suspects work properly under WSL I think more hardware
lockdowns are going to come into place combined with phrases like "what do you
need a kernel for? just boot windows kernel and use your linux userland and
stop complaining!". The rise of GNU/Windows might well be coming...

~~~
dmitrygr
That would be wonderful. If you're comparing kernel architectures, Linux
kernel vs. NT is not much of a comparison. I will take NT kernel & gnu user
space any day!

It's always nice to run a kernel designed by people who actually know what
they're doing, and aren't doing it for the first time. Look into nt history,
or how late Linux kernel started taking things like power management
seriously. Hell, Linux kernel still insists on entirely living in nonpageable
memory, most io is still synchronous, and there still is no stable driver API.

~~~
arminiusreturns
The linux kernel ain't perfect, but to say the NT kernel is superior is
laughable imho. Take it with a grain of salt though as I am a greybeard
sysadmin type who got so fed up with windows and MS that I moved completely to
gnu/linux and haven't looked back.

Back on topic though, Skyrim normal edition installed and played just fine
with proton for me on manjaro. This is nothing but good for us linux gamers.

------
bdz
My only fear: devs will push for "just enough" Steam Play compatiblity instead
of a proper Linux port. A lot of big AAA games got post-launch Linux release.
These can disappear

~~~
zaarn
I think I can live with devs targeting Wine on Linux instead of Linux
directly, it saves them a lot of resources since most will be invested into
Windows support.

And yes, maybe it means we get less Linux native, I don't mind either. If it
works on Linux and is supported on Linux, even if it's just via Wine, that's
all I want.

~~~
SmellyGeekBoy
Indeed. Modern software has plenty of layers of abstraction to begin with. One
more isn't going to break the bank.

(I genuinely can't believe I'm posting this comment completely un-ironically,
but here we are).

~~~
zaarn
Most games will be running on an engine the studio bought, if not, it's
usually one maintained by an in house team.

Which is, I suspect, the reason why some gamedevs are hesistant. For Linux
they not only need the QA track and development resources but might have to
redevelop some engine customizations for Linux or the engine might not even
support Linux at all. They're two steps removed from the people who would be
responsible for making the engine work on Linux at all.

------
black_puppydog
In case anyone else is wondering, this spreadsheet is posted as one of the
github issues and compiles people's tests of different games:

[https://docs.google.com/spreadsheets/d/1DcZZQ4HL_Ol969UbXJmF...](https://docs.google.com/spreadsheets/d/1DcZZQ4HL_Ol969UbXJmFG8TzOHNnHoj8Q1f8DIFe8-8/edit#gid=2086525177)

~~~
neuromantik8086
> Machinarium --> Anything else notable? --> Still cute ass heck

Is this a Freudian slip from one of those robosexuals?

------
filmor
This is the corresponding github issue, open since 2012:
[https://github.com/ValveSoftware/steam-for-
linux/issues/74](https://github.com/ValveSoftware/steam-for-linux/issues/74)
:)

At some point during the beta of the Steam client for Linux, there was a bug
in that you could install Windows games on Linux. I had a binfmt_misc setup at
the time, which allowed me to run Windows executables directly through Wine as
if they were ordinary ELF binaries. I don't remember exactly what happened
when I tried running one, I think it failed when the Steam copy protection
kicked in, but I always wondered if they couldn't make this work.

------
c487bd62
> Users playing through Steam Play experiencing Linux-specific issues should
> be directed to Steam for support

I wonder how they'll handle user reviews. Maybe performance won't be an issue,
I know some games run even faster than on Windows, but bugs that you don't
know are Proton specific could lead to bad reviews.

~~~
gboudrias
This could be intentional, as it incentivizes developers to support the Proton
version, which makes native Linux support a much smaller leap.

Excited as I am about a big player pushing Linux, we mustn't forget that the
intent is almost certainly just to chip away at Windows and the threat it
poses to Valve's own monopoly (as a PC game distributor).

~~~
turbografx16
A good deed done for selfish reasons is still a good deed done. Frankly I'm
just happy to see Linux gaming getting any kind of attention as it's the only
reason I still dual boot Windows.

------
shmerl
As I said in another thread:

Congrats!

And big thanks to developers and Valve who funded dxvk, vkd3d, esync and other
Wine as well as Mesa work, while contributing everything in FOSS fashion. This
benefits not just Steam users but all Linux gamers.

------
ryu2k2
Valve really needs to roll out a 64bit client though. I always have problems
just installing the client because of the 32bit architecture.

~~~
Aelius
Flatpak to the rescue!

~~~
stubish
I personally hope for Snaps or similar. Games could really benefit from
containment. There is no reason for Counter Strike mods to have access to your
World of Warcraft credentials, or your web browser or email client have access
to them for that matter.

------
alkonaut
What's the driving force behind this? Is it so that Valve won't have to be
dependent on microsoft or a "windows tax" for their gaming boxes? Or is it
that microsoft simply wouldn't agree to license windows to them because they
are already pushing xboxes? Or is it something else?

~~~
modeless
Microsoft is trying to make Windows app distribution more like iOS. As a third
party software store for Windows, Steam is prohibited from being in the
Windows Store or running at all on Windows S. This is a direct attack on
Valve, since Windows game sales make up the vast majority of their revenue.

Although the Windows Store and Windows S have not been successful so far,
Valve is still hedging their bets and trying to reduce their dependency on
Windows and DirectX by promoting Linux and Vulkan.

~~~
hegz
First Microsoft has to get every app on the windows store, then they have to
get people to start using it and then they cut off external software sources
or make it hard to do like requiring power shell to enable.

Its obvious this is the long term plan for MS. Apple has already shown people
will buy locked down systems.

~~~
r3bl
They don't need to do any of that. Chromebooks became a thing without having a
lot of software available on the platform.

Microsoft already followed the footsteps with Windows 10 S. And they're the
first major OS that's taking advantage of Progressive Web Apps and adding them
to their store, removing the need to build Windows-only software completely
while still offering "native" experience: [https://developer.microsoft.com/en-
us/windows/pwa](https://developer.microsoft.com/en-us/windows/pwa)

I personally think that Microsoft learned their lessons with Windows 10 Mobile
and that they're going to excel at being a competitor to Chromebooks.

------
Fiahil
Atari is preparing the launch of its new linux console, the VCS (scheduled for
next year). Apart from being a great toy for tinkering, it would be quite
interesting if we could run a full steam client and some windows games on it !

Controls may be a bit hazy, but it's definitively something I would try.

~~~
hasperdi
You may want to adjust your expectation, as the current Atari is comparable to
what Nokia, Polaroid and Kodak are today.

[https://www.youtube.com/watch?v=z0qyUhb3VXI](https://www.youtube.com/watch?v=z0qyUhb3VXI)

~~~
redisman
Ah yes Atari, the company that singlehandedly almost destroyed the video game
industry with their crapware games. How are they still alive? Just milking old
IPs and patents?

------
thsowers
This is really interesting. Would anyone have a link into more information as
to how they are making this happen behind the scenes? How is this different
from wine?

~~~
flafla2
Here are the details from Valve's announcement post [0]:

[begin quote]

Q: What is Proton exactly? How does it differ from normal Wine? Who worked on
it?

Proton is a tool distribution based on a modified version of Wine. The
included improvements to Wine have been designed and funded by Valve, in a
joint development effort with CodeWeavers. Here are some examples of what
we've been working on together since 2016:

\- vkd3d[source.winehq.org], the Direct3D 12 implementation based on Vulkan

\- The OpenVR and Steamworks native API bridges

\- Many wined3d performance and functionality fixes for Direct3D 9 and
Direct3D 11

\- Overhauled fullscreen and gamepad support

\- The "esync[github.com]" patchset, for multi-threaded performance
improvements

Modifications to Wine are submitted upstream if they're compatible with the
goals and requirements of the larger Wine project; as a result, Wine users
have been benefiting from parts of this work for over a year now. The rest is
available as part of our source code repository for Proton and its modules.

In addition to that, we've been supporting the development of
DXVK[github.com], the Direct3D 11 implementation based on Vulkan; the nature
of this support includes:

\- Employing the DXVK developer in our open-source graphics group since
February 2018

\- Providing direct support from our open-source graphics group to fix Mesa
driver issues affecting DXVK, and provide prototype implementations of brand
new Vulkan features to improve DXVK functionality

\- Working with our partners over at Khronos, NVIDIA, Intel and AMD to
coordinate Vulkan feature and driver support

[end quote]

[0]
[https://steamcommunity.com/games/221410/announcements/detail...](https://steamcommunity.com/games/221410/announcements/detail/1696055855739350561)

~~~
kbumsik
For more context, CodeWeavers is a company behind CrossOver, a proprietary
software based on Wine. It is also a major contributor of Wine Project too.

~~~
shmerl
The primary contributor I'd say.

------
moetech
Valve needs to partner with Google and launch a Chromebook/Steam Machine
hybrid. It's in the interest of both companies to kill Windows. Google is
already adding support for native Linux programs to Chrome OS, they could make
a Chrome/Android hybrid that pulls all of the weight of the Android ecosystem
and adds to that the weight of Steam. It would be a success and could
seriously hurt Microsoft.

~~~
philliphaydon
I couldn't think of anything worse than Valve and Google partnering.

And I don't know why you would want to 'kill' windows. What Valve is doing is
great, its making more competition, that puts pressure on Microsoft to be
competitive too. But killing off windows completely hurts everyone. No
competition is bad.

~~~
moetech
I want Windows dead because it's a proprietary surveillance machine that has
stayed alive thanks to really strong lock-in and network effects. I don't
trust Google and Valve either, but even if they go full evil empire after
after killing Windows, a monopoly built on Linux and Vulkan is a much better
place than where we are now.

Google already has a near-monopoly in the smartphone space and it's much
better than the Windows monopoly on the desktop. Android being built on tons
of GPL software means they have to contribute changes back to the benefit of
the FOSS ecosystem. It also means you can easily make/use a custom Android ROM
without any proprietary components.

~~~
astrowilliam
I'm truly interested and curious. Can you explain to me why being on the
internet where all your actions are being monitored by your ISP is OK, but
Windows is bad? I mean, no matter how many precautions you take, someone is
watching you some how. Use web-based email? There's a record somewhere with
all your past emails and they are making a marketing profile about you, same
with search.

And what about smart phones? Android has you locked into Google surveillance
and Apple is closed so we have no idea how much they know. Send a text? Your
provider had to send that data and the person on the receiving end... well,
you never know how secure their systems are.

Just some food for thought, would like to hear why Windows is so bad, I'm a
Windows/Apple/Linux user and I don't hate on any of them.

~~~
moetech
>Can you explain to me why being on the internet where all your actions are
being monitored by your ISP is OK

ISP surveillance is not OK, but ISPs only know the domains I access, not what
I do on them. I can prevent them from knowing even that by using a VPN, Tor,
or any other kind of proxy. I believe encrypted DNS might also become a thing
in the future. Also, I'm not locked-in to my ISP.

>no matter how many precautions you take, someone is watching you some how

That's what we're trying to fight.

>There's a record somewhere with all your past emails and they are making a
marketing profile about you

A lot of my email accounts are fake-identity and temporary and I try to use
encryption whenever I can, but I admit email encryption has a long way to go.
There's no lock-in here though.

>Android has you locked into Google surveillance

It doesn't. Custom Google-free Android ROMs are a thing and work well.

>Send a text? Your provider had to send that data

Use encryption. I recommend Matrix/Riot.im for encrypted chat. There is also a
program called Silence that can encrypt SMS.

-

If you want to know the point of all this, there's a lot of material online,
but you can start by watching the short talk "Why Privacy Matters" by Glenn
Greenwald

------
ezoe
Does anyone know why Valve forked the Wine rather than joining them?

~~~
Blaiz0r
From the FAQs of the original post on Steam:

"Modifications to Wine are submitted upstream if they're compatible with the
goals and requirements of the larger Wine project; as a result, Wine users
have been benefiting from parts of this work for over a year now. The rest is
available as part of our source code repository for Proton and its modules."

Wine has very tight/strict requirements for what can merged into its codebase,
it's why DXVK has had to remain a standalone project because it doesn't live
up to Wine's code/goal requirements.

~~~
londons_explore
Can you be more specific on where the goals differ?

"Get all windows stuff to run perfectly in Linux" sounds like a pretty simple
goal to me.

~~~
tluyben2
But that is not the goal for Proton. Proton does not need to be able to run
Photoshop or Powerpoint. There is optimizing to be done if you can skip the
majority of desktop software as run target.

------
steve19
Would be great if they could do that for Mac as well, although Metal is a
deadend (for game devs) so they may not bother. I have had some decent success
running wine games on Mac.

~~~
ulzeraj
On the proton github repo there are instructions for building for Mac and
moltenvk libraries. It’s probably not as mature as the Linux version but there
are bits hinting here and there. Link:
[https://github.com/ValveSoftware/Proton](https://github.com/ValveSoftware/Proton)

------
jpeg_hero
This could be the year of the Linux Desktop!

------
Phenix88be
Why can't we just have native support... Why do almost everyone had to go for
Wine instead of native support. Gaming on Wine is painful and often break with
updates.

~~~
TulliusCicero
> Why can't we just have native support...

Because the market for Linux gamers -- especially ones who don't already dual-
boot Windows -- is tiny.

~~~
jpetso
I think it's interesting that tiny indie projects would often have a Linux
port, when their user base isn't all that big to begin with and their Linux
user base would be much smaller still. On the other hand, AAA titles which
would presumably still sell tens of thousands of copies rarely ever seem to
make the effort.

I'm not complaining, but shouldn't it be the other way around?

~~~
TulliusCicero
AAA titles are probably more graphically complex, especially in terms of low-
level shortcuts/optimizations. Whereas most indie titles have simple enough
graphics to make extra optimization unnecessary.

------
Jeaye
This makes GNU/Linux a more appealing and viable gaming platform than Mac OS,
since it now has the opportunity to capture so many of the existing Windows
games.

~~~
chupasaurus
Just run your macOS (not Hackintosh) on my Ryzen and then we'll talk.

------
ece
Samba was reverse engineered, MS somewhat tried to make it an open standard,
now are agnostic to it and are still developing closed extensions.

Mono became big enough, and they opensourced their own CLR, and it runs on
Linux.

DirectX was implemented as a compatibility layer and runs games at close to
native speeds on Linux and MS dumps it for Vulkan. Or so the wish goes.

------
Zarath
This is awesome. As others have said, gaming is one of the few reasons I still
use Windows on my desktop.

------
_bxg1
Glad to see Valve back to creating things other than hats and virtual trading
cards

------
anc84
Heh, I wonder if the list is correct about its Doom games. It links to the
2016 Doom as well as DOOM II: Hell on Earth (1994). Silly trend of re-using
old names for new releases, they might have mean the original Doom instead...

~~~
nix0n
Both are on the list, Ultimate Doom further down is a re-release of the
original.

------
petermcneeley
Has anyone addressed the possible legal issues with this type of emulation?
What about titles with strong DRM is it likely that they will run in these
environments?

~~~
dx87
In Valve's announcment they mention that titles with strong DRM or complex
anti-cheat measures probably won't work.

------
bitwize
Oh, thank goodness. I could never get the Steam client running under Wine.
Usually, nothing happens.

------
wemdyjreichert
Does this mean we can now have wine without breaking packages and having to
reinstall?

------
eahman05
If you use Wine to play DirectX 9 games, try the d3d9 fork. It's a fork with
patches that give a much increased performance with DirectX 9 games which
aren't merged into the Wine mainline because of the usual bikeshedding
reasons. I use it to play WoW and I get better performance than on Windows.

[https://packages.gentoo.org/packages/app-
emulation/wine-d3d9](https://packages.gentoo.org/packages/app-
emulation/wine-d3d9)

~~~
LoSboccacc
> I get better performance than on Windows

as anecdotal as it might be, I used to get better performance from wine'd
dwarf fortress than with it's osx port, which is interesting I guess.

~~~
tinus_hn
I don’t know how it is today but Microsofts compiler used to produce much
better code than the free compilers used on Linux and Mac OSX

~~~
executesorder66
Just because the compiler is good, doesn't mean the OS's CPU scheduler is any
good. Nor does it mean the graphics drivers for that OS are any good. Same for
the filesystem. etc.

~~~
tinus_hn
I’m not sure how that has anything to do with the difference in performance
between running the Windows version on OSX and running the OSX version on OSX.

------
ryanmarsh
I used to be a big Wine user back when I believed in the potential for a
commodity Linux desktop for normal people. These days I can’t for the life of
me figure out why someone would want to run games on Wine instead of dual
booting to Windows when it’s game time.

~~~
laumars
A few reasons:

    
    
      * License cost
      * HDD / SSD storage space
      * OS performance
      * They might not agree with the EULA
      * Or simply because they just don't don't like Windows.
    

The real question is now that the web has gotten everyone used to the idea of
applications being platform agnostic, why would anyone want to go back to a
Windows lock in?

~~~
alias_neo
All correct. Also, I booted into Windows on Saturday to play a game, it hadn't
been booted in months, so I hat to wait for a forced SP install and Windows
wiped out Grub. Every time I boot back into Windows it kills Grub and I have
to fix it again. Not only did I lose all my gaming time to the updates, I lost
extra time fixing my bootloader because of Windows' aggressive BS. The sooner
I can get it gone the better and I'll free up an entire SSD for games.

~~~
honkycat
I just have two hard drives for this reason, super super annoying.

