Package Details: proton-experimental 1:9.0.20240522-1

Git Clone URL: https://aur.archlinux.org/proton-experimental.git (read-only, click to copy)
Package Base: proton-experimental
Description: Compatibility tool for Steam Play based on Wine and additional components, experimental branch
Upstream URL: https://github.com/ValveSoftware/Proton
Keywords: dxvk proton steam valve vkd3d wine
Licenses: custom
Provides: proton
Submitter: loathingkernel
Maintainer: loathingkernel
Last Packager: loathingkernel
Votes: 2
Popularity: 0.000315
First Submitted: 2021-10-18 20:26 (UTC)
Last Updated: 2024-05-23 20:25 (UTC)

Dependencies (114)

Required by (4)

Sources (11)

Pinned Comments

loathingkernel commented on 2021-10-22 11:44 (UTC) (edited on 2022-06-15 14:13 (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

loathingkernel commented on 2023-11-08 15:15 (UTC) (edited on 2023-11-11 23:37 (UTC) by loathingkernel)

@lem0nify because of a component, kaldi. It is using an outdated way in its CMake build system to find CUDA. This results in not finding the proper paths. Even if they are hardcoded and found, build will later fail when trying to build the 32bit version of kaldi. I don't know exactly how it is happening, never looked into it, but it is trying to find the 32bit version of the compiler and it fails. kaldi's CMake build system doesn't offer a convenient (or any at all) way to disable discovering CUDA and I can't go around patching kaldi's build system too for something that would make the package not universal in the first place.

lem0nify commented on 2023-11-08 15:07 (UTC)

@loathingkernel, ok, but what is the reason of this failure? Why does CUDA interfere with the build?

loathingkernel commented on 2023-11-08 08:38 (UTC) (edited on 2023-11-08 08:39 (UTC) by loathingkernel)

@lem0nify You have three choices.

Either of these work around the failure

lem0nify commented on 2023-11-07 23:57 (UTC) (edited on 2023-11-07 23:59 (UTC) by lem0nify)

-- The C compiler identification is GNU 13.2.1
-- The CXX compiler identification is GNU 13.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /home/lem0nify/src/aur/proton-experimental/src/wrappers/i686-pc-linux-gnu-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /home/lem0nify/src/aur/proton-experimental/src/wrappers/i686-pc-linux-gnu-g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Warning (dev) at CMakeLists.txt:25 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found PythonInterp: /usr/bin/python (found version "3.11.5")
-- Running gen_cmake_skeleton.py
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found CUDAToolkit: /opt/cuda/include (found version "12.3.52")
CMake Warning (dev) at CMakeLists.txt:168 (find_package):
  Policy CMP0146 is not set: The FindCUDA module is removed.  Run "cmake
  --help-policy CMP0146" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.

This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found CUDA: /opt/cuda (found version "12.3")
-- Found NvToolExt: /opt/cuda/include
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find CUB (missing: CUB_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  cmake/FindCUB.cmake:17 (find_package_handle_standard_args)
  CMakeLists.txt:200 (find_package)


-- Configuring incomplete, errors occurred!
make[1]: *** [../proton/Makefile.in:471: /home/lem0nify/src/aur/proton-experimental/src/build/.kaldi-configure32] Error 1
make[1]: Leaving directory '/home/lem0nify/src/aur/proton-experimental/src/build'
make: *** [../proton/Makefile.in:1274: dist] Error 2
==> ERROR: A failure occurred in build().
    Aborting...

What is CUB and how to let it find it?

loathingkernel commented on 2022-01-22 19:47 (UTC)

is this even working off of experimental branch? i dont know much about git branches but if i run git branch in the proton dir it says its on proton 6.3 branch not experiemental

Yes it is working off of the experimental branch. In which proton dir are you issuing git branch?

also i dont think dxvk/wine/vkd3d are using the experimental branch

Yes they are, the specific commits are referenced by the submodules.

bgkillas commented on 2022-01-22 19:42 (UTC)

also i dont think dxvk/wine/vkd3d are using the experimental branch

bgkillas commented on 2022-01-22 19:29 (UTC)

is this even working off of experimental branch? i dont know much about git branches but if i run git branch in the proton dir it says its on proton 6.3 branch not experiemental

loathingkernel commented on 2021-10-22 11:44 (UTC) (edited on 2022-06-15 14:13 (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.

ptr1337 commented on 2021-10-19 09:19 (UTC) (edited on 2021-10-19 09:30 (UTC) by ptr1337)

Prebuilt packages can be found here: https://mirror.cachyos.org/?search=proton

how to add this repo:

https://wiki.cachyos.org/en/home/Repo

The packages are built with x86-64 and the optimized x86-64-v3 if your cpu supports that.