Package Details: proton 2:9.0.3.5-1

Git Clone URL: https://aur.archlinux.org/proton.git (read-only, click to copy)
Package Base: proton
Description: Compatibility tool for Steam Play based on Wine and additional components
Upstream URL: https://github.com/ValveSoftware/Proton
Keywords: dxvk proton steam valve vkd3d wine
Licenses: custom
Submitter: Forty-Bot
Maintainer: loathingkernel
Last Packager: loathingkernel
Votes: 111
Popularity: 1.18
First Submitted: 2018-08-22 01:23 (UTC)
Last Updated: 2024-11-16 17:23 (UTC)

Dependencies (115)

Required by (4)

Sources (10)

Pinned Comments

loathingkernel commented on 2020-10-22 08:43 (UTC) (edited on 2022-06-15 14:11 (UTC) by loathingkernel)

Notes about this package

  • If you encounter issues while using this package, please contact me here first before reporting an issue to the upstream repository. Don't post logs, link to them. If you are using Manjaro, another derivative or an AUR helper, please mention it, I DO NOT TEST AGAINST THEM AND I CANNOT KNOW WHAT MIGHT BE WRONG WITH THE DISTRO/HELPER OF YOUR CHOICE.

  • It takes a LOT of time and space to build. Building with multiple jobs helps but might cause builds to fail in rare cases. Be sure to have at least 16GB of RAM if you are building on tmpfs

  • It is NOT built against Steam Linux Runtime (Sniper, Soldier, etc) and as such it doesn't require it. Still, is detected by Steam and works properly (preferable through steam-native).

  • This PKGBUILD uses CFLAGS, CXXFLAGS and LDFLAGS hardcoded in the PKGBUILD itself. By default it uses the same C[XX]FLAGS as upstream, namely -march=nocona and -mtune=core-avx2. To change them you will have to edit the PKGBUILD itself. Due to the nature of this package some flags can cause it to fail to build or not function properly. I try to filter them out but it is based on testing. If you have a feeling that compile-time options are involved in the issues you are having please include them in your comment. Currently the filtered options are -fstack-protector-{,-strong,-all}(dxvk and vkd3d only), -fno-plt, -z,relro, -z,now. Also the use of AVX instructions is disabled through -mno-avx.

  • There have been reports with afdko failing to find its dependencies during building. I can't do anything about that as I don't maintain that package. It is NOT an issue with this package and I haven't found a way to not depend on it. Please don't report fails due to afdko (or any of its python- dependencies, they are pulled in due to afdko and only used by that), it has been discussed enough. There are possible workarounds in the comments.

  • It contains a patch to store game prefixes in the main Steam Library under $HOME/.local/share/Steam/steamapps/compatdata. It helps with isolation of game prefixes between users and works around issues with shared libraries on NTFS partitions due to drive symlinks. To enable it, set the PROTON_USER_COMPAT_DATA env variable to 1.

  • This package requires a Rust 32 bit target, please run rustup target install i686-unknown-linux-gnu BEFORE posting any issues if you're using rustup.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 .. 24 Next › Last »

loathingkernel commented on 2024-02-21 23:27 (UTC) (edited on 2024-02-21 23:27 (UTC) by loathingkernel)

@redfast00 Builds fine here

redfast00 commented on 2024-02-20 21:00 (UTC)

It appears that git-lfs is also a dependency to build this:

Cloning into '/home/user/.cache/yay/proton/src/proton/gstreamer/subprojects/gst-integration-testsuites/medias'...
remote: Enumerating objects: 54, done.
remote: Counting objects: 100% (16/16), done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 54 (delta 0), reused 12 (delta 0), pack-reused 38
Receiving objects: 100% (54/54), 40.98 KiB | 437.00 KiB/s, done.
Resolving deltas: 100% (3/3), done.
remote: Enumerating objects: 1330, done.
remote: Counting objects: 100% (59/59), done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 1330 (delta 23), reused 42 (delta 18), pack-reused 1271
Receiving objects: 100% (1330/1330), 1.31 MiB | 1.36 MiB/s, done.
Resolving deltas: 100% (43/43), done.
git-lfs filter-process: line 1: git-lfs: command not found
fatal: the remote end hung up unexpectedly
fatal: Unable to checkout '06f5a5a9bad01b5cf76184aee4f430c834a9dac3' in submodule path 'gstreamer/subprojects/gst-integration-testsuites/medias'
fatal: Failed to recurse into submodule path 'gstreamer'
==> ERROR: A failure occurred in prepare().
    Aborting...
 -> error making: proton-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
