Package Details: proton-ge-custom 2:GE.Proton9.22-1

Git Clone URL: https://aur.archlinux.org/proton-ge-custom.git (read-only, click to copy)
Package Base: proton-ge-custom
Description: Compatibility tool for Steam Play based on Wine and additional components, GloriousEggroll's custom build
Upstream URL: https://github.com/GloriousEggroll/proton-ge-custom
Keywords: dxvk proton steam valve vkd3d wine
Licenses: custom
Provides: proton
Submitter: loathingkernel
Maintainer: loathingkernel
Last Packager: loathingkernel
Votes: 41
Popularity: 3.11
First Submitted: 2020-03-23 23:52 (UTC)
Last Updated: 2024-12-30 14:02 (UTC)

Dependencies (117)

Required by (7)

Sources (12)

Pinned Comments

loathingkernel commented on 2023-10-12 10:43 (UTC) (edited on 2023-10-12 10:45 (UTC) by loathingkernel)

@rekman, thank you for looking into CUDA issues, at least it gives me an idea on how to fix it. That being said, my position remains to build it in a clean chroot, away from the locally installed packages. It is not feasible for me to carry patches for the build systems of various subprojects in the long run.

By enabling the 0003-AUR-Remove-kaldi-openfst-vosk-api-modules-because-of patch, you lose voice recognition which I assume is not that big of a loss as I haven't encountered a use for it, so I think it is an acceptable alternative.

patlefort commented on 2022-09-22 00:33 (UTC)

Compilation will fail if you happen to have jwasm installed, due to vulkan loader. Workaround: uninstall jwasm or add this line to prepape() in the PKGBUILD:

sed -i 's/VULKAN_LOADER_CMAKE_ARGS = -DUSE_MASM=OFF/VULKAN_LOADER_CMAKE_ARGS = -DUSE_MASM=OFF -DJWASM_FOUND=0/' "$srcdir/$pkgname/Makefile.in"

