ValveSoftware / steam-runtime

A runtime environment for Steam applications

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

steam-runtime-identify-library-abi: Cannot run ldconfig: wait status 135

garrosh opened this issue · comments

Your system information

  • Steam client version (build number or date): 1702079146
  • Distribution (e.g. Ubuntu): Debian Sid
  • Opted into Steam client beta?: No
  • Have you checked for system updates?: Yes
  • Steam Logs: steam-logs.tar.gz
  • GPU: Nvidia 2060 Super

Please describe your issue in as much detail as possible:

So I've been fiddling around for the past couple of days and there is something going on with my runtimes. Nothing with works with any Proton runtimes, nothing works with the default Steam Runtime, I have 1 game that works with Steam Runtime 1.0, and I can't get Steam to launch with a Native Runtime.

I've tried a whole bunch of things, and here is a bunch of the things I tried, as well as some possibly relevant information. Feel free to ask for anything else.

  1. glxinfo
  2. Launching steam with native runtime - Doesn't work. I get the pop-up about vgui2_s.so, and looked around the interwebs to see where I could get myself one of those, and only found a mention about openal, which I reinstalled without an improvement.
  3. Launching steam (without native runtime) - Works
  4. Launching Increlution from the console - Doesn't work. I'm unsure if it uses the last configuration state from Steam, but it launched steam with the default runtime.
  5. Launching Increlution with SR V1.0 - Works
  6. Launching Increlution with Proton Experimental - Opens the windows and stays running, but is blacked out and therefore unusable.
  7. Launching Increlution with default runtime - Doesn't work, just crashes. I found https://wiki.debian.org/Steam#Installing_Steam and read through the page, and did the thing about libraries that cause problems, to no avail. Removing elements from the runtime had no effect. Right now they might be back because I reinstalled everything steam related.
  8. Launching Albion from the console just works, I think it bypasses Steam entirely because it's free to play. Note that the two games I'm using for my tests aren't in the same library folder. Increlution is on my home drive (~/.steam/...) and Albion is in a library folder somewhere else.
  9. Launching Albion with default runtime - Doesn't work, just crashes. The game runs fine if I just launch it directly from it's folder, however.
  10. Launching Albion with SR V1.0 - Doesn't work, just crashes.
  11. Launching Albion with Proton Experimental - Doesn't work. I tried launching it a second time, and that time instead of just crashing straight away, it got stuck trying to load the nvidia driver.

So I think there's a bug somewhere, this is obviously not intended behavior. I'm a bit confused by a few things in here, but I would be happy to get steam to run natively, or have any runtime run reliably.

Hello @garrosh, this issue report is a bit of a mess of different game configurations. Since the overall focus is on runtime interactions I've transferred this issue report to the steam-runtime issue tracker.

To summarize the various attempts:

  1. 64 bit OpenGL is functional
  2. Running Steam with the LD_* style Steam runtime disabled is not supported and you're responsible for any library dependency issues in that configuration.
  3. Nothing critical to ponder.
  4. This is an invalid game configuration, see ValveSoftware/steam-for-linux#9875 (comment).
  5. i386-linux-gnu-capsule-capture-libs: warning: libudev.so.0 has an unexpected DT_SONAME, ignoring: libudev.so.1 This looks like someone has symlinked 32 bit libudev.so.0 to libudev.so.1. This is not ABI compatible and you should check into why that's happening.
  6. There's insufficient info to ponder anything here.
  7. Something's gone awry with libcloudproviders.so: symbol lookup error: /lib/x86_64-linux-gnu/libcloudproviders.so.0: undefined symbol: g_type_add_instance_private

  8. This is the same as 4, an invalid game config.
  9. There's insufficient info to ponder anything here.
  10. Something went awry with Pressure Vessel finding all to required runtime libraries of the NVIDIA proprietary drivers: The NVIDIA driver was unable to open 'libnvidia-glvkspirv.so.525.147.05'. This library is required at run time.

