Hello @queenbiscuit311, this reads like an incompatible dependency with Arch's steam packaging or a broken 32 bit OpenGL render path.
After you added the steam-native-runtime system package and its dependencies, did steam-runtime also start working? Are you able to determine which system package added by steam-native-runtime stopped the crash?
This issue should be mentioned to your distro's package maintainer(s) for their Steam package.
Also, 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.
Installing the steam-native-runtime package did not also fix steam-runtime, unfortunately. I already had the majority of the packages it installed so it only installed a handful and they didn't seem to affect steam-runtime. I would be willing to try to determine wich package it is that works in native that doesn't in runtime, I'm just not too sure how to. I will test the package in a clean environment and if the issue persists I'll submit an issue to the arch repos.
Here are my steam runtime diagnostics, I got them by opening steam with steam-native and going into the diagnostic option:
https://gist.github.com/queenbiscuit311/f05a2c58e9afa36132facce703052b40#file-steamruntimediag-txt
Looks like there's a few libraries that couldn't be found. Would I have to reinstall the steam runtime packages or something?
A broken 32 bit OpenGL render path seems to be what everyone else with this issue had, but if that's the case here too I'm not sure what's caused it on my system or why, given that it worked a few days ago.
Thanks. In general, disabling the Steam runtime is unsupportable and you or the package maintainers who gave you the option to disable it are responsible for the missing libraries in that configuration. Unfortunately, one of the missing dependencies prevents getting a direct answer about 32 bit OpenGL at https://gist.github.com/queenbiscuit311/f05a2c58e9afa36132facce703052b40#file-steamruntimediag-txt-L1993-L2004, but if we look at the same section with one of the container environments, it shows that render path is definitely broken. (https://gist.github.com/queenbiscuit311/f05a2c58e9afa36132facce703052b40#file-steamruntimediag-txt-L4707-L4747)
Can you double check that you have the lib32-mesa system package installed and that any 32 bit OpenGL application like glxinfo32 -B from lib32-mesa-utils works?
Yeah, that's mainly why I wanted to get steam-runtime fixed, since while steam-native works it seems like a bad idea to keep it that way due to incompatibility when not using the steam runtime.
glxinfo32 -B appears to work, and I have lib32-mesa, lib32-mesa-utils, and lib32-mesa-vdpau installed. glxgears32 also appears to work, so 32 bit applications definitely seem to be able to render.
If some of the dependencies in the steam runtime are are missing, and that's why disabling the steam runtime makes steam launch as normal, how would I go about trying to fix it? I've tried verifying the files for all three steam runtimes in steam itself, but it says they're all intact. I'm not sure what would have caused it to break like that.
Seeing the runtime diagnostics with steam-native is not necessarily directly useful here, because that situation isn't the one that you are reporting a bug in. Ideally we'd want to see the Steam Runtime Diagnostics for Steam running in its supported mode (the one that Arch calls steam-runtime).
There's an obvious chicken and egg problem there, because it's impossible for you to look at a Steam window when Steam doesn't start, but you can avoid that by running the diagnostic tool more directly:
~/.steam/root/ubuntu12_32/steam-runtime/run.sh -- steam-runtime-system-info > srsi.log
and then attach srsi.log or send it as a Gist.
I've tried verifying the files for all three steam runtimes in steam itself, but it says they're all intact
I assume you mean the three things called "Steam Linux Runtime x.0 (something)". Those are a different layer, and are used for some specific games, but not to run Steam itself.
The runtime that gets disabled by steam-native is stored in ~/.steam/root/ubuntu12_32/steam-runtime, and is not visible in your Steam library. If you suspect that runtime has got corrupted, the way to check that is to move the ~/.steam/root/ubuntu12_32/steam-runtime directory into a safe place, then start Steam (using the Steam (runtime) shortcut or steam-runtime executable as usual). Steam should unpack a new copy of ~/.steam/root/ubuntu12_32/steam-runtime from a tarball.
Please move it into a safe place instead of deleting it - if re-unpacking the runtime solves your problem, then we will want to investigate how the bad version differs from the good version.
Also please check that the md5sum of ~/.steam/root/ubuntu12_32/steam-runtime.tar.xz matches ~/.steam/root/ubuntu12_32/steam-runtime.checksum.
As of today, if you are not running the Steam beta, the correct md5sum starts with 39f3b66e (which is version steam-runtime_0.20230801.56012).
I tried deleting the steam-runtime folder. It did indeed unpack another one, but it didn't work either. Upon comparing the md5sums of both the tarball and the checksum file, they seem to be the same. That seems to rule out the runtime itself being broken.
Here's the steam runtime log: https://gist.github.com/queenbiscuit311/a44d031937e8e1d7e55beb709234454b#file-srsi-log
Looking at it myself, it would appear that there are a few va-api, glx, and egl errors in there. Not sure what would be causing that, though, as given that steam starts with the native runtime and that 32-bit glx apps work, I would assume that some or all of those things should be working for 32-bit apps. There's also a libgpg error thrown in there.
Working 32-bit GLX is necessary to run Steam, and unfortunately your 32-bit GLX does not seem to be working in the Steam Runtime environment:
"Waffle error: 0x2 WAFFLE_ERROR_UNKNOWN: glXQueryExtensionsString failed"
That's probably the root cause here. (Vulkan is also important for games, and your 32-bit Vulkan driver is also not working, for whatever reason.)
32-bit VA-API, VDPAU and EGL are non-essential and can be ignored for now (although you might want to fix those later, to get accelerated video).
Perhaps try with ~/.steam/root/ubuntu12_32/steam-runtime/run.sh -- steam-runtime-system-info --verbose? That would tell us exactly which 32-bit libraries are getting loaded.
Also in the 32-bit section, this seems bad:
"glx_drivers" : [
]
This would seem to indicate that either you don't have /usr/lib32/libGLX_{nvidia_mesa}.so.0, or you have them but we're not finding them for whatever reason?
Do you perhaps have a non-default 32-bit libGL.so.1 installed in some unexpected location?
I don't yet understand how your 32-bit glxgears can be working successfully in the absence of working 32-bit GLX drivers, or why steam-native is producing different results.
There's also a libgpg error
libgpg-error.so.0 is a library for GPG to help with error handling and other common code, and it isn't a problem for it to exist. Just because it comes up when you search for "error", that doesn't mean it is an error :-)
ldd $(which glxgears32) and ldd $(which glxinfo32) might also provide useful information about what is going on with your 32-bit GLX.
I see. Looking at my /usr/lib32 folder, I have the following so files with libGLX in their names present:
libGLX_indirect.so.0
libGLX_mesa.so
libGLX_mesa.so.0
libGLX_mesa.so.0.0.0
libGLX_nvidia.so
libGLX_nvidia.so.0
libGLX_nvidia.so.545.23.06
libGLX.so
libGLX.so.0
libGLX.so.0.0.0
libGL.so.1 is also in there
glxgears32 and glxinfo32 seem to be using these libraries.
ldd $(which glxgears32)
` linux-gate.so.1 (0xf7f3a000)
libGL.so.1 => /usr/lib32/libGL.so.1 (0xf7e80000)
libX11.so.6 => /usr/lib32/libX11.so.6 (0xf7d2e000)
libm.so.6 => /usr/lib32/libm.so.6 (0xf7c5a000)
libc.so.6 => /usr/lib32/libc.so.6 (0xf7a00000)
libGLdispatch.so.0 => /usr/lib32/libGLdispatch.so.0 (0xf7984000)
libGLX.so.0 => /usr/lib32/libGLX.so.0 (0xf7949000)
libxcb.so.1 => /usr/lib32/libxcb.so.1 (0xf7c2d000)
/lib/ld-linux.so.2 => /usr/lib/ld-linux.so.2 (0xf7f3c000)
libXau.so.6 => /usr/lib32/libXau.so.6 (0xf7c28000)
libXdmcp.so.6 => /usr/lib32/libXdmcp.so.6 (0xf7942000)
`
Replacing glxgears32 with glxinfo32 produces the same output.
Here's the result of ~/.steam/root/ubuntu12_32/steam-runtime/run.sh -- steam-runtime-system-info --verbose
Also my bad about the libgpg error thing, I kind of skimmed over that one since it didn't seem related and since it was red I just assumed it was one lol
Also, not sure what's going on with the formatting on the code block i sent, but its still readable so I'll leave it that way.
Also while the nvidia libglx so file shows that I am using the nvidia beta drivers, i already tried fully reverting them back to 535 with no luck on the steam side, which makes sense since steam should in theory be opening on the igpu even if it does appear to be using some of the nvidia libraries.
This is more of a blind guess than anything, but can you reinstall the lib32-libglvnd system package? I suspect part of it got overwritten by the NVIDIA beta driver install.
This is more of a blind guess than anything, but can you reinstall the
lib32-libglvndsystem package? I suspect part of it got overwritten by the NVIDIA beta driver install.
No change, unfortunately.
I'm confused by why the diagnostic tool isn't finding your libGLX_*. The --verbose output confirms that it is finding your libGL.so.1 successfully.
wondering if I should try temporarily removing my .local/share/Steam directory and reinstalling to see if that does anything
Removing ~/.local/share/steam doesn't seem to have worked either which is unfortunate
I've opened lutris for the first time in a while and its also complaining about missing 32-bit libraries that still exist. looks like somethings real messed up with my system config, but idk what it is
Issue solved by reinstalling every single lib32 package on my system. No idea what happened, especially since reinstalling relevant packages did nothing but reinstalling all packages fixed it.
Nothing extracted yet.
Your system information
tar -zcvf ~/Desktop/steam-logs.tar.gz ~/.steam/steam/logs]https://pastebin.com/CsgZsXvm (copied from terminal)
Please describe your issue in as much detail as possible:
Describe what you expected should happen and what did happen. Please link any large code pastes as a Github Gist
Steam suddenly segfaults upon trying to open it, along with the error glXChooseVisual failed. Steam will show the updater window, then immediately close it before crashing. Instaling steam-native-runtime from the Arch Linux repos and running the steam-native script causes steam to start without issue. The problem only appears when starting steam with the steam runtime. I have not changed anything about my system that should cause this to happen, and other game launchers still work.
Steps for reproducing this issue: