If there are no packages for your distribution yet, you can try the installation from source.
Ubuntu (20.04 LTS only)
Add the xrdesktop PPA.
sudo add-apt-repository ppa:xrdesktop/xrdesktop sudo apt update
Note: Updated KWin versions from PPAs like "Kubuntu Backports" might be incompatible with the plugin from this PPA and will not even attempt to load it. With such a configuration, at least kwin-effect-xrdesktop will have to be built from source.
sudo apt install kwin-effect-xrdesktop kdeplasma-applets-xrdesktop xrdesktop libsdl2-2.0-0
sudo apt install gnome-shell gnome-shell-extension-xrdesktop xrdesktop libsdl2-2.0-0
gxr backend (mandatory)
xrdesktop can run on Valve's SteamVR via the OpenVR API as well as any OpenXR runtime (specifically tested is the "Monado" runtime) via the OpenXR API. This support is implemented as backend libraries for gxr.
To run xrdesktop on OpenVR/SteamVR, install the OpenVR backend:
sudo apt install libgxr-openvr-0.15-0
Running xrdesktop on OpenXR/Monado is supported without additional packages. The OpenXR backend is already included in the libgxr-0.15 (or newer) package. Read the xrdesktop wiki about openxr for more information.
In the following sections, remove the -git suffixes to build the stable version of xrdesktop. Note that the stable AUR packages are maintained by a volunteer not affiliated with Collabora.
Unlike the ubuntu package, the gxr package depends on openvr and openxr headers. Both backends will be built and installed.
KWin will be automatically installed by this command and can be run standalone. To make use of the plasma applet, plasmashell should be installed.
yay -S kwin-effect-xrdesktop-git kdeplasma-applets-xrdesktop-git
yay -S gnome-shell-xrdesktop-git gnome-shell-extension-xrdesktop-git
If you just installed xrdesktop and have not restarted kwin yet, do so now, for example in krunner (Alt + F2):
KWin configuration: Disable blocking of compositing
The xrdesktop KWin effect can only work and mirror thed esktop windows to VR when OpenGL compositing is used. KDE disables desktop effects by default when a full screen application with graphics is running. This is also the case when running SteamVR.
This option should be unchecked in
'Display and Monitor" -> "Compositor" -> Checkbox: "Allow applications to block compositing"
Add xrdesktop plasma applet to desktop
- Right click on desktop or any panel and activate
Unlock Widgetsif necessary.
- Cick on the panel configuration menu or right click on desktop and choose
- Scroll to bottom and drag
XR Desktop Switchto the desktop or a panel.
Start xrdesktop on KWin
- Start SteamVR
- Activate xrdestkop in the plasma applet.
Alternatively you can also run the following qdbus command
qdbus org.kde.KWin /XR org.kde.kwin.XR.active true
If you just installed xrdesktop and have not restarted gnome-shell yet, do so now:
Alt + F2to open the command window.
Enterto reload GNOME Shell.
Enable xrdesktop gnome-shell extension
gnome-tweaksif you did not already.
- Press the
Superkey, type and open
- Go to the
- Enable the
Start xrdesktop on gnome-shell
- Start SteamVR
Mirror to XRin the xrdesktop extension.
Alternatively you can also run the following script, which is included in gnome-shell-xrdesktop
xrdesktop package includes a dedicated settings UI named
xrdesktop Settings in the menu or
Alternatively a "raw" view of the settings can be used with the
dconf-editor gnome tool. To jump right to the xrdesktop settings use the /org/xrdesktop namespace as parameter start it as
Individual settings can also be set with the
gsettings command line tool. For example:
gsettings set org.xrdesktop always-show-overlay-pointer false
All settings should apply immediately to a running xrdesktop session.
KWin plugin not working
kwin_x11 --replace in a terminal will immediately (without starting xrdesktop) print this message if the plugin could be found and loaded:
Initializing xrdesktop plugin successful.
If it does not, ensure KWin desktop effect is enabled
Desktop Effectssettings (Available in the Application menu or in System Settings - Desktop Behavior)
- Ensure the
XR Desktopeffect is enabled (it should be enabled by default)
Make sure you don't filter the effects:
kwin_x11 --replace from a terminal will also print various debugging messages to stdout while running xrdesktop.
To follow the journal of GNOME Shell, run
journalctl /usr/bin/gnome-shell -f