Building from Linux

Linux support is experimental and may have extra issues.

It is not recommended to build a Windows or Android build from Linux currently as they will likely be missing features or not function at all.

This page assumes you have gone through Getting Started first.

Linux prerequisites

Do not commit the removal of the Utilities listed on this doc page! They are required for building Windows and Android clients!

In order to build anything Basis under Linux you need to remove com.meta.xr.sdk.core "Meta XR Core SDK" and com.unity.xr.openxr "OpenXR Plugin" via the Unity Package Manager.

You may need to install com.unity.toolchain.linux-x86_64 "Toolchain Linux x64" but Unity should install that for you.

Unity Package Manager Removing packages

Building .BEE files from Linux

For building .bee files for Windows and Android from a Linux Editor you will need to delete the Assets/Basis/Profiles/HTCViveTrackerProfile.cs file and set the "Scripting Backend" to Mono under Edit > Project Settings > Player > Configuration > Scripting Backend.

Project Settings Scripting Backend

Building a native Linux client from Linux

It is recommended to change your "Scripting Backend" to IL2CPP for better performance.

Project Settings IL2CPP Backend

Then build Basis as you would normally.

Basis VR on Linux

You may need to launch Basis with the --force-OpenVRLoader flag for it to function properly in VR:

./basis.x86_64 --force-OpenVRLoader

You do not use this when launching for Desktop.

Proton / Wine

If you wish to use OpenXR with a Windows build under Proton / Wine you can add:

PRESSURE_VESSEL_IMPORT_OPENXR_1_RUNTIMES=1 %command% --disable-OpenVRLoader --force-OpenVRLoader

To your Steam Launch Arguments.

Other Info