proton - exit status 4

loathingkernel commented on 2023-12-23 17:46 (UTC) (edited on 2023-12-23 17:48 (UTC) by loathingkernel)

@killermoehre Although might I suggest the alternative of wine-ge-custom which is closer to actual wine and a drop-in replacement for it without the Steam bits and doesn't enforce some choices that only make sense inside of Steam's environment? There are a lot of hidden caveats which I am too busy to iterate over right now.

killermoehre commented on 2023-12-23 17:40 (UTC)

@loathingkernel Looks promising. I will check the proton script as well and hack something together with some shell exec scripts.

loathingkernel commented on 2023-12-23 17:37 (UTC) (edited on 2023-12-23 17:38 (UTC) by loathingkernel)

@killermoehre, no, here is an example of how I use it. Depending on your use-case you might need more than that. But this will allow you to use it as a replacement for wine without relying on the proton script.

    pfx='/usr/share/steam/compatibilitytools.d/proton/dist'
    export PATH="$pfx/bin/:$PATH"
    export WINEDLLPATH="$pfx/lib64/wine:$pfx/lib/wine"
    export LD_LIBRARY_PATH="$pfx/lib64/:$pfx/lib/"
    export GST_PLUGIN_SYSTEM_PATH_1_0="$pfx/lib64/gstreamer-1.0:$pfx/lib/gstreamer-1.0"

killermoehre commented on 2023-12-23 17:33 (UTC)

@loathingkernel I use Arch, I'm always on my own. What variables do we talk here? WINEPREFIX? WINEARCH?

loathingkernel commented on 2023-12-23 17:31 (UTC) (edited on 2023-12-23 17:33 (UTC) by loathingkernel)

@killermoehre I would very strongly advise against it, and even more so using symlinks. With proper env variables for library path etc, yes and I sometimes use it as such myself, but if something doesn't work with symlinks you are absolutely on your own.

killermoehre commented on 2023-12-23 17:29 (UTC)

Hi,

can this package be used as replacement (with the proper symlinks) for wine itself?

vladnick commented on 2023-12-15 16:24 (UTC) (edited on 2023-12-15 16:26 (UTC) by vladnick)

Can someone help me out? I have not been able to update proton for a while now, and the error it gives me is mystifying. I've tried several packet managers (usually it's paru) and I am running Manjaro (kernel 6.6.5-3) if that's any help.

Here's the problematic part:

Receiving objects: 100% (29/29), 7.28 KiB | 7.28 MiB/s, done.
fatal: unable to access 'https://github.com/KhronosGroup/Vulkan-Loader/': Could not resolve host: github.com
fatal: could not fetch 0af4d400ce1843bda52ef15072df585a414ab079 from promisor remote
fatal: Unable to checkout '538b2676eaac29565e4f1034a6f8a59ce158213d' in submodule path 'Vulkan-Loader'
==> ERROR: A failure occurred in prepare().
    Aborting...
error: failed to build 'proton-1:8.0.4.3-3': 
error: packages failed to build: proton-1:8.0.4.3-3
    ~  ping github.com                                                                                                                                                         1 ✘  8m 21s  
PING github.com (140.82.121.3) 56(84) bytes of data.
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=1 ttl=47 time=102 ms
64 bytes from 140.82.121.3: icmp_seq=2 ttl=47 time=101 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=3 ttl=47 time=99.9 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=4 ttl=47 time=100 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=5 ttl=47 time=103 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=6 ttl=47 time=101 ms
^C64 bytes from 140.82.121.3: icmp_seq=7 ttl=47 time=101 ms

--- github.com ping statistics ---
7 packets transmitted, 7 received, 0% packet loss, time 15116ms
rtt min/avg/max/mdev = 99.894/101.043/103.329/1.052 ms

baggygenes commented on 2023-12-10 17:15 (UTC) (edited on 2023-12-10 17:15 (UTC) by baggygenes)

@loathingkernel ah, apologies, I had forgotten about rustup controlling installation versions. I also now see the note in the sticky, so apologies for not seeing that!