I'd recommend opting into Steam's client beta, then toggling the per-game Steam Play override on and off, then retest how Albion Online behaves with the Linux native variant (9 on the list).

After that, please copy the contents of Steam Runtime Diagnostics from Steam (Steam -> Help -> Steam Runtime Diagnostics) and put it in a gist, then include a link to the gist in this issue report.

The format that is the most useful starting point when investigating any issue is:

  • Steps to reproduce: (precisely what you tried, in enough detail that if I follow the same steps on a similarly configured computer, I should see the same result)
  • Expected result: (what you expected to happen when you followed the steps-to-reproduce)
  • Actual result: (what actually happened)

When you have tried "a whole bunch of things" that's 11 different sets of steps to reproduce, and it's not going to be obvious to us which one of your sets of steps to reproduce is the important one.

For the Steam Runtime specifically, if you are seeing similar issues with multiple games, the best starting point for us to investigate is a free-to-play game, preferably not too big, and preferably known to work well for other people. That way, everyone who is seeing a similar issue can follow the steps-to-reproduce using the same game, giving us a basis for comparison.

When you say "Albion" it appears you mean Albion Online, Steam app ID 761890. That's a useful starting point because it's free-to-play. I don't know whether it works reliably on Linux, but I can install it and try to find out.

When you say "Increlution" it appears you mean Steam app ID 1593350, which is not free-to-play, but does have a demo. Again, I don't know whether it works reliably on Linux, but I can install it and try to find out.

For each game, the highest-priority thing for us is that what happens by default, when you install that game into Steam without any special tinkering, should work. If that doesn't work, then the next best thing would be that a workaround exists. The workaround might be different for each game: it is not realistic to expect that there is a single workaround that will always fix everything (if there was, we would have made that behaviour the default).

Meanwhile, for each compatibility tool, the highest-priority thing for us is that "most" compatible games work well with it - but this does not necessarily mean that any specific game will work well, because sometimes games have bugs, and sometimes games do weird things that are not technically a bug but will trigger an incompatibility.

Albion Online, default runtime

(technically: scout LD_LIBRARY_PATH runtime)

I did this one first, because it's the default in the desktop Steam client.

  • System: Ubuntu 22.04, NVIDIA GTX 1080 with proprietary driver, GNOME, X11
  • Steam client beta 1703100617, in case that matters
  • Steps: start with the game not installed and not even in my library. Search the Store for "Albion Online". When offered a page similar to https://store.steampowered.com/app/761890/Albion_Online/, choose "Play Game".
  • Expected result: the game runs.
  • Actual result:
    • Launcher: works for me
    • Game: works for me. I got as far as a fullscreen window asking me to create a new account, and music plays; I didn't test beyond that.
    • Looking at the game installation on disk, the game directory .../steamapps/common/Albion Online contains a shell script Albion-Online which runs a launcher launcher/Albion-Online, which eventually ends up running the actual game game_x64/Albion-Online.

Comparison with your situation: In your scenario 9, you seem to have somehow got yourself into a situation where Steam has installed the Windows version of Albion Online, but is trying to run it as though it was a native Linux game, which is not going to work. The key clue to this is:

/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online/launcher/AlbionLauncher.exe: 1: MZ����@▒��: not found

where MZ is the "magic number" at the beginning of every Windows executable.

This might be related to ValveSoftware/steam-for-linux#9875.

