For those having problems with circular dependencies inside afdko package - install python-fontpens first
Search Criteria
Package Details: proton-ge-custom 2:GE.Proton9.22-1
Package Actions
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.19 |
First Submitted: | 2020-03-23 23:52 (UTC) |
Last Updated: | 2024-12-30 14:02 (UTC) |
Dependencies (117)
- attr (attr-gitAUR)
- cabextract
- desktop-file-utils (desktop-file-utils-gitAUR)
- fontconfig (fontconfig-gitAUR, fontconfig-ubuntuAUR)
- freetype2 (freetype2-macosAUR, freetype2-gitAUR, freetype2-qdoledAUR)
- gcc-libs (gcc-libs-gitAUR, gccrs-libs-gitAUR, gcc11-libsAUR, gcc-libs-snapshotAUR)
- gettext (gettext-gitAUR)
- lib32-attr
- lib32-fontconfig
- lib32-freetype2
- lib32-gcc-libs (lib32-gcc-libs-gitAUR, lib32-gccrs-libs-gitAUR, lib32-gcc-libs-snapshotAUR)
- lib32-gettext
- lib32-libgudev
- lib32-libpcap
- lib32-libsoup
- lib32-libvpx
- lib32-libxcursor
- lib32-libxi
- lib32-libxkbcommon
- lib32-libxrandr
- lib32-lzoAUR
- lib32-sdl2 (lib32-sdl2-compat-gitAUR)
- lib32-speex
- libgudev
- libpcap (libpcap-gitAUR)
- libsoup
- libvpx (libvpx-full-gitAUR, libvpx-gitAUR)
- libxcursor
- libxi (libxi-gitAUR)
- libxkbcommon (libxkbcommon-gitAUR)
- libxrandr (libxrandr-gitAUR)
- lzo
- python (python37AUR, python311AUR, python310AUR)
- sdl2 (sdl2-compat-gitAUR, sdl2-gitAUR)
- speex (speex-gitAUR)
- steam-native-runtime
- afdkoAUR (afdko-gitAUR) (make)
- alsa-lib (make)
- autoconf (autoconf-gitAUR) (make)
- bison (byacc-bisonAUR, bison-gitAUR) (make)
- clang (llvm-gitAUR, clang-minimal-gitAUR, clang17-binAUR) (make)
- cmake (cmake-gitAUR) (make)
- flex (flex-gitAUR) (make)
- fontforge (fontforge-gitAUR) (make)
- giflib (giflib-gitAUR) (make)
- git (git-gitAUR, git-glAUR) (make)
- glib2-devel (make)
- glslang (glslang-gitAUR) (make)
- gnutls (gnutls-gitAUR) (make)
- gst-plugins-base-libs (gst-plugins-base-libs-gitAUR) (make)
- gtk3 (gtk3-no_deadkeys_underlineAUR, gtk3-classicAUR, gtk3-classic-xfceAUR, gtk3-patched-filechooser-icon-viewAUR) (make)
- lib32-alsa-lib (make)
- lib32-giflib (make)
- lib32-gnutls (make)
- lib32-gst-plugins-base-libs (lib32-gst-plugins-base-libs-gitAUR) (make)
- lib32-gtk3 (make)
- lib32-libpulse (make)
- lib32-libxcomposite (make)
- lib32-libxinerama (make)
- lib32-libxxf86vm (make)
- lib32-mesa (lib32-mesa-minimal-gitAUR, lib32-mesa-amd-bc250AUR, lib32-amdonly-gaming-mesa-gitAUR, lib32-mesa-gitAUR, lib32-mesa-amber) (make)
- lib32-mesa-libgl (lib32-mesa-amd-bc250AUR, lib32-amdonly-gaming-mesa-gitAUR, lib32-mesa-gitAUR, lib32-mesa) (make)
- lib32-opencl-icd-loader (lib32-khronos-ocl-icd-gitAUR, lib32-ocl-icd) (make)
- lib32-rust-libs (rustup-gitAUR, rustup) (make)
- lib32-sdl2 (lib32-sdl2-compat-gitAUR) (make)
- lib32-v4l-utils (make)
- lib32-vulkan-icd-loader (lib32-vulkan-icd-loader-gitAUR) (make)
- libgphoto2 (libgphoto2-gitAUR) (make)
- libpulse (pulseaudio-dummyAUR, libpulse-gitAUR) (make)
- libxcomposite (make)
- libxinerama (libxinerama-randr-gitAUR) (make)
- libxxf86vm (make)
- lld (llvm-gitAUR) (make)
- mesa (mesa-minimal-gitAUR, mesa-gitAUR, mesa-wsl2-gitAUR, amdonly-gaming-mesa-gitAUR, mesa-amd-bc250AUR, mesa-amber) (make)
- mesa-libgl (mesa-gitAUR, mesa-wsl2-gitAUR, amdonly-gaming-mesa-gitAUR, mesa-amd-bc250AUR, mesa) (make)
- meson (meson-gitAUR) (make)
- mingw-w64-gcc (llvm-mingw-w64-toolchain-ucrt-binAUR, llvm-mingw-w64-toolchain-msvcrt-binAUR) (make)
- mingw-w64-toolsAUR (make)
- nasm (nasm-gitAUR) (make)
- opencl-headers (opencl-headers-gitAUR) (make)
- opencl-icd-loaderAUR (khronos-ocl-icd-gitAUR, ocl-icd) (make)
- perl (perl-gitAUR) (make)
- python-pefile (python-pefile-gitAUR) (make)
- rsync (rsync-gitAUR, rsync-reflinkAUR, rsync-reflink-gitAUR) (make)
- rust (rust-nightlyAUR, rustup-gitAUR, rust-nightly-binAUR, rust-gitAUR, rust-beta-binAUR, rustup-stubAUR, rustup) (make)
- sdl2 (sdl2-compat-gitAUR, sdl2-gitAUR) (make)
- unzip (unzip-natspecAUR, unzip-zstdAUR) (make)
- v4l-utils (v4l-utils-gitAUR) (make)
- vulkan-headers (vulkan-headers-gitAUR) (make)
- vulkan-icd-loader (vulkan-icd-loader-gitAUR) (make)
- wayland-protocols (wayland-protocols-gitAUR) (make)
- wget (wget-gitAUR, wurlAUR) (make)
- alsa-lib (optional)
- alsa-plugins (alsa-plugins-gitAUR) (optional)
- giflib (giflib-gitAUR) (optional)
- gnutls (gnutls-gitAUR) (optional)
- gst-plugins-base-libs (gst-plugins-base-libs-gitAUR) (optional)
- gtk3 (gtk3-no_deadkeys_underlineAUR, gtk3-classicAUR, gtk3-classic-xfceAUR, gtk3-patched-filechooser-icon-viewAUR) (optional)
- lib32-alsa-lib (optional)
- lib32-alsa-plugins (optional)
- lib32-giflib (optional)
- lib32-gnutls (optional)
- lib32-gst-plugins-base-libs (lib32-gst-plugins-base-libs-gitAUR) (optional)
- lib32-gtk3 (optional)
- lib32-libpulse (optional)
- lib32-libxcomposite (optional)
- lib32-libxinerama (optional)
- lib32-opencl-icd-loader (lib32-khronos-ocl-icd-gitAUR, lib32-ocl-icd) (optional)
- lib32-v4l-utils (optional)
- lib32-vulkan-icd-loader (lib32-vulkan-icd-loader-gitAUR) (optional)
- libgphoto2 (libgphoto2-gitAUR) (optional)
- libpulse (pulseaudio-dummyAUR, libpulse-gitAUR) (optional)
- libxcomposite (optional)
- libxinerama (libxinerama-randr-gitAUR) (optional)
- opencl-icd-loaderAUR (khronos-ocl-icd-gitAUR, ocl-icd) (optional)
- v4l-utils (v4l-utils-gitAUR) (optional)
- vulkan-icd-loader (vulkan-icd-loader-gitAUR) (optional)
Required by (7)
- arch-gaming-meta (optional)
- cheat-engine-zh (optional)
- dxvk-gplasync-bin (requires proton) (optional)
- dxvk-gplasync-bin-git (requires proton) (optional)
- latencyflex-proton-ge-custom
- legendary (requires proton) (optional)
- rare (requires proton) (optional)
Sources (12)
- 0001-AUR-Pkgbuild-changes.patch
- 0002-AUR-Do-not-update-cargo-crates.patch
- 0003-AUR-Remove-kaldi-openfst-vosk-api-modules-because-of.patch
- 0004-AUR-Copy-DLL-dependencies-of-32bit-libvkd3d-dlls-int.patch
- 0005-AUR-Strip-binaries-early.patch
- 0006-AUR-Fix-hwnd-redefinition.patch
- 0007-AUR-Disable-incompatible-pointer-types-in-Wine-GCC-1.patch
- https://dl.winehq.org/wine/wine-gecko/2.47.4/wine-gecko-2.47.4-x86.tar.xz
- https://dl.winehq.org/wine/wine-gecko/2.47.4/wine-gecko-2.47.4-x86_64.tar.xz
- https://github.com/madewokherd/wine-mono/releases/download/wine-mono-9.3.1/wine-mono-9.3.1-x86.tar.xz
- https://github.com/madewokherd/xalia/releases/download/xalia-0.4.5/xalia-0.4.5-net48-mono.zip
- proton-ge-custom
Latest Comments
« First ‹ Previous 1 .. 7 8 9 10 11 12 13 14 15 16 17 .. 34 Next › Last »
flakusha commented on 2023-01-15 14:30 (UTC)
loathingkernel commented on 2023-01-15 12:09 (UTC)
@mjevans
I have just rebuilt it correctly on my GitHub CI, see here https://github.com/loathingKernel/PKGBUILDs/actions/runs/3921270149
Whatever it is, it is not something that occurs when building in a clean environment, either like the CI above or a clean CHROOT in your system.
loathingkernel commented on 2023-01-15 01:48 (UTC) (edited on 2023-01-15 01:50 (UTC) by loathingkernel)
@mjevans Thank you for the information. I am very hesitant to update any submodules past what upstream specifies as to keep as close as possible with it. That's also one reason that this PKGBUILD also builds GStreamer while it used to use the one provided by the system (the other one was the different build options).
I'll see if I can reproduce it but I am unsure how to satisfy both of those. If an exact commit that fixes it is known, I would be happy to cherry-pick it.
As for the mono-repo, upstream uses the github mirrors, I might update to those and wait for the changes to trickle down at some point.
mjevans commented on 2023-01-15 01:40 (UTC)
mjevans commented on 2023-01-15 01:30 (UTC)
I already opened a bug on GST Plugins before reading here since it looked pretty clear cut that there's at least some sort of issue there too.
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1751
../src-gst_bad/ext/zxing/gstzxing.cpp: In function 'GstFlowReturn gst_zxing_transform_frame_ip(GstVideoFilter*, GstVideoFrame*)':
../src-gst_bad/ext/zxing/gstzxing.cpp:370:33: error: no matching function for call to 'ToUtf8(std::string)'
370 | TextUtfEncoding::ToUtf8 (result.text ()).c_str (),
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
In file included from ../src-gst_bad/ext/zxing/gstzxing.cpp:64:
/usr/include/ZXing/TextUtfEncoding.h:15:28: note: candidate: 'std::string ZXing::TextUtfEncoding::ToUtf8(std::wstring_view)'
15 | [[deprecated]] std::string ToUtf8(std::wstring_view str);
| ^~~~~~
/usr/include/ZXing/TextUtfEncoding.h:15:53: note: no known conversion for argument 1 from 'std::string' {aka 'std::__cxx11::basic_string<char>'} to 'std::wstring_view' {aka 'std::basic_string_view<wchar_t>'}
Also of note, the PKGBUILD ends up pointing to GST-BAD 1.18.6 when 1.21.90 is probably the most recent tag.
for submodule in "${_submodules[@]}"; do
git submodule init "${submodule#*::}"
git submodule set-url "${submodule#*::}" "$srcdir"/"${submodule%::*}"
git -c protocol.file.allow=always submodule update "${submodule#*::}"
done
Should this section also do something to... https://stackoverflow.com/questions/1777854/how-can-i-specify-a-branch-tag-when-adding-a-git-submodule Specify a branch tag, which is now supported for submodules?
grep plugins-bad -A3 ~/.cache/yay/proton-ge-custom/src/proton-ge-custom/.git/config
[submodule "gst-plugins-bad"]
active = true
url = ~/.cache/yay/proton-ge-custom/src/gst-plugins-bad
[submodule "gst-plugins-ugly"]
...
git submodule status gst-plugins-ugly/
8f97a05e1d2cb3cd2548cde2e70ea6d335040f59 gst-plugins-ugly (1.18.6)
It also seems gstreamer's now using a mono-repo. https://gitlab.freedesktop.org/gstreamer/gstreamer/-/tree/main/subprojects/gst-plugins-bad
https://gstreamer.freedesktop.org/src/gst-plugins-bad/ has gst-plugins-bad-1.21.90.tar.xz
loathingkernel commented on 2022-12-17 19:33 (UTC)
@NeikoNemo, you are using rustup
, building with it is outside the scope of the PKGBUILD.
NekoiNemo commented on 2022-12-17 18:24 (UTC)
I had an odd issue when installing from scratch: install failed because Cargo couldn't pick the correct version of gstreamer from Crates.io and tried to use old one which didn't match the requirements from one of the plugins. In the end i had to manually do cargo search gstreamer
(and also do rustup update
, but i'm not sure if this was necessary) to force crates.io index update, after which proton-ge-custom was installed successfully.
Maybe there's some installation step missing?
Score_Under commented on 2022-12-02 17:04 (UTC)
Fails to build on the new version of glib2:
/usr/include/glib-2.0/glib/ghash.h:165:38: error: invalid conversion from ‘const void*’ to ‘const char*’ [-fpermissive]
165 | #define g_str_equal(v1, v2) (strcmp ((gconstpointer) (v1), (gconstpointer) (v2)) == 0)
| ^~~~~~~~~~~~~~~~~~~~
| |
| const void*
../src-gst_bad/ext/modplug/gstmodplug.cc:475:7: note: in expansion of macro ‘g_str_equal’
475 | if (g_str_equal (format, GST_AUDIO_NE (S32)))
| ^~~~~~~~~~~
ms178 commented on 2022-11-07 23:14 (UTC)
@loathingkernel
I've just tried the official 7.40 package, the same problem persists - the game would not even load the EA app.
loathingkernel commented on 2022-11-07 10:10 (UTC)
@ms178 Does the problem occur with proton-ge-custom 7.39 from GE's release downloads or it works correctly with that?
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 throughsteam-native
).This PKGBUILD uses
CFLAGS
,CXXFLAGS
andLDFLAGS
hardcoded in the PKGBUILD itself. By default it uses the sameC[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
andCXXFLAGS
specific to your system this package won't offer much in terms of performance as the upstream build flags already target thenocona
(Core2) architecture. It will possibly perform worse than upstream. The only benefits you get is not depending onsteam linux runtime
as well as linking to Arch libraries. If you still want to build it, you can uncomment the relevant lines in thePKGBUILD
to enableCFLAGS
andCXXFLAGS
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 toafdko
(or any of itspython-
dependencies, they are pulled in due toafdko
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 thePROTON_USER_COMPAT_DATA
env variable to1
.This package requires a Rust 32 bit target, please run
rustup target install i686-unknown-linux-gnu
BEFORE posting any issues if you're usingrustup
.