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: 40
Popularity: 2.15
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 .. 20 21 22 23 24 25 26 27 28 29 30 .. 34 Next › Last »

loathingkernel commented on 2021-05-22 09:32 (UTC) (edited on 2021-05-22 09:34 (UTC) by loathingkernel)

The build is still running but it got past wine just fine. Check that you have all the prerequisites such as base and base-devel installed as well as updated to stable repos. I do not test with testing.

dekatria commented on 2021-05-22 09:14 (UTC) (edited on 2021-05-22 09:14 (UTC) by dekatria)

I trying to update the package using trizen, it just runs the PKGBUILD for 6.8-GE-2 proton-ge-custom: 1:6.5.GE.2-2 ==> 1:6.8.GE.2-2

loathingkernel commented on 2021-05-22 09:02 (UTC) (edited on 2021-05-22 09:04 (UTC) by loathingkernel)

How are you building the package? winegcc couldn't find ld, something is likely broken with your Arch install. I am going to run a build locally to verify.

dekatria commented on 2021-05-22 08:37 (UTC)

I seem to be facing a missing dependency when trying to build obj-wine32, anyone know how to solve this issue?

tools/winegcc/winegcc -o dlls/dwrite/dwrite.so --wine-objdir . -m32 -fno-PIC -Wl,-z,notext \
  -fasynchronous-unwind-tables -munix -shared \
  ../proton-ge-custom/src/build/src-wine/dlls/dwrite/dwrite.spec \
  dlls/dwrite/freetype.o -lntdll dlls/winecrt0/libwinecrt0.a libs/port/libwine_port.a -ldl \
  -L../proton-ge-custom/src/build/dst-gst_orc32/lib -L../proton-ge-custom/src/build/dst-gstreamer32/lib -L../proton-ge-custom/src/build/dst-gst_base32/lib -L../proton-ge-custom/src/build/dst-faudio32/lib -L../proton-ge-custom/src/build/dst-jxrlib32/lib -Wl,-rpath-link=../proton-ge-custom/src/build/dst-gst_orc32/lib -Wl,-rpath-link=../proton-ge-custom/src/build/dst-gstreamer32/lib -Wl,-rpath-link=../proton-ge-custom/src/build/dst-gst_base32/lib -Wl,-rpath-link=../proton-ge-custom/src/build/dst-faudio32/lib -Wl,-rpath-link=../proton-ge-custom/src/build/dst-jxrlib32/lib  -Wl,-O1,--sort-common,--as-needed
winegcc: Could not find ld
make[3]: *** [Makefile:141216: dlls/dnsapi/dnsapi.so] Error 2
make[3]: *** Waiting for unfinished jobs....
winegcc: Could not find ld
make[3]: *** [Makefile:150417: dlls/dwrite/dwrite.so] Error 2
In file included from include/propidl.h:56,
                 from ../proton-ge-custom/src/build/src-wine/include/objbase.h:512,
                 from ../proton-ge-custom/src/build/src-wine/include/ole2.h:25,
                 from include/dhtmled.h:13,
                 from ../proton-ge-custom/src/build/src-wine/dlls/dhtmled.ocx/edit.c:22:
../proton-ge-custom/src/build/src-wine/dlls/dhtmled.ocx/edit.c: In function ‘DHTMLEdit_GetIDsOfNames’:
include/oaidl.h:1541:12: warning: ‘ti’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 1541 |     return This->lpVtbl->GetIDsOfNames(This,rgszNames,cNames,pMemId);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../proton-ge-custom/src/build/src-wine/dlls/dhtmled.ocx/edit.c:347:16: note: ‘ti’ was declared here
  347 |     ITypeInfo *ti;
      |                ^~
In file included from include/propidl.h:56,
                 from ../proton-ge-custom/src/build/src-wine/include/objbase.h:512,
                 from ../proton-ge-custom/src/build/src-wine/include/ole2.h:25,
                 from include/dhtmled.h:13,
                 from ../proton-ge-custom/src/build/src-wine/dlls/dhtmled.ocx/edit.c:22:
../proton-ge-custom/src/build/src-wine/dlls/dhtmled.ocx/edit.c: In function ‘DHTMLEdit_Invoke’:
include/oaidl.h:1544:12: warning: ‘ti’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 1544 |     return This->lpVtbl->Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../proton-ge-custom/src/build/src-wine/dlls/dhtmled.ocx/edit.c:363:16: note: ‘ti’ was declared here
  363 |     ITypeInfo *ti;
      |                ^~
make[2]: *** [../proton-ge-custom/build/makefile_base.mak:723: ../proton-ge-custom/src/build/.wine-build32] Error 2
make[1]: *** [../proton-ge-custom/build/makefile_base.mak:89: container-build] Error 2

PedroHLC commented on 2021-05-18 23:46 (UTC)

Or check with "which"+"pacman -Qo" if the pip executable comes from python-pip...

loathingkernel commented on 2021-05-18 22:40 (UTC)

Then that was it. Thanks for figuring out the issue. I will see how I can warn users about it. Maybe force-failling the build if pip install fails.

gyscos commented on 2021-05-18 22:38 (UTC)

It happened when I had afdko installed system-wide (maybe it could have interfered with the pip install?). After removing afdko system-wide, it worked fine.

loathingkernel commented on 2021-05-18 21:08 (UTC) (edited on 2021-05-18 22:41 (UTC) by loathingkernel)

pefile should be installed through pip at this line and it is only a build time dependency. If afdko worked it is weird for pefile to fail. I will look again as there are a few more under the radar issues with the build. Due to changes in wine file structure, broken symlinks are copied on updated prefixes. I am testing a fix right now.

gyscos commented on 2021-05-18 20:44 (UTC)

I think the build now depends on python-pefile:

Traceback (most recent call last):
  File "/run/user/60039/paru/clone/proton-ge-custom/src/proton-ge-custom/make/pefixup.py", line 6, in <module>
    import pefile
ModuleNotFoundError: No module named 'pefile'
make[1]: *** [../proton-ge-custom/build/makefile_base.mak:641: /run/user/60039/paru/clone/proton-ge-custom/src/build/.lsteamclient-fixup32] Error 123
make[1]: Leaving directory '/run/user/60039/paru/clone/proton-ge-custom/src/build'
make: *** [../proton-ge-custom/build/makefile_base.mak:20: nested_make] Error 2

loathingkernel commented on 2021-05-18 17:56 (UTC)

I encountered that issue with openexr myself, while updating the PKGBUILD and I decided to force-disable it as it doesn't seem particularly useful, just something that can be found in a non-chroot compilation. For me the new version builds successfully albeit it still needs some beautification work. I will update the PKGBUILD later today if everthing goes smoothly.