Albion Online, SLR 1.0

  • System: same as before
  • same Steam client beta as before, in case that matters
  • Opted-in to client_beta branch of Steam Linux Runtime 1.0 (scout), with version 0.20231128.0 in SteamLinuxRuntime/VERSIONS.txt, if that matters (I expect that the default branch would behave similarly)
  • Opted-in to client_beta branch of Steam Linux Runtime 2.0 (soldier), with version 0.20231211.70176 in SteamLinuxRuntime_soldier/VERSIONS.txt, if that matters (I expect that the default branch would behave similarly)
  • Steps:
    • Install the game, as above.
    • Properties -> Compatibility -> Force the use of..., choose "Steam Linux Runtime 1.0 (scout)"
    • Close the Properties window
    • Click on Update (it's likely to be very quick)
    • Click on Play
  • Expected result:
    • .../steamapps/common/Albion Online is still the Linux version (does have Albion-Online, but doesn't have AlbionLauncher.exe)
    • It runs successfully
  • Actual result: as expected
    • Launcher works
    • Game works (at least as far as being asked to create a new account)

Compared with your situation: In your scenario 10 there seems to be some brokenness involving graphics driver discovery:

x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of /usr/lib/x86_64-linux-gnu/libvulkan_lvp.so not found, ignoring: Missing dependencies: Could not find "libLLVM-17.so.1" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of /usr/lib/x86_64-linux-gnu/libvulkan_radeon.so not found, ignoring: Missing dependencies: Could not find "libLLVM-17.so.1" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of /usr/lib/x86_64-linux-gnu/vdpau/libvdpau_d3d12.so not found, ignoring: Missing dependencies: Could not find "libLLVM-17.so.1" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of /usr/lib/x86_64-linux-gnu/dri/crocus_dri.so not found, ignoring: Missing dependencies: Could not find "libLLVM-17.so.1" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of /usr/lib/x86_64-linux-gnu/dri/d3d12_drv_video.so not found, ignoring: Missing dependencies: Could not find "libLLVM-17.so.1" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libEGL_nvidia.so.0 not found, ignoring: Missing dependencies: Could not find "libnvidia-glsi.so.525.147.05" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libGLX_nvidia.so.0 not found, ignoring: Missing dependencies: Could not find "libnvidia-glsi.so.525.147.05" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libGLX_nvidia.so.0 not found, ignoring: Missing dependencies: Could not find "libnvidia-glsi.so.525.147.05" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libEGL_nvidia.so.0 not found, ignoring: Missing dependencies: Could not find "libnvidia-glsi.so.525.147.05" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libGLX_nvidia.so.0 not found, ignoring: Missing dependencies: Could not find "libnvidia-glsi.so.525.147.05" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libGLX_nvidia.so.0 not found, ignoring: Missing dependencies: Could not find "libnvidia-glsi.so.525.147.05" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libEGL_nvidia.so.0 not found, ignoring: Missing dependencies: Could not find "libnvidia-glsi.so.525.147.05" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libGLX_nvidia.so.0 not found, ignoring: Missing dependencies: Could not find "libnvidia-glsi.so.525.147.05" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libGLX_nvidia.so.0 not found, ignoring: Missing dependencies: Could not find "libnvidia-glsi.so.525.147.05" in LD_LIBRARY_PATH "/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib

Any game that uses the Steam Linux Runtime or Proton is not going to have reliable 3D acceleration until/unless this can be resolved.

Additionally, as @kisak-valve noted, you have an invalid symlink similar to libudev.so.0 -> libudev.so.1 in some location that is relevant for 32-bit libraries, probably /lib/i386-linux-gnu:

i386-linux-gnu-capsule-capture-libs: warning: libudev.so.0 has an unexpected DT_SONAME, ignoring: libudev.so.1

The Steam Linux Runtime tools are working around this, but it's still wrong, and indicates that there may have been some unsupportable local changes on this system in the past.

From your scenario 3, just launching Steam, I think the major problem is indicated by this output:

steam-runtime-identify-library-abi: Cannot run ldconfig: wait status 135
run.sh[30186]: steam-runtime-identify-library-abi --ldconfig-paths failed, falling back to ldconfig
run.sh[30186]: Warning: An unexpected error occurred while executing "/sbin/ldconfig -XNv", the exit status was 135

That's signal 7, which is SIGBUS, an internal crash.

All versions of the Steam Runtime relies on having a working version of ldconfig. Your ldconfig does not seem to be working correctly, so anything that still works in this situation is pure luck...

Is there anything unusual or locally-modified about your system, for instance installing low-level libraries like glibc from source code, or installing low-level components from experimental? Or at the hardware level: overclocking, or potentially bad RAM?

The output of /sbin/ldconfig -p would be interesting to see.

A possible workaround, at your own risk, would be:

  1. Copy /etc/ld.so.cache to some safe location for future analysis
  2. Run, as root: /sbin/ldconfig -v (for example you might run it via sudo or pkexec)

@kisak-valve, perhaps you could retitle this to

steam-runtime-identify-library-abi: Cannot run ldconfig: wait status 135

to avoid having other users with unrelated issues jumping onto this one.

Hello @kisak-valve !

Thank you so much for your quick reply! Also, thank you @smcv, all of your help is greatly appreciated. So yeah, after spending a couple of days poking around at this, I guess I forgot to include some pretty basic info when I wrote this, namely: everything was working fine before I did some system updates. I didn't do anything fancy, but I had some messages about broken libc6 dependancies, and I had to screw around a while until I was able to get it to update itself and get my system in a non-borked state.

So in order, what happened on my system was:

  1. Everything was working fine, including Albion Online and Increlution
  2. I updated my system
  3. Steam stopped working, turns out it was related to my libc6 problem, which I fixed somehow, but I don't remember how
  4. I messed around for a couple of days
  5. I wrote my bug report

So now I'm going down the list of your replies in order, starting with yours, @kisak-valve .

So I opted into the beta, tried to toggle per-game steam runtimes, and it's not running, apparently the same as before. The console output for a launch of Albion Online looks like this. In the meantime, I got you the Steam Runtime System Information output here

@smcv , in reply to Albion Online, default runtime:

Yeah, I'm sorry, I was really wrapped up in trying to understand all of this, I wasn't very clear about my starting point. The game works reliably on linux, at least it has for me for the past 4 years. As I also mentioned, the game works completely fine when I launch it directly instead of going through Steam. About it trying to launch the windows version, there might've been some problem with how Steam handled the various runtime switches I asked it to do in all of my attempts. In the meantime, I verified that Steam had redownloaded the Linux version after switching runtimes, the output looks like this.

@smcv, in reply to Albion Online, SLR 1.0:

I don't think I have done any local changes, but on the off chance I did, I looked into libudev to see what was installed on my system. Turns out libudev1 and libudev1:i386 are installed, but not libudev0 and libudev0:i386. So I guess maybe I did some screwing around there. So I installed libudev0:i386, ignored a warning about libc-bin not being installed (because I have the amd version installed and they conflict each other), and then reinstalled it for good measure. Now the console output looks like this, so that fixes the error about the invalid symlink.

[...]Albion-Online: symbol lookup error: ///home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online/launcher/libQt5WebEngineCore.so.5: undefined symbol: dbus_validate_interface, version LIBDBUS_1_3
This looks like the key detail from the most recent log. Looking at the runtime diagnostics, https://gist.github.com/garrosh/f263585c0ba303578bb607a77279b66d#file-gistfile1-txt-L354 looks like you have 32 bit libdbus installed system wide, but I'm not seeing any mentions of the 64 bit variant of that library. The game is then falling over because the game bundled libQt5WebEngineCore was built with expectations of a newer libdbus than the fallback provided by the LD_* style Steam runtime.

Can you double check the system installed packages for dbus with something like apt policy libdbus-1-3 libdbus-1-3:i386 and if both variants are not installed, then try something like sudo apt install libdbus-1-3 libdbus-1-3:i386. It looks like packages.debian.org is having a server issue right now, so I wasn't able to double check if that's the right package name.

@kisak-valve I have both versions installed system wide, did a reinstall just to be sure, and everything is there. What was the scenario that spewed out that error again?

My response was to #639 (comment) and #639 (comment)

Yeah, so I reran the same scenario, output is still like this

/bin/sh\0-c\0/home/garrosh/.steam/debian-installation/ubuntu12_32/reaper SteamLaunch AppId=761890 -- /home/garrosh/.steam/debian-installation/ubuntu12_32/steam-launch-wrapper -- '/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online/Albion-Online' -steam\0
chdir "/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online"
ERROR: ld.so: object '/home/garrosh/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/garrosh/.steam/debian-installation/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/home/garrosh/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/garrosh/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/garrosh/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/garrosh/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/garrosh/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online/launcher/Albion-Online: /home/garrosh/.steam/debian-installation/ubuntu12_32/steam-runtime/lib/x86_64-linux-gnu/libdbus-1.so.3: no version information available (required by ///home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online/launcher/libQt5WebEngineCore.so.5)
/home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online/launcher/Albion-Online: symbol lookup error: ///home/garrosh/Files_and_Stuff/Games/SteamLibrary/steamapps/common/Albion Online/launcher/libQt5WebEngineCore.so.5: undefined symbol: dbus_validate_interface, version LIBDBUS_1_3
Uploaded AppInterfaceStats to Steam

@smcv Here is the output from /sbin/ldconfig -p:

ldconfig_output.txt

Ok, here is something interesting, that feels related.

  • System: same as before
  • same Steam client beta as before, in case that matters
  • Opted-in to client_beta branch of Steam Linux Runtime 1.0 (scout), with version 0.20231128.0 in SteamLinuxRuntime/VERSIONS.txt, if that matters (I expect that the default branch would behave similarly)
  • Opted-in to client_beta branch of Steam Linux Runtime 2.0 (soldier), with version 0.20231211.70176 in SteamLinuxRuntime_soldier/VERSIONS.txt, if that matters (I expect that the default branch would behave similarly)
  • Steps:
    • Launch Steam from console
    • Launch Albion Online from Steam
  • Expected result:
    • At this point, I expected to receive the same usual console output
  • Actual result:
    • Albion updated itself to its Windows version the first two times, and the next two it did as expected

So I tried this four times, now, but there's something fishy.

@kisak-valve, until we have worked out what is going on with ld.so.cache/ldconfig, I think we should not dig too deeply into the libdbus issues: they are more symptom than root cause. The scout runtime's setup.sh and run.sh assume a correctly working ldconfig, and the mechanism that is meant to choose between the scout or host-OS copies of libdbus will not work correctly if ldconfig is crashing or ld.so.conf is corrupt.

I updated my system [...] Steam stopped working, turns out it was related to my libc6 problem, which I fixed somehow, but I don't remember how

It would have been helpful if you had led with that! If something has gone wrong, it's often useful to capture diagnostic information immediately after that point, before you try any workarounds (particularly if they are intrusive changes), to avoid the details of the original problem getting obscured by subsequent attempts to work around it.

On a Debian system, you should find that /var/log/apt/history.log* contain a history of your system upgrades. If you can identify a point in time at which these Steam games were working as you expected, and a point in time at which your "libc6 problem" was visible, then the list of changes between those points would be very useful information.

some messages about broken libc6 dependancies

We can't do much with "some messages" without knowing what the exact messages were, but if you look in /var/log/apt/term.log* I hope you will be able to find them and copy/paste.

You mentioned libc-bin, which is the package that is responsible for running ldconfig and updating the ld.so.cache when needed, so this is all consistent with my working theory that your ldconfig or ld.so.cache has been damaged in some way.

Ok, turns out there was some device level corruption happening, apparently there was something broken for a good long while. I think I had some sectors die in my SSD and nothing could be fixed by fsck on my btrfs drive. So I reformated and reinstalled everything, now everything works, so it was unrelated to Steam itself.

Thank you very much for your help!