docker-steam-headless icon indicating copy to clipboard operation
docker-steam-headless copied to clipboard

SteamVR Support

Open murillobrand opened this issue 2 years ago • 7 comments

Is your feature request related to a problem?

XFCE4, the window manager of the container, does not support DRM leasing, that is needed for SteamVR to run properly.

What is your feature request?

First of all, congratulations for this awesome container, as stated in other issue, it's really pure magic. But there is one thing that would be really nice to have and is missing, which is supporting SteamVR. I managed to run the container in my TrueNAS setup. And I can run Steam and Epic games very well. But SteamVR doesn't work due that xfce4 doesn't have DRM leasing support: https://help.steampowered.com/en/faqs/view/18A4-1E10-8A94-3DDA

I tried to change xfce4 for KDE-Plasma by change the Dockerfile and build my own image, but couldn't make it work yet. But, besides that, KDE-Plasma is very large (more than quadupled the size of the container) and heavy. Any ideas of what to do? Any other replacement for xfce4?

Are there any workarounds?

No response

Additional Context

No response

murillobrand avatar Dec 04 '23 17:12 murillobrand

Hi, I think something else might be causing the issue. The steam help page states that

All X11 Window Managers and Compositors

are compatible. Untitled

jsw08 avatar Jan 06 '24 11:01 jsw08

I am trying to use this container with Occulus Quest 3 and I get Streaming VR is not available on that computer. Has anyone figured out a workaround yet?

ghost avatar Jan 09 '24 00:01 ghost

i have a similar issue, where steamVR requires to be run with root priviliges (at least for the first time), which is a bit of a problem to do. image and after clicking on "yes" image

here is the log. vrstartup.sh[1096]: === Thu Apr 4 11:25:04 CEST 2024 === vrstartup.sh[1096]: WARNING: launching in legacy LDLP scout, please use sniper SLR vrstartup.sh[1096]: exec /home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/vrenv.sh /home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/vrstartup.sh vrenv.sh[1096]: VRCOMPOSITOR_LD_LIBRARY_PATH=/home/default/.steam/debian-installation/steamapps/common/SteamVR:/home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/linux64/qt/lib:/home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/linux64:/home/default/.steam/debian-installation/ubuntu12_32/steam-runtime/pinned_libs_32:/home/default/.steam/debian-installation/ubuntu12_32/steam-runtime/pinned_libs_64:/lib/i386-linux-gnu:/usr/local/lib:/lib/x86_64-linux-gnu:/lib:/home/default/.steam/debian-installation/ubuntu12_32/steam-runtime/lib/i386-linux-gnu:/home/default/.steam/debian-installation/ubuntu12_32/steam-runtime/usr/lib/i386-linux-gnu:/home/default/.steam/debian-installation/ubuntu12_32/steam-runtime/lib/x86_64-linux-gnu:/home/default/.steam/debian-installation/ubuntu12_32/steam-runtime/usr/lib/x86_64-linux-gnu:/home/default/.steam/debian-installation/ubuntu12_32/steam-runtime/lib:/home/default/.steam/debian-installation/ubuntu12_32/steam-runtime/usr/lib:/home/default/.steam/debian-installation/steamapps/common/SteamVR vrenv.sh[1096]: exec /home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/vrstartup.sh vrstartup.sh[1096]: WARNING: launching in legacy LDLP scout, please use sniper SLR vrstartup.sh[1096]: call /home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/vrsetup.sh vrsetup.sh[1130]: Detected scout LDLP runtime. vrsetup.sh[1130]: Error: setcap of vrcompositor-launcher failed. vrstartup.sh[1096]: exec /home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/vrstartup-helper.sh vrstartup-helper.sh[1096]: exec /home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/linux64/vrstartup

HexRebuilt avatar Apr 04 '24 09:04 HexRebuilt

Hello, i have the same problem and the same log. This leads to the error message on my Quest 3 : "VR Streaming not available on this SteamLink" or something like this. Have anyone been able to launch SteamVR with SteamHeadless ?

FantomeP avatar Apr 07 '24 20:04 FantomeP

Did either of you manage to get this to work?

Worldking348 avatar Jun 05 '24 00:06 Worldking348

I have the same issue.. but what i found was that after installing https://github.com/alvr-org/ALVR & registering the driver, the error would still pop up but after that steamVR seems to be running.. but shows this error:

image

Sadly i still can't connect via SteamLink and when connection using ALVR, steamvr server is eating all CPU cores & i have to kill the container :/

Nold360 avatar Aug 24 '24 11:08 Nold360

hi,

just tried to get VR to work as well (haven't touched my index for a very long time, and was (still am) very happy with playing flat games via wolf)

first of all (this might be related):

In order to get docker-steam-headless to work at all, I had to add

- /run/udev/data/:/run/udev/data/:ro

to the volumes in the docker-compose.yml file, else I got uev errors, and the vnc/xorg never started.

So far so good.

The vrsetup.sh issue:

the pkexec command which is used in the setup script fails, therefore the setcap command to accept the vrcompositor-launcher binary fails as well. this can be easily workarounded by this one time run (in a root terminal)

root@SteamHeadless:/# cd /home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/linux64
root@SteamHeadless:/home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/linux64# getcap vrcompositor-launcher
root@SteamHeadless:/home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/linux64# setcap CAP_SYS_NICE=eip vrcompositor-launcher
root@SteamHeadless:/home/default/.steam/debian-installation/steamapps/common/SteamVR/bin/linux64# getcap vrcompositor-launcher
vrcompositor-launcher cap_sys_nice=eip

the binary is accepted from now on.

Unfortunately the HMD isn't detected here anyway. When starting SteamVR I get a "Welcome Please plug in your VR headset".

(this ex-gaming machine worked fine with the HMD on the host installation, but it is headless for more than a year now I removed several gaming related software, so maybe I miss something)

What I did though, is add back the required udev rules to /etc/udev/rules.d/ (both on the host system and in the container).

This doesn't seem to work though, maybe this is some udev limit within the container?

Unfortunately no final solution, but I hope better than nothing :)

frostworx avatar Feb 21 '25 18:02 frostworx