mirror of
https://github.com/ValveSoftware/Proton.git
synced 2024-12-27 07:05:46 +03:00
Compatibility tool for Steam Play based on Wine and additional components
dxvk@e6814332e7 | ||
dxvk.win32 | ||
dxvk.win64 | ||
freetype2@67a42aa887 | ||
glslang | ||
libjpeg-turbo@bf6c774305 | ||
libpng@b78804f9a2 | ||
lsteamclient | ||
openal-soft@ce6076091b | ||
SDL-mirror@14531cf0fc | ||
vrclient_x64 | ||
wine@bebd0f3395 | ||
.gitignore | ||
.gitmodules | ||
build_dxvk.sh | ||
build_proton.sh | ||
filelock.py | ||
LICENSE.lin | ||
LICENSE.osx | ||
proton | ||
README | ||
toolmanifest.vdf |
Proton is a tool for use with the Steam client which allows games which are exclusive to Windows to run on Linux and macOS operating systems. It uses Wine to facilitate this. To build Proton for Linux, set up a Debian machine with the Steam chroots as documented in the Steam Runtime repository: https://github.com/ValveSoftware/steam-runtime You should then be able to build Proton using the "build_proton.sh" script. Some package installation will be necessary, for example the mingw-w64 cross compiler will be needed, as well as various runtime libraries such as Vulkan. Examine the output near the end of build/wine.win{64,32}/config.log to ensure you have all of the relevant libraries installed in each chroot. TODO: Better document setting up the build machine. To build Proton for macOS, install the latest Xcode command line tools, as well as cmake (for openal-soft) and a recent nasm (for libjpeg-turbo). You can use a packager like Homebrew to find these packages. Then run "build_proton.sh". Once built, the dist/ directory will contain the files which can be distributed through Steam. For testing purposes, you should be able to clear out the files in your steamapps/common/Proton directory and replace them with the contents of dist/. The proton script will unpack the files on first run. NOTE: For now, dxvk requires build-time components that are too new for Debian 9. It's recommended to build the DLLs on Arch Linux, where dxvk is actively being developed. This may be resolved in dxvk in the future, or may be worked around by using a newer Debian release. See comments in build_proton.sh.