This guide is meant for tinkerers who know their way around.
I do not recommend attempting to use the VIVE Pro 2 on anything other than bleeding edge systems (such as Arch Linux which is the main focus of this repository).
The VR experience on Linux as of 2024-01-10 is decent when you can get SteamVR 2.0+ working.
Thanks to CertainLach for creating the kernel patches and a driver for the VIVE Pro 2 on Linux!
Also see these helpful sources:
- Linux VR Adventures Wiki: https://lvra.gitlab.io/
- VR on Linux: https://vronlinux.org/
- SteamVR for Linux Support: https://help.steampowered.com/en/faqs/view/18A4-1E10-8A94-3DDA
- Reddit: https://www.reddit.com/r/virtualreality_linux/
Updated: 2024-01-10
cd kernel
- Follow KERNEL.md
Install PolKit rule to allow setting CAP_SYS_NICE capabilities for the SteamVR compositor and/or Monado service without sudo
NOTE: This rule assumes the following installation locations for SteamVR and Monado:
- SteamVR:
/home/$USER/.steam/steam/steamapps/common/SteamVR/bin/linux64/vrcompositor-launcher
- SteamVR:
/home/$USER/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/vrcompositor-launcher
- Monado:
/usr/bin/monado-service
Modify the rule if your home or SteamVR directory is elsewhere (which is unsupported by Steam as far as I know).
sudo cp ./polkit-vr-setcap-nice.rules /etc/polkit-1/rules.d/90-vr-setcap-nice.rules
You should not be prompted for password when running the pkexec commands.
We will assume you have both SteamVR and Monado installed (not both are required however).
sudo systemctl restart polkit.service
pkexec setcap CAP_SYS_NICE=eip /home/$USER/.steam/steam/steamapps/common/SteamVR/bin/linux64/vrcompositor-launcher
pkexec setcap CAP_SYS_NICE=eip /usr/bin/monado-service
- CertainLach's repository: https://github.com/CertainLach/VivePro2-Linux-Driver
- CertainLach's Patreon: https://patreon.com/0lach
- Instructions: STEAMVR.md
- This is an open source alternative to the regular SteamVR and CertainLach's driver.
- Instructions: OSS.md
- See SteamVR instructions: STEAMVR.md
- See experimental OSS instructions: OSS.md
See: TROUBLESHOOTING.md