Proton
Proton copied to clipboard
GLIBC update broke EAC for most games that use it
Titles With Problems: Most titles that use Easy AntiCheat and officially support Linux tested ( Multiversus, Elden Ring, ~~Apex Legends [mixed results]~~)
Error Description:
Launch Error: Failed to load the anti-cheat module
To recreate: Be running the newest GLIBC in this case 2.36 Have Steam (not flatpak vers.) Hardware: happens on both nvidia and amd systems
- Install one of games mentioned above
- launch game
- game will most likely error
Sorry if this isn't the correct place to report the error, but I figured this team helped create the EAC module, so you would be the ones to contact.
Yeah Confirming. Bloodhunt EAC breaks with glibc 2.36
Apex Legends is still fine. Apex using the older non-EOS EAC i guess?
Just happened to me.
Happen to me with Elden Ring
can confirm, also for Video Horror Society.
Confirmed on Multiversus.
~~Try it at workaround :
pacman -U https://archive.archlinux.org/packages/g/glibc/glibc-2.35-6-x86_64.pkg.tar.zst https://archive.archlinux.org/packages/l/lib32-glibc/lib32-glibc-2.35-6-x86_64.pkg.tar.zst
~~
EDIT : Nop, don't try it, it broke my system wich need glibc 2.36...
Little bit of a workaround: use steam flatpak until the issue gets fixed.
also broken for me with elden ring
Edit: as expected, a workaround is to use the flatpak steam version, you can just add your steam library as a filesystem and skip having to install the games again
I was having problems with glibc 2.35 and rogue company can confirm other EAC games broke with 2.36 now
Confirmed for GNU libc 2.36 on Arch Linux 5.18.15-arch1-2 on the following games: Multiversus Dragonball FighterZ
Confirmed on Multiversus.
~Try it at workaround :
pacman -U https://archive.archlinux.org/packages/g/glibc/glibc-2.35-6-x86_64.pkg.tar.zst https://archive.archlinux.org/packages/l/lib32-glibc/lib32-glibc-2.35-6-x86_64.pkg.tar.zst
~EDIT : Nop, don't try it, it broke my system wich need glibc 2.36...
Yea same lmao, thankfully easily fixable by updating with pacman on a live usb inside chroot
Can Confirm, on Arch Linux. Played a few games in the morning (on Multiversus), ran a pacman update, came back to this issue
You can safely(ish) downgrade glibc with the "downgrade" utility on the AUR. Just make sure to include lib32 and gcc-libs. I forgot GCC-libs and had to downgrade from the command line.
sudo downgrade glibc lib32-glibc gcc-libs
Multiversus is able to start successfully after the downgrade.
Experienced the same issue. The steam flatpak works so I'll maybe switch to that indefinitely when i get gamemode working
You can safely(ish) downgrade glibc with the "downgrade" utility on the AUR. Just make sure to include lib32 and gcc-libs. I forgot GCC-libs and had to downgrade from the command line. sudo downgrade glibc lib32-glibc gcc-libs Multiversus is able to start successfully after the downgrade.
Thank you! I was midtype of reverting it but you made it much much easier. Whenever I try downgrading though, it borks my system (I get faced with a stuck "/dev/sda: clean" bootup screen, reverting downgrade fixes this). Specifically, I think its the gcc-libs breaking dependency with gcc-libs=12.1.1-4. I'll mess around a bit more, but thanks!
Edit: After downgrading gcc as well, it has no error message about dependencies, but won't boot up multiversus nor steam, weirdly
You can safely(ish) downgrade glibc with the "downgrade" utility on the AUR. Just make sure to include lib32 and gcc-libs. I forgot GCC-libs and had to downgrade from the command line.
sudo downgrade glibc lib32-glibc gcc-libs
Multiversus is able to start successfully after the downgrade.
Did it with :
sudo downgrade glibc lib32-glibc gcc-libs lib32-gcc-libs gcc
gcc 12.1.0 gcc-libs 12.1.0 glibc 2.35 lib32-gcc-libs 12.1.0 lib32-glibc 2.35
Thank you
If you won't install downgrade, you can do :
pacman -U https://archive.archlinux.org/packages/g/glibc/glibc-2.35-6-x86_64.pkg.tar.zst https://archive.archlinux.org/packages/l/lib32-glibc/lib32-glibc-2.35-6-x86_64.pkg.tar.zst https://archive.archlinux.org/packages/l/lib32-gcc-libs/lib32-gcc-libs-12.1.0-3-x86_64.pkg.tar.zst https://archive.archlinux.org/packages/g/gcc-libs/gcc-libs-12.1.0-3-x86_64.pkg.tar.zst https://archive.archlinux.org/packages/g/gcc/gcc-12.1.0-3-x86_64.pkg.tar.zst
Thank you!
sudo downgrade glibc lib32-glibc gcc-libs lib32-gcc-libs gcc gcc 12.1.0 gcc-libs 12.1.0 glibc 2.35 lib32-gcc-libs 12.1.0 lib32-glibc 2.35
That fixed it no problem!
I wish someone would take the time to bisect rather than downgrade and forget. This needs a bisect in order to get it fixed properly. I performed the bisect on the Rogue Company issue. Fortunately Fedora is not on glibc 2.36 yet, and I also just don't have the time
I wish someone would take the time to bisect rather than downgrade and forget. This needs a bisect in order to get it fixed properly. I performed the bisect on the Rogue Company issue. Fortunately Fedora is not on glibc 2.36 yet, and I also just don't have the time
how would I do the bisect without messing up my system? would I use a vm or distrobox or something? and how would I easily test it, since it would take forever to test each commit
I wish someone would take the time to bisect rather than downgrade and forget. This needs a bisect in order to get it fixed properly. I performed the bisect on the Rogue Company issue. Fortunately Fedora is not on glibc 2.36 yet, and I also just don't have the time
Like Etaash I would like to know how would one go about doing this.
Sorry about that, clicked "close with comment" instead of "comment" when posting my reply
bisecting this seems kinda impossible without potentially breaking the system. I downgraded by using downgrade tool for now and everything works again.
[2022-08-03T14:39:42+0300] [ALPM] downgraded glibc (2.36-1 -> 2.35-6)
[2022-08-03T14:39:43+0300] [ALPM] downgraded lib32-glibc (2.36-1 -> 2.35-6)
[2022-08-03T14:42:11+0300] [ALPM] downgraded gcc-libs (12.1.1-4 -> 12.1.0-3)
[2022-08-03T14:42:11+0300] [ALPM] downgraded binutils (2.38-7 -> 2.38-6)
[2022-08-03T14:42:12+0300] [ALPM] downgraded gcc (12.1.1-4 -> 12.1.0-3)
[2022-08-03T14:42:12+0300] [ALPM] downgraded gcc-fortran (12.1.1-4 -> 12.1.0-3)
[2022-08-03T14:42:12+0300] [ALPM] downgraded gcc-objc (12.1.1-4 -> 12.1.0-3)
[2022-08-03T14:42:12+0300] [ALPM] downgraded lib32-gcc-libs (12.1.1-4 -> 12.1.0-3)
[2022-08-03T14:42:12+0300] [ALPM] transaction completed
But its just delaying the issues. had to also downgrade thunderbird for example as its latest version already requires glibc 2.36
This also may break the system at some point if more things starting to require updated glibc
NOTE! Do not do it unless you know what you are doing! This may break your entire system if you keep updating other system packages while some are rolled back and locked to older versions!
I wish someone would take the time to bisect rather than downgrade and forget. This needs a bisect in order to get it fixed properly. I performed the bisect on the Rogue Company issue. Fortunately Fedora is not on glibc 2.36 yet, and I also just don't have the time
Compiling glibc and the corresponding packages takes over a couple of hours on my potato. It would take quite a few days for me to just compile packages from every commit. I would think Proton devs would have the resources to bisect much quicker, I mean Valve is going to need it working for Steam Deck updates.
Would it be worth it to file a bug report on the glibc tracker without bisecting first? I don't see one on there yet. I imagine they would say it's an EAC problem but I guess we would know more once we figure which commit b0rked it.
Is the breakage reproducible using LD_LIBRARY_PATH without downgrading glibc system-wide ?
I've seen a Proton EAC Runtime update lately, did it fix anything for anybody?
EDIT: nevermind, SteamDB shows only dll changes for yesterday's update, don't think it has anything to do with GLIBC compatibility: https://steamdb.info/depot/1826331/history/?changeid=M:7482036680883698310
@thaewrapt Yeah, that update to Proton EAC Runtime is supposed to fix EAC in Vermintide 2, not glibc–related issues with EOS EAC.
Would it be worth it to file a bug report on the glibc tracker without bisecting first? I don't see one on there yet. I imagine they would say it's an EAC problem but I guess we would know more once we figure which commit b0rked it.
My understanding is that glibc is supposed to have a stable API and ABI, so I think this per definition is a glibc issue. Unless EAC is using private API, of course.
downgrading glibc can break lots of stuff, so be careful. My terminal emulator kitty
for example refused to work with 2.35
Downgrading didn't solve anything sadly, it actually broke some stuff.
And flatpak didn't help either.
Downgrading didn't solve anything sadly, it actually broke some stuff.
And flatpak didn't help either.
If Flatpak doesn't solve it, you're experiencing a different issue. Flatpak has not upgraded its glibc yet to my knowledge (and won't until the Freedesktop 22.08 SDK releases and Steam upgrades to it).
Replying to https://github.com/ValveSoftware/Proton/issues/6051#issuecomment-1204543127
I know it's cool and useful to include instructions for downgrading, but a less experienced user will just accept this as a fix, blindly run it and potentially break their system. So please either wait or use this with caution.