Closed TeusLollo closed 10 months ago
Your assumption is incorrect. This app is using runtime version 23.08 and as such Mesa 23.2.1. Apps cannot choose which version of Mesa they use, they get whichever Mesa runtime ships.
Your assumption is incorrect. This app is using runtime version 23.08 and as such Mesa 23.2.1. Apps cannot choose which version of Mesa they use, they get whichever Mesa runtime ships.
Pardon. it's what we assumed on the Void repository. Me, I'm not familiar with flatpak development.
The error above still stands, however, and I know for certain that non-flatpak runtime version does not get such an error with mesa-23.2.1
(While it did on mesa-23.1.9
), and also that com.valvesoftware.Steam
still exhibits such an error despite me ensuring for com.valvesoftware.Steam
to be updated to latest stable branch.
I may need to then close as not planned, but, before I do, any idea anyone what could be causing this error, otherwise?
I'm not entirely fluent with what is happening here and whether pressure-vessel (subsandboxing) is related or not. It might be useful to have a simpler reproducer (without subsandbox)
Anything I can be of help with? Unfortunately, I'm not familiar enough with flatpak's inner workings.
Symptoms would point for the flatpak runtime to be calling for mesa-23.1.9
, yet if it can only call mesa-23.2.1
, why does this error (Which does not happen with the runtime running outside the sandbox) keep happening?
Maybe the sandbox has been breached, somehow?
EDIT: Clarified some things
Reddit user Z3roKelvin at https://reddit.com/r/voidlinux/comments/18b592n/steam_suddenly_not_working_on_flatpak/ has posted a very similar output:
I have been using the flatpak version of steam for about a month, and today it decided not to work. I looked at some other posts suggesting I should downgrade mesa, but that did nothing. I am using an AMD Radeon RX 6800 XT graphics card running the open source drivers on Xorg.
Here is what happens when I try to start steam:
INFO:root:https://github.com/flathub/com.valvesoftware.Steam/wiki
INFO:root:Will set XDG dirs prefix to /home/z3rokelvin/.var/app/com.valvesoftware.Steam
DEBUG:root:Checking input devices permissions
INFO:root:Overriding TZ to America/Los_Angeles
steam.sh[2]: Running Steam on org.freedesktop.platform 23.08 64-bit
steam.sh[2]: STEAM_RUNTIME is enabled automatically
setup.sh[74]: Steam runtime environment up-to-date!
steam.sh[2]: Steam client's requirements are satisfied
[2023-12-04 21:51:25] Startup - updater built Nov 29 2023 19:58:56
[2023-12-04 21:51:25] Startup - Steam Client launched with: '/home/z3rokelvin/.var/app/com.valvesoftware.Steam/.local/share/Steam/ubuntu12_32/steam' '-no-cef-sandbox'
12/04 21:51:25 Init: Installing breakpad exception handler for appid(steam)/version(1701289036)/tid(108)
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
SteamUpdateUI: An X Error occurred
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 152 (GLX)
Minor opcode of failed request: 3 (X_GLXCreateContext)
Value in failed request: 0x0
Serial number of failed request: 53
xerror_handler: X failed, continuing
Looks like steam didn't shutdown cleanly, scheduling immediate update check
[2023-12-04 21:51:25] Loading cached metrics from disk (/home/z3rokelvin/.var/app/com.valvesoftware.Steam/.local/share/Steam/package/steam_client_metrics.bin)
[2023-12-04 21:51:25] Using the following download hosts for Public, Realm steamglobal
[2023-12-04 21:51:25] 1. https://client-update.akamai.steamstatic.com, /, Realm 'steamglobal', weight was 1000, source = 'update_hosts_cached.vdf'
[2023-12-04 21:51:25] 2. https://cdn.cloudflare.steamstatic.com, /client/, Realm 'steamglobal', weight was 1, source = 'update_hosts_cached.vdf'
[2023-12-04 21:51:25] 3. https://cdn.steamstatic.com, /client/, Realm 'steamglobal', weight was 1, source = 'baked in'
[2023-12-04 21:51:25] Checking for update on startup
[2023-12-04 21:51:25] Checking for available updates...
[2023-12-04 21:51:25] Downloading manifest: https://client-update.akamai.steamstatic.com/steam_client_ubuntu12
[2023-12-04 21:51:25] Manifest download: send request
[2023-12-04 21:51:25] Manifest download: waiting for download to finish
[2023-12-04 21:51:25] Manifest download: finished
[2023-12-04 21:51:25] Download skipped: /steam_client_ubuntu12 version 1701289036, installed version 1701289036, existing pending version 0
[2023-12-04 21:51:25] Nothing to do
[2023-12-04 21:51:25] Verifying installation...
[2023-12-04 21:51:25] Performing checksum verification of executable files
[2023-12-04 21:51:26] Verification complete
Steam logging initialized: directory: /home/z3rokelvin/.var/app/com.valvesoftware.Steam/.local/share/Steam/logs
XRRGetOutputInfo Workaround: initialized with override: 0 real: 0xf61db8f0
XRRGetCrtcInfo Workaround: initialized with override: 0 real: 0xf61da1c0
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
crash_20231204215126_5.dmp[133]: Uploading dump (out-of-process)
/tmp/dumps/crash_20231204215126_5.dmp
/home/z3rokelvin/.var/app/com.valvesoftware.Steam/.local/share/Steam/steam.sh: line 798: 108 Segmentation fault "$STEAMROOT/$STEAMEXEPATH" "$@"
[z3rokelvin@zkdesktop ~]$ crash_20231204215126_5.dmp[133]: Finished uploading minidump (out-of-process): success = yes
crash_20231204215126_5.dmp[133]: response: CrashID=bp-274edb55-cbc0-4949-9e31-8cef12231204
crash_20231204215126_5.dmp[133]: file ''/tmp/dumps/crash_20231204215126_5.dmp'', upload yes: ''CrashID=bp-274edb55-cbc0-4949-9e31-8cef12231204''
I can also confirm that the OP error persists even given updates of org.freedesktop.Platform.GL.default
to 23.08
Given the following output of flatpak list
as by the recent update:
Steam com.valvesoftware.Steam 1.0.0.78 stable system
The above issue still persists.
I assume everyone here has flatpak 1.12 or newer, right?
I assume everyone here has flatpak 1.12 or newer, right?
Output of flatpak --version
:
Flatpak 1.15.6
If you run the app with flatpak run --env=LIBGL_DEBUG=verbose com.valvesoftware.Steam
, it might possibly provide more information why exactly the drivers cannot be loaded.
This is getting weirder. I did not install/remove any packages on my system except for regular rolling release updates.
Now I get this:
flatpak run --env=LIBGL_DEBUG=verbose com.valvesoftware.Steam
INFO:root:https://github.com/flathub/com.valvesoftware.Steam/wiki
INFO:root:Will set XDG dirs prefix to /home/josh/.var/app/com.valvesoftware.Steam
DEBUG:root:Checking input devices permissions
INFO:root:Overriding TZ to Europe/London
steam.sh[2]: Running Steam on org.freedesktop.platform 23.08 64-bit
steam.sh[2]: STEAM_RUNTIME is enabled automatically
setup.sh[73]: Steam runtime environment up-to-date!
steam.sh[2]: Error: You are missing the following 32-bit libraries, and Steam may not run:
libc.so.6
steam.sh[2]: Can't find 'steam-runtime-check-requirements', continuing anyway
/home/josh/.var/app/com.valvesoftware.Steam/.local/share/Steam/steam.sh: line 798: 129 Bad system call "$STEAMROOT/$STEAMEXEPATH" "$@"
Output is the same even without --env=LIBGL_DEBUG=verbose
This error is even picked up by the WM (sway
)
Error: You are missing the following 32-bit libraries, and Steam may not run: libc.so.6
Yet:
ls -R /usr/lib | grep "libc.so.6"
libc.so.6
I don't understand the following:
1) Why this error showed up all of a sudden since I did not remove/install any packages (But I did do updates). I even attempted to clear /home/josh/.var/app/com.valvesoftware.Steam
but, if I do, after updating the runtime, it just throws me to the same error.
2) I'm not really sure if libc.so.6
should be installed into the sandbox or not, but it is present into usr/lib
if required system-wise, and otherwise it should come with com.valvesoftware.Steam
instead.
3) I do have another libc.so.6
sitting into $HOME/gitwork/
as it's used by a bootstrapping system I'm working on, but it shouldn't matter, right?
Do you have beta or stable version of the app installed? The error sounds like you are missing i386 compat extensions. You should be getting those automatically when you install stable version of app.
Given the following output of
flatpak list
as by the recent update:
Steam com.valvesoftware.Steam 1.0.0.78 stable system
The above issue still persists.
As I said here, I'm on stable.
BUT, nevermind, I solved this.
It actually was a device permission problem, brought both by a rather counter-intuitive conflict with my apparmor
setup, and, after disabling it, I presume some degree of distro-specific standards on my system.
If anyone comes across this error, remember to check your apparmor
setup to ensure that any calls by steam
to individual devices are properly allowed.
Even then, it may still not work, as the user on reddit cited above mentioned, and as it happened to me, depending on your OS defaults (I presume any non-standard device loading ruleset may contribute).
Thus, the easiest way is to then install also flatseal
and ensure that allow=multiarch
(So you don't get my other libc.so.6
error) and device=all
(Without it, we get my libGL error: failed to load driver: radeonsi
) to be enabled.
Indeed, my apparmor
setup was only partially responsible, since it still wouldn't work after disabling it fully, due to I presume various device defaults. It was the flatseal
trick with allow=multiarch
and device=all
enabled to finally cause steam
to launch adequately.
Not really sure why a device (The GPU in this case, even though GPU accelleration was for sure working and accessible) that can't be accessed was being reported as a libGL error: failed to load driver: radeonsi
error, but I digress.
At best, maybe flatseal
would require a somewhat more detailed error reporting routine, although I realize the diffuculties of working with a sandbox make such an endeavour secondary.
Sorry for wasting your time, but the error was very counter-intuitive, and error reporting routines (On the terminal, developers were very helpful on github) didn't help at all.
Could anyone close this as "not a bug"?
It is truly strange that the allow=multiarch wasn't there to begin with. The app recipe sets it here https://github.com/flathub/com.valvesoftware.Steam/blob/beta/com.valvesoftware.Steam.yml#L38 and it's mandatory.
I have the recollection Mesa in general gives very bad output when device loading fails unless you explicitly request better output through LIBGL_DEBUG=verbose. This gives typically good enough output that you can figure out why loading fails.
I suggest closing the issue yourself, there is no specific not a bug way to close the issue. I have stepped down as maintainer but thought to try to help troubleshoot this one since I was involved earlier.
Yet, even disabling device=all
and running flatpak run --env=LIBGL_DEBUG=verbose com.valvesoftware.Steam
outputted (I filtered a bunch of output noise):
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/josh/.drirc: No such file or directory.
using driver amdgpu for 14
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/josh/.drirc: No such file or directory.
pci id for fd 14: 1002:67df, driver radeonsi
MESA-LOADER: dlopen(/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so)
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/josh/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/josh/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/josh/.drirc: No such file or directory.
amdgpu_device_initialize: amdgpu_get_auth (1) failed (-1)
amdgpu: amdgpu_device_initialize failed.
glx: failed to create dri3 screen
failed to load driver: radeonsi
I guess you may connect the dots and realize it's actually a device access error, but you may also think something went missing during libGL installation, or some driver woes, or some filesystem corruption. It's not a very explicit "Couldn't find this device", "Couldn't assign this device to an index", "Unknown device", "System call not authorized for this device", or anything of the sort.
The allow=multiarch
thing showed up later, so it may have been some update system-wide, it wasn't there before, probably some configuration on my side along with recent updates, but it was necessary to explain how I solved it.
Thanks for the help @nanonyme
Closing this as completed
EDIT: Forgot to close with comment, closed manually
We at Void were having the following non-distribution-specific error:
https://github.com/void-linux/void-packages/issues/46649 quote for quote (Check the link for full description):
" Relevant error log (Flatpak, but its steam-1.0.0.78_3 equivalent is largely identical) is as follows:
amdgpu_device_initialize: amdgpu_get_auth (1) failed (-1) amdgpu: amdgpu_device_initialize failed. libGL error: glx: failed to create dri3 screen libGL error: failed to load driver: radeonsi Steam Runtime Launch Service: starting steam-runtime-launcher-service Steam Runtime Launch Service: steam-runtime-launcher-service is running pid 336 steam-runtime-launcher-service[336]: E: Unable to acquire bus name "com.steampowered.PressureVessel.LaunchAlongsideSteam" amdgpu_device_initialize: amdgpu_get_auth (1) failed (-1) amdgpu: amdgpu_device_initialize failed. libGL error: glx: failed to create dri3 screen libGL error: failed to load driver: radeonsi
"Which was eventually solved by https://github.com/void-linux/void-packages/issues/46649#issuecomment-1791523149 (Update to
mesa-23.2.1_2
) at least onsteam-for-linux
native binary, confirming thus thatmesa-23.1.9
indeed throws the aforementionedauth/libGL
error.com.valvesoftware.Steam
still suffers from the aforementioned error, however, presumably due to defaulting tomesa-23.1.9
. Indeed, on my system:I presume thus that
com.valvesoftware.Steam
defaults tomesa-23.1.9
, hence resulting in the aforementioned error.Presumably, defaulting
com.valvesoftware.Steam
tomesa-23.2.1
would fix this error.I thus formally request for maintainer(s) to try and verify if defaulting
com.valvesoftware.Steam
tomesa-23.2.1
would be possible in the near future.Thanks to developers for all their efforts, regardless.