Help getting SteamVR running

I’m running into a number of issues with getting SteamVR running with an HTC Vive.

The first one is steamvr throwing an error saying it needs superuser access. The errorlog reads

Mon Oct 21 01:01:01 EDT 2019 - Error: setcap of vrcompositor-launcher failed.

Launching Steam via a terminal to read the error it spits out:

getcap: symbol lookup error: getcap: undefined symbol: cap_get_nsowner
+ [[ '' == *\c\a\p\_\s\y\s\_\n\i\c\e* ]]

Doing some googling led to this git issue, and those troubleshooting steps didn’t work for me. Trying to set the permissions manually with the following command failed too:

sudo setcap CAP_SYS_NICE+ep ~/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrcompositor-launcher

with steamvr saying “A key component of SteamVR isn’t working correctly. Please reinstall SteamVR.” This went away when removing all permissions from the same file.

It also throws this error:

/home/kristian/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrcompositor-launcher: error while loading shared libraries: libcap.so.2: cannot open shared object file: No such file or directory

even though I have libcap installed.

The one time I did manage to get it to actually start, it would fail to load the tutorial, and not proceed until that was completed. The error reading:

Failed to change directory in process '/home/kristian/.local/share/Steam/steamapps/common/tools/steamvr_environments/game/bin/steamtours': 2
Failed to execute process '/home/kristian/.local/share/Steam/steamapps/common/tools/steamvr_environments/game/bin/steamtours': 2

I’ve googled and hacked at this as best as I can, and I can’t think of anything else to try. I can post my .nix files if needed, but otherwise I hope someone here can give me a hand.

What NixOS version are you running?

I have SteamVR working with a Valve Index.

hardware.steam-hardware.enable = true; needs to be set to detect the hardware.

Here is my config: https://github.com/davidak/nixos-config/blob/840956350d96c3d621e21c17f0bc5bc8765074d8/profiles/gaming.nix

I already have hardware.steam-hardware.enable = true set, and I’m on the unstable channel of 19.09

Maybe libcap has to be added to the steam dependencies.

https://github.com/NixOS/nixpkgs/blob/486a728b9412ec17dc9a7266fd870260f72c0c0b/pkgs/games/steam/chrootenv.nix#L35

You can create an issue at Issues · NixOS/nixpkgs · GitHub.

Unfortunately overriding the steam build with libcap as a dependency didn’t seem to fix the issue either.

I just tried SteamVR with a Valve Index, and it now loads SteamVR Home. It still complains about errors in VR setup when you launch it.

Unfortunately, when I tried launching Beat Saber, it displayed on my monitor rather than my headset.

Works now. I just needed to change my xmonad settings. I need to try Half-Life: Alyx next, since the linux native version doesn’t work with my hardware in Ubuntu, so I’m curious if I can get it to work in Nixos.

I am trying to get SteamVR to run on current NixOS.

I am running steam from unstable. And I get the 307 when starting SteamVR for all versions of SteamVR that I can access via the steam beta program.

Have you encountered something similar?