Categories
Free Software Virtual Reality

OpenXR on GNU/Linux With OpenHMD and Monado

With the release of Debian 10, it is possible to build Monado on Debian in order to use the OpenXR SDK with headsets supported by OpenHMD.

Hopefully this means a future OpenXR-enabled Firefox will work with them as well.

In the meantime we can at least run the hello_xr demo. Here’s how…

Build and install OpenHMD:

https://github.com/OpenHMD/OpenHMD

Build and install Monado:

https://gitlab.freedesktop.org/monado/monado/

Build the OpenXR SDK:

https://github.com/KhronosGroup/OpenXR-SDK

OpenXR-SDK currently ignores XR_RUNTIME_JSON and looks in .config rather than looking
in .local/share where Monado installs its runtime configuration json file.

To fix this, run:

ln -s ~/.config/openxr/0/openxr_monado.json ~/.config/openxr/0/active_runtime.json

To set the Rift to non-desktop (before each run, if not set in the kernel), run:

xrandr --output HDMI-0 --prop --set non-desktop 1

If needed you can check this by running:

xrandr --prop

Then to run the OpenXR-SDK hello_xr demo, run the following in the OpenXR-SDK directory:

./build/linux_debug/src/tests/hello_xr/hello_xr -g Vulkan

Which will show the pocket universe captured in a screenshot the top of this post in your VR headset.