Closed Links2004 closed 2 months ago
I haven't heard anyone else using the driver in linux having this issue :thinking:
not sure it its new first time trying to use SlimeVR. currently experimenting with it, looks like the $HOME dir can still be accessed, cooking a custom build currently to move the paths there.
I am currently running Arch linux with SteamVR 2.2.1 Beta.
I just entered latest stable SteamVR with nsenter -e
because what we care about is the environment, and XDG_RUNTIME_DIR
does exist
Latest beta also has an existing XDG_RUNTIME_DIR
, I'm using NixOS Unstable
nsenter -e
will only give you the env from the process, -m
ist the importend flag
I can also ls
it in latest beta
intressting, may the vrserver is started diffrently based on the host system, not sure what valve is doing.
with a custom build and the sockets moved to $HOME/.local/share/slimevr/SlimeVRDriver
its working correctly.
will look in to creating a patch that allows to overrides the PATH when needed.
btw just curious, you are using steam-runtime
and not the flatpak/snap, right?
no flatpak/snap in use.
steam comes from the arch pkg https://archlinux.org/packages/multilib/x86_64/steam/
btw i asked for someone with SteamVR experience to check this issue. I'm not against adding custom socket dir support, but I would like to know why you are having this issue.
sure, have not found the place where the isolation from the host system happens yet. happy to provide more info of my system / environment if needed.
Could you try to run SteamVR with Steam play none as the compatibility layer(install using protonup-qt) https://github.com/Scrumplex/Steam-Play-None - for instructions
Reason being is SteamVR is running under Valve's runtime and they may have changed how it works in this beta this would confirm that's the case
with Steam-Play-None SteamVR UI is not starting.
Do you have all the dependencies needed to see that try installing steam-native-runtime
tried, but same result.
steps:
sudo pacman -Syu
sudo pacman -S steam-native-runtime
steam-native
Run steam in a terminal and send the output here
You have tried previous versions right and only 2.2.1 is affected?
tested with Beta and Release Release does not start at all Steam-Play-None or not.
from looking at the logs I think this are the core problems:
libcef.so: cannot open shared object file: No such file or directory
/usr/bin/zenity: symbol lookup error: /usr/lib/libharfbuzz.so.0: undefined symbol: FT_Get_Transform
/home/links/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrmonitor: error while loading shared libraries: libsteam_api.so: cannot open shared object file: No such file or directory
/bin/sh\0-c\0/home/links/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=250820 -- /home/links/.local/share/Steam/ubuntu12_32/steam-launch-wrapper -- '/home/links/.local/share/Steam/compatibilitytools.d/Steam-Play-None-main'/launch.sh waitforexitandrun '/home/links/.local/share/Steam/steamapps/common/SteamVR/bin/vrstartup.sh'\0
vrstartup.sh[225616]: === Wed Dec 13 22:03:30 CET 2023 ===
vrstartup.sh[225616]: WARNING: launching in legacy LDLP scout, please use sniper SLR
vrstartup.sh[225616]: exec /home/links/.local/share/Steam/steamapps/common/SteamVR/bin/vrenv.sh /home/links/.local/share/Steam/steamapps/common/SteamVR/bin/vrstartup.sh
vrenv.sh[225616]: VRCOMPOSITOR_LD_LIBRARY_PATH=/home/links/.local/share/Steam/steamapps/common/SteamVR:/home/links/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/qt/lib:/home/links/.local/share/Steam/steamapps/common/SteamVR/bin/linux64:/home/links/.local/share/Steam/steamapps/common/SteamVR
vrenv.sh[225616]: exec /home/links/.local/share/Steam/steamapps/common/SteamVR/bin/vrstartup.sh
vrstartup.sh[225616]: WARNING: launching in legacy LDLP scout, please use sniper SLR
vrstartup.sh[225616]: call /home/links/.local/share/Steam/steamapps/common/SteamVR/bin/vrsetup.sh
vrsetup.sh[225650]: Detected scout LDLP runtime.
/usr/bin/zenity: symbol lookup error: /usr/lib/libharfbuzz.so.0: undefined symbol: FT_Get_Transform
vrsetup.sh[225650]: Error: user declined superuser request.
/usr/bin/zenity: symbol lookup error: /usr/lib/libharfbuzz.so.0: undefined symbol: FT_Get_Transform
vrstartup.sh[225616]: exec /home/links/.local/share/Steam/steamapps/common/SteamVR/bin/vrstartup-helper.sh
vrstartup-helper.sh[225616]: exec /home/links/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrstartup
Using breakpad crash handler
Setting breakpad minidump AppID = 250820
Forcing breakpad minidump interfaces to load
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
12/13 22:03:30 Init: Installing breakpad exception handler for appid(250820)/version(2.2.1)/tid(225616)
Using breakpad crash handler
Setting breakpad minidump AppID = 250820
Forcing breakpad minidump interfaces to load
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
12/13 22:03:30 Init: Installing breakpad exception handler for appid(250820)/version(2.2.1)/tid(225723)
VR Server (v1702410427)
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
Steam_SetMinidumpSteamID: Caching Steam ID: 76561197990129926 [API loaded yes]
Steam_SetMinidumpSteamID: Setting Steam ID: 76561197990129926
vrcompositor-launcher.sh[225746]: === Wed Dec 13 22:03:33 CET 2023 ===
vrcompositor-launcher.sh[225746]: Detected scout LDLP runtime.
vrcompositor-launcher.sh[225746]: exec /home/links/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrcompositor-launcher
Using vrcompositor capability proxy
Failed to raise ambient cap
Launching /home/links/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrcompositor
Using breakpad crash handler
Setting breakpad minidump AppID = 250820
Forcing breakpad minidump interfaces to load
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
12/13 22:03:33 Init: Installing breakpad exception handler for appid(250820)/version(2.2.1)/tid(225746)
Fossilize INFO: Overriding serialization path: "/home/links/.local/share/Steam/steamapps/shadercache/250820/fozpipelinesv6/steamapprun_pipeline_cache".
12/13 22:03:34 Init: Installing breakpad exception handler for appid(250820)/version(2.2.1)/tid(225746)
assert_20231213220334_4.dmp[225782]: Uploading dump (out-of-process)
/tmp/dumps/assert_20231213220334_4.dmp
Using breakpad crash handler
Setting breakpad minidump AppID = 250820
Forcing breakpad minidump interfaces to load
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
12/13 22:03:34 Init: Installing breakpad exception handler for appid(250820)/version(2.2.1)/tid(225796)
./vrwebhelper: error while loading shared libraries: libcef.so: cannot open shared object file: No such file or directory
Using breakpad crash handler
Setting breakpad minidump AppID = 250820
Forcing breakpad minidump interfaces to load
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
12/13 22:03:34 Init: Installing breakpad exception handler for appid(250820)/version(2.2.1)/tid(225812)
This application failed to start because it could not find or load the Qt platform plugin "xcb".
Available platform plugins are: xcb.
Reinstalling the application may fix this problem.
crash_20231213220334_2.dmp[225815]: Uploading dump (out-of-process)
/tmp/dumps/crash_20231213220334_2.dmp
assert_20231213220334_4.dmp[225782]: Finished uploading minidump (out-of-process): success = yes
assert_20231213220334_4.dmp[225782]: response: CrashID=bp-38816eec-d988-4446-8d40-5a4bd2231213
assert_20231213220334_4.dmp[225782]: file ''/tmp/dumps/assert_20231213220334_4.dmp'', upload yes: ''CrashID=bp-38816eec-d988-4446-8d40-5a4bd2231213''
crash_20231213220334_2.dmp[225815]: Finished uploading minidump (out-of-process): success = yes
crash_20231213220334_2.dmp[225815]: response: CrashID=bp-0d472697-b2b8-4c83-8744-4ac712231213
crash_20231213220334_2.dmp[225815]: file ''/tmp/dumps/crash_20231213220334_2.dmp'', upload yes: ''CrashID=bp-0d472697-b2b8-4c83-8744-4ac712231213''
./vrwebhelper: error while loading shared libraries: libcef.so: cannot open shared object file: No such file or directory
Using breakpad crash handler
Setting breakpad minidump AppID = 250820
Forcing breakpad minidump interfaces to load
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
12/13 22:03:36 Init: Installing breakpad exception handler for appid(250820)/version(2.2.1)/tid(225857)
This application failed to start because it could not find or load the Qt platform plugin "xcb".
Available platform plugins are: xcb.
Reinstalling the application may fix this problem.
crash_20231213220336_2.dmp[225866]: Uploading dump (out-of-process)
/tmp/dumps/crash_20231213220336_2.dmp
Gtk-Message: 22:03:37.021: Failed to load module "colorreload-gtk-module"
Gtk-Message: 22:03:37.021: Failed to load module "window-decorations-gtk-module"
steam.sh[225880]: Running Steam on endeavouros rolling 64-bit
steam.sh[225880]: STEAM_RUNTIME is disabled by the user
steam.sh[225880]: Can't find 'steam-runtime-check-requirements', continuing anyway
tid(225967) burning pthread_key_t == 0 so we never use it
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
Steam_SetMinidumpSteamID: Caching Steam ID: 76561197990129926 [API loaded yes]
Steam_SetMinidumpSteamID: Setting Steam ID: 76561197990129926
/bin/sh\0-c\0/home/links/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=1009850 -- /home/links/.local/share/Steam/ubuntu12_32/steam-launch-wrapper -- '/home/links/.local/share/Steam/steamapps/common/OVR_AdvancedSettings/run.sh'\0
You can tell the Steam Linux Runtime to expose SlimeVR's IPC file within its sandbox by putting PRESSURE_VESSEL_FILESYSTEMS_RW=$XDG_RUNTIME_DIR/SlimeVRDriver %command%
in SteamVR's launch options. This is the same issue Monado runs into for Steam games, as documented at https://gitlab.com/znixian/OpenOVR#linux-specific-info
Edit: if it wasn't clear, adding that launch option fixes SlimeVR
anyway if you truely believe this to be a steamvr issue you can always report it here(the not launching part(https://github.com/ValveSoftware/SteamVR-for-Linux/)
yes, can confirme adding PRESSURE_VESSEL_FILESYSTEMS_RW=$XDG_RUNTIME_DIR/SlimeVRDriver %command%
makes it work with out moding the socket dir, may its a good idea to add this to the docu?
I dont think that Steam-Play-None is supported by Valve , they have ther runtime for a reason, If not they need to support any OS with any version of dependenys which sound bad ;)
can you report this to https://github.com/ValveSoftware/steam-runtime/issues please, I honestly feel like /run
should be mounted from the system, people use it to override LD_PRELOAD
for TF2 for example qwq
currently using SlimeVR on Linux with SteamVR is not possible.
error message from vrserver:
after some debugging I noticed that this comes from the fact that the vrserver is started in a chroot like envirement and has no access to the host files system. this means /tmp and /run/user/1000 are not the same as the host system sees, and as a result the sockets from the slimeVR server are not there from the point of view of vrserver or the slimevr driver.
How to easy see the chroot mounts:
How to explore the chroot isolation: