You are not logged in.
Hi gents,
I am trying to run my favorite aviation sim, Digital Combat Simulator (DCS), in VR under Arch. After a lot of tinkering I have
- DCS working in 2D, under Lutris, with a GE-Proton10-10
- my HP Reverb G2 VR headset working with monado. I can run the xrgears and hello_xr demo programs and see the blocks and train station in my headset
Getting DCS to use OpenXR is more difficult and I am stuck with a peculiar issue. My wine/lutris log says the following:
Error [GENERAL | xrEnumerateInstanceExtensionProperties | OpenXR-Loader] : RuntimeInterface::LoadRuntime skipping manifest file /home/auser/.config/openxr/1/active_runtime.json, failed to load with message "/usr/lib/libopenxr_monado.so: cannot open shared object file: No such file or directory"
Error [GENERAL | xrEnumerateInstanceExtensionProperties | OpenXR-Loader] : RuntimeInterface::LoadRuntimes - failed to load a runtime
Error [GENERAL | xrEnumerateInstanceExtensionProperties | OpenXR-Loader] : Failed to find default runtime with RuntimeInterface::LoadRuntime()
Error [GENERAL | xrEnumerateInstanceExtensionProperties | OpenXR-Loader] : Failed querying extension properties
which is odd, because
[auser@peasant ~]$ cat ~/.config/openxr/1/active_runtime.json
{
"file_format_version": "1.0.0",
"runtime": {
"name": "Monado",
"library_path": "/usr/lib/libopenxr_monado.so",
"MND_libmonado_path": "/usr/lib/libmonado.so"
}
}
[auser@peasant ~]$ file -L /usr/lib/libopenxr_monado.so
/usr/lib/libopenxr_monado.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=89d4b0d61be7c5fac11394d3ea6f6a63e10fe566, stripped
[auser@peasant ~]$ ls -lL /usr/lib/libopenxr_monado.so
-rwxr-xr-x 1 root root 826008 Oct 16 21:08 /usr/lib/libopenxr_monado.so
So why can openxr not find this file?
Last edited by 2.0.33 (Yesterday 18:26:04)
Offline
So gents, the solution is quite easy,
use the option
PRESSURE_VESSEL_IMPORT_OPENXR_1_RUNTIMES=1
as an environment variable.
! IMPORTANT !
However, do not combine this with using the XR_RUNTIME_JSON environment variable. Using this alongside the pressure vessel directive messed it up. So make sure your OpenXR runtime is set correctly via one of the other means outlined at https://monado.freedesktop.org/getting- … plications
Offline
Oh nice that PRESSURE_VESSEL_IMPORT_OPENXR_1_RUNTIMES shipped now.
It's also possible to do this manually, not very well documented but OpenComposite has some info here https://gitlab.com/znixian/OpenOVR#linux-specific-info
As far as I know it: 1) pressure vessel only maps the home directory via its original path to its environment. Systen paths outside home like /usr/ get mapped /run/host/usr/ so that has to be taken into account when setting XR_RUNTIME_JSON 2) specific paths like $XDG_RUNTIME_DIR/monado_comp_ipc can be directly allowed like PRESSURE_VESSEL_FILESYSTEMS_RW=$XDG_RUNTIME_DIR/monado_comp_ipc
PRESSURE_VESSEL_IMPORT_OPENXR_1_RUNTIMES supports some default configs automatically so you don't have to care about these things.
Offline