Skip to content

Install

vrOS is distributed on Steam as app 3873610. One purchase covers every platform it supports, and Steam installs the build for the machine you are on. There is no separate download and no installer to run afterwards.

A headset is optional at install time. vrOS starts as a desktop application and attaches to a VR runtime when one is present, so you can install it, open it, and look around before you put anything on your head.

Windows Linux Steam Frame
Operating system Windows 10 version 1903 or later, or Windows 11 x86-64 desktop Linux, or SteamOS SteamOS on ARM64
VR runtime SteamVR SteamVR, or Monado / WiVRn In development
Overlay path OpenVR IVROverlay OpenVR IVROverlay on SteamVR; OpenXR XR_EXTX_overlay on Monado / WiVRn Not settled
Window capture Windows.Graphics.Capture PipeWire through xdg-desktop-portal Not settled
Graphics Direct3D 11 Vulkan Vulkan
Status Supported Supported In development

Windows 10 version 1903 is the floor because window capture uses Windows.Graphics.Capture, which arrived in that release. Windows 11 is supported throughout.

SteamVR is the VR runtime on Windows. SteamVR implements no OpenXR overlay extension, so overlays go through OpenVR IVROverlay; vrOS resolves openvr_api.dll from your SteamVR installation rather than shipping its own. Install SteamVR through Steam if you do not already have it. You do not need to start it first — see First run.

Two VR stacks exist on desktop Linux and each is missing the other’s overlay API, so vrOS ships both backends and uses whichever runtime you are running:

  • SteamVR for Linux — overlays through OpenVR IVROverlay.
  • Monado / WiVRn (including Envision) — overlays through OpenXR XR_EXTX_overlay, which Monado implements. There is no OpenVR on this stack at all.

Capture goes through PipeWire and xdg-desktop-portal, which means your desktop environment shows its own picker when vrOS asks for a window or a display. That is deliberate: the portal picker is the grant. X11 and XComposite are used only where a session needs them.

The tray icon uses StatusNotifierItem. KDE shows it as-is. GNOME needs a shell extension for tray icons before it will appear.

There are two ways to use vrOS with a Steam Frame, and only one of them is ready.

Streaming from your PC works today. The Frame’s primary mode is wireless PCVR streaming from a Windows or Linux PC. In that mode vrOS is running on the PC, inside SteamVR, exactly as it does for any other PCVR headset. Nothing Frame-specific is involved and no separate build is needed.

Running natively on the Frame is in development. Two questions stay open until they are answered on the device: which overlay path the on-device runtime actually exposes, and what can be captured there. Until both are settled, native Frame is listed as in development and not as supported.

The depot is a single executable. The action manifest, the four controller binding files, and the SteamVR application manifest are embedded in it and written into vrOS’s data directory the first time it attaches to a runtime, so there is nothing to register by hand and nothing to copy into SteamVR.

A separate Steam app, 3893370, carries the opt-in playtest. Builds land there before they reach the main app.

One thing to know if you use both: SteamVR files controller bindings under the Steam app that launched the process. Bindings you customize on the playtest build are stored against the playtest app, not against the main one, so a customization made in the playtest does not follow you to the release build.

First run covers what happens the first time you open it, and what to do if the Dash does not show up.