Develop XR in Linux

J.Gong

2026-05-07

1.33min

Develop XR in Linux

As I have partially migrated my workflow to Linux 🐧, I wanted to explore whether the ecosystem is ready for XR development 🥽. Here is a summary of my findings.

🛠 System APIs & Sandboxing

In Linux, OpenXR APIs function as system-level APIs. This means if your development tools or apps are running in a sandbox (e.g., Flatpak 📦), you will likely encounter additional configuration hurdles.

🎮 SteamVR

I installed Steam via pacman on CachyOS 🔵.

  • Setup: Requires a system restart after installation to function correctly.
  • Performance: The SteamVR interface feels consistent with the Windows experience, though I haven’t performed deep stress tests yet.

🔗 WiVRn: The Lightweight Alternative

I tested WiVRn, which acts as a lightweight equivalent to Oculus Link for Linux ⚡.

  • Result: It successfully connects with Godot 🤖.
  • Configuration: You must set the following environment variable to point to the correct runtime: XR_RUNTIME_JSON=/usr/share/openxr/1/openxr_wivrn.json

🏗 Game Engines: Unity & Godot

  • Godot: Works well and feels more stable on Linux than on other platforms 🟢.
  • Unity: Currently a “no-go” ❌. I attempted to use this solution, but it failed. The issue appears from Unity’s specific dependencies, it used an Android version not a common Linux version.
  • Unreal Engine (UE): Not yet tested ⏳.

🖥 Screen Mirroring

I looked for ways to mirror my desktop to the headset:

  • WayVR: I attempted to use WayVR alongside WiVRn. While there were no error logs, the headset remained blank 🌑.
  • Workaround: For now, using an HDMI capture card 🔌 is a more reliable solution for monitoring.
  • X11 (Working Workaround): To fix this, I reverted to an Xorg session by installing the X11 packages:
sudo pacman -S plasma-x11-session kwin-x11 xorg-server

Logging into the Xorg environment allows WayVR to run correctly. Once inside the headset, look at your left wrist while holding the controller, and click the DP1 button to view and select the desired desktop window.

📝 Conclusion

Yes, XR development on Linux is possible, specifically with Godot 🛠️. However, the overall experience is not as seamless as on Windows. If you are committed to the Godot ecosystem, Linux is a viable host environment.