loathingkernel commented on 2020-11-21 10:28 (UTC) (edited on 2022-09-13 10:55 (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.

  • If you are not using CFLAGS and CXXFLAGS specific to your system this package won't offer much in terms of performance as the upstream build flags already target the nocona (Core2) architecture. It will possibly perform worse than upstream. The only benefits you get is not depending on steam linux runtime as well as linking to Arch libraries. If you still want to build it, you can uncomment the relevant lines in the PKGBUILD to enable CFLAGS and CXXFLAGS similar to the upstream.

  • 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 .. 25 26 27 28 29 30 31 32 33 34 Next › Last »

juxuanu commented on 2020-12-07 16:08 (UTC) (edited on 2020-12-07 16:08 (UTC) by juxuanu)

Fails to build in clean chroot:

Error: Cannot open face ../../proton-ge-custom/wine/fonts/courier.ttf

Any suggestions?

Dennis commented on 2020-11-22 09:19 (UTC)

@loathingkernel: Yep, ty, noticed the outdated mingw-w64 packages right after posting my previous comment (see edits). So yeah, after updating those, the build succeeded.

loathingkernel commented on 2020-11-22 08:58 (UTC) (edited on 2020-11-22 09:06 (UTC) by loathingkernel)

@J-StrY Not an issue with this package, read the pinned comment please.

@Dennis I have only tested with Mingw-w64 10 which has been out since Oct 23, your system is at mingw-w64 8.2 so I am going to label it a misconfiguration or lack of updates on your side of things for now.

Dennis commented on 2020-11-22 08:38 (UTC) (edited on 2020-11-22 09:17 (UTC) by Dennis)

EDIT2: Ok yes, with the mingw-w64- packages from the official repo, the package build process finished successfully.

EDIT: Nevermind... I had pretty old mingw-w64- packages, will update those and try building again.

I am getting these build errors before it stops trying to finish makepkg.

FAILED: src/util/libutil.a.p/log_log.cpp.obj i686-w64-mingw32-g++ -Isrc/util/libutil.a.p -Isrc/util -I../../proton-ge-custom/dxvk/src/util -I../../proton-ge-custom/dxvk/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++17 -O3 -DNOMINMAX -msse -msse2 -march=x86-64 -mtune=generic -O2 -mno-avx -MD -MQ src/util/libutil.a.p/log_log.cpp.obj -MF src/util/libutil.a.p/log_log.cpp.obj.d -o src/util/libutil.a.p/log_log.cpp.obj -c ../../proton-ge-custom/dxvk/src/util/log/log.cpp ../../proton-ge-custom/dxvk/src/util/log/log.cpp: In constructor ‘dxvk::Logger::Logger(const string&)’: ../../proton-ge-custom/dxvk/src/util/log/log.cpp:13:69: error: no matching function for call to ‘std::basic_ofstream<char>::basic_ofstream(const wchar_t*)’ m_fileStream = std::ofstream(str::tows(path.c_str()).c_str());

/usr/i686-w64-mingw32/include/c++/8.2.0/fstream:771:32: error: request for member ‘make_preferred’ in ‘std::declval<const wchar_t*&>()’, which is of non-class type ‘const wchar_t*’ template<typename _Path, typename _Require = _If_fs_path<_Path>>

FAILED: src/util/libutil.a.p/config_config.cpp.obj i686-w64-mingw32-g++ -Isrc/util/libutil.a.p -Isrc/util -I../../proton-ge-custom/dxvk/src/util -I../../proton-ge-custom/dxvk/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++17 -O3 -DNOMINMAX -msse -msse2 -march=x86-64 -mtune=generic -O2 -mno-avx -MD -MQ src/util/libutil.a.p/config_config.cpp.obj -MF src/util/libutil.a.p/config_config.cpp.obj.d -o src/util/libutil.a.p/config_config.cpp.obj -c ../../proton-ge-custom/dxvk/src/util/config/config.cpp ../../proton-ge-custom/dxvk/src/util/config/config.cpp: In static member function ‘static dxvk::Config dxvk::Config::getUserConfig()’: ../../proton-ge-custom/dxvk/src/util/config/config.cpp:616:61: error: no matching function for call to ‘std::basic_ifstream<char>::basic_ifstream(const wchar_t*)’ std::ifstream stream(str::tows(filePath.c_str()).c_str());

/usr/i686-w64-mingw32/include/c++/8.2.0/fstream:545:32: error: request for member ‘make_preferred’ in ‘std::declval<const wchar_t*&>()’, which is of non-class type ‘const wchar_t*’ template<typename _Path, typename _Require = _If_fs_path<_Path>>

ninja: build stopped: subcommand failed. make[1]: [../proton-ge-custom/build/makefile_base.mak:1805: dxvk32] Error 1 make[1]: Leaving directory '/mnt/RAM/proton-ge-custom/src/build' make: [../proton-ge-custom/build/makefile_base.mak:17: nested_make] Error 2 ==> ERROR: A failure occurred in build(). Aborting...

J-StrY commented on 2020-11-22 08:33 (UTC) (edited on 2020-11-22 09:54 (UTC) by J-StrY)

EDIT2: NVM had a typo in my config flags

EDIT: As @loathingkernel pointed out this is not issue with the package. I'm now getting:

libmp3lame.so: error adding symbols: file in wrong format

Guessing this is probably because of my CFLAGS as pointed above - will try changing it.

python-fontparts was required dependency on my build.

loathingkernel commented on 2020-11-21 10:28 (UTC) (edited on 2022-09-13 10:55 (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.

  • If you are not using CFLAGS and CXXFLAGS specific to your system this package won't offer much in terms of performance as the upstream build flags already target the nocona (Core2) architecture. It will possibly perform worse than upstream. The only benefits you get is not depending on steam linux runtime as well as linking to Arch libraries. If you still want to build it, you can uncomment the relevant lines in the PKGBUILD to enable CFLAGS and CXXFLAGS similar to the upstream.

  • 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.

gyscos commented on 2020-11-20 18:34 (UTC)

Aah - I did have lib32-rust-libs, but I guess maybe the rustc toolchain installed by rustup just ignores it and required me to install it separately? :shrug:

Anywoo, 1:5.21.GE.1-2 now installed properly, thanks so much for the support! :)

loathingkernel commented on 2020-11-20 08:54 (UTC) (edited on 2020-11-20 09:19 (UTC) by loathingkernel)

@gyscos I am not well versed in rust but when I encountered a similar issue, installing lib32-rust-libs solved it for me. It is included in the dependencies. Could this be some configuration on your side?

Edit: Since you are using rustup, that seems to be the cause, as your rust installation is not managed by pacman.

gyscos commented on 2020-11-20 04:06 (UTC)

Ah seems like it needs the i686-unknown-linux-gnu target for rust as well; though I'm not sure how to specify this in a PKGBUILD? I had to run:

rustup target add i686-unknown-linux-gnu

loathingkernel commented on 2020-11-19 21:39 (UTC)

@gyscos makes sense, since it seems like vkd3d has to be explicitly disabled in wine configure. I am going to push a new release of the package that disables it.