|
|
# KDE
|
|
|
# Installation
|
|
|
|
|
|
## Installation
|
|
|
If there are no packages for your distribution yet, you can try the [installation from source](Installation-from-source).
|
|
|
|
|
|
If there are no packages for your distro yet, you can try the [installation from source](Installation-from-source).
|
|
|
## Ubuntu (20.04 LTS only)
|
|
|
|
|
|
### Arch Linux
|
|
|
|
|
|
This will install kwin if it's not available yet.
|
|
|
You should probably install the `plasma` metapackage.
|
|
|
Add the [xrdesktop PPA](https://launchpad.net/~xrdesktop/+archive/ubuntu/xrdesktop/+packages).
|
|
|
|
|
|
```
|
|
|
yay -S kwin-effect-xrdesktop-git kdeplasma-applets-xrdesktop-git
|
|
|
sudo add-apt-repository ppa:xrdesktop/xrdesktop
|
|
|
sudo apt update
|
|
|
```
|
|
|
|
|
|
This should install `gulkan`, `openvr-glib` and `xrdesktop` libraries as dependencies.
|
|
|
### KDE (Kubuntu)
|
|
|
|
|
|
### Kubuntu
|
|
|
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](Installation-from-source).
|
|
|
|
|
|
1. Add the [xrdesktop PPA](https://launchpad.net/~xrdesktop/+archive/ubuntu/xrdesktop/+packages).
|
|
|
sudo add-apt-repository ppa:xrdesktop/xrdesktop
|
|
|
```
|
|
|
sudo apt install kwin-effect-xrdesktop kdeplasma-applets-xrdesktop xrdesktop libsdl2-2.0-0
|
|
|
```
|
|
|
|
|
|
2. `sudo apt install kwin-effect-xrdesktop kdeplasma-applets-xrdesktop libxrdesktop-dev libsdl2-2.0-0`
|
|
|
### Gnome (Ubuntu)
|
|
|
|
|
|
## Restart KWin Shell
|
|
|
```
|
|
|
sudo apt install gnome-shell-xrdesktop gnome-shell-extension-xrdesktop xrdesktop libsdl2-2.0-0
|
|
|
```
|
|
|
|
|
|
In order to use the plasma applet to enable and disable XR mode, KWin should be restarted.
|
|
|
### gxr backend (mandatory)
|
|
|
|
|
|
Run `kwin_x11 --replace` in krunner (hotkey: alt+f2) or a terminal.
|
|
|
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.
|
|
|
|
|
|
## Disable blocking of compositing
|
|
|
To run xrdesktop on OpenVR/SteamVR, install the OpenVR backend:
|
|
|
|
|
|
KDE disables desktop effects by default when a full screen application with graphics is running. This is also the case when running SteamVR. This prevents our KWin effect to work and mirror the Desktop to VR.
|
|
|
```
|
|
|
sudo apt install libgxr-openvr-0.14-0
|
|
|
```
|
|
|
|
|
|
This option should be unchecked:
|
|
|
To run xrdesktop on OpenXR/Monado, install the OpenXR backend and read the [xrdesktop wiki about openxr](openxr):
|
|
|
|
|
|
'Display and Monitor" -> "Compositor" -> Checkbox: "Allow applications to block compositing"
|
|
|
```
|
|
|
sudo apt install libgxr-openxr-0.14-0
|
|
|
```
|
|
|
|
|
|
## Enable KWin desktop effect
|
|
|
---
|
|
|
|
|
|
1. Open `Desktop Effects` settings (Available in the Application menu or in System Settings - Desktop Behavior)
|
|
|
2. Ensure the `XR Desktop` effect is enabled (it should be enabled by default)
|
|
|
## Arch Linux
|
|
|
|
|
|
![KDE Desktop Effects](uploads/b0d51f256a5f92b164dbbd6229a1be05/kde-desktop-effects.png)
|
|
|
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.
|
|
|
|
|
|
Make sure you don't filter the effects:
|
|
|
Unlike the ubuntu package, the gxr package depends on openvr **and** openxr headers. Both backends will be built and installed.
|
|
|
|
|
|
![kde-show-all-effects](uploads/e919fed62247c51583a1e51de6da1285/kde-show-all-effects.png)
|
|
|
### KDE
|
|
|
|
|
|
## Add xrdesktop plasma applet to desktop
|
|
|
KWin will be automatically installed by this command and can be run standalone. To make use of the plasma applet, plasmashell should be installed.
|
|
|
|
|
|
1. Right click on desktop or any panel and activate `Unlock Widgets` if necessary.
|
|
|
2. Cick on the panel configuration menu or right click on desktop and choose `Add widgets`.
|
|
|
2. Scroll to bottom and drag `XR Desktop Switch` to the desktop or a panel.
|
|
|
```
|
|
|
yay -S kwin-effect-xrdesktop-git kdeplasma-applets-xrdesktop-git
|
|
|
```
|
|
|
|
|
|
## Start xrdesktop
|
|
|
### Gnome
|
|
|
|
|
|
1. Start SteamVR.
|
|
|
2. Activate xrdestkop in the plasma applet.
|
|
|
```
|
|
|
yay -S gnome-shell-xrdesktop-git gnome-shell-extension-xrdesktop-git
|
|
|
```
|
|
|
|
|
|
![Plasma Applet](uploads/3fabfc7e48eddf7dcd99abf644f0593d/kde-applet.png)
|
|
|
---
|
|
|
|
|
|
Alternatively you can also run the following qdbus command
|
|
|
---
|
|
|
|
|
|
```
|
|
|
qdbus org.kde.KWin /XR org.kde.kwin.XR.active true
|
|
|
```
|
|
|
# Running
|
|
|
|
|
|
## Debugging
|
|
|
## KDE
|
|
|
|
|
|
To see kwin's debug output on stdout, run kwin from a terminal:
|
|
|
If you just installed xrdesktop and have not restarted kwin yet, do so now, for example in krunner (Alt + F2):
|
|
|
|
|
|
```
|
|
|
kwin_x11 --replace
|
|
|
```
|
|
|
|
|
|
# GNOME
|
|
|
### KWin configuration: Disable blocking of compositing
|
|
|
|
|
|
## Installation
|
|
|
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.
|
|
|
|
|
|
### Arch Linux
|
|
|
This option should be unchecked in `systemsettings5`:
|
|
|
|
|
|
Install the following AUR packages. Append `-git` to the package names to install the git master versions.
|
|
|
'Display and Monitor" -> "Compositor" -> Checkbox: "Allow applications to block compositing"
|
|
|
|
|
|
```
|
|
|
yay -S gnome-shell-xrdesktop-git gnome-shell-extension-xrdesktop-git
|
|
|
```
|
|
|
### Add xrdesktop plasma applet to desktop
|
|
|
|
|
|
This should install `gulkan`, `openvr-glib` and `xrdesktop` libraries as dependencies.
|
|
|
1. Right click on desktop or any panel and activate `Unlock Widgets` if necessary.
|
|
|
2. Cick on the panel configuration menu or right click on desktop and choose `Add widgets`.
|
|
|
2. Scroll to bottom and drag `XR Desktop Switch` to the desktop or a panel.
|
|
|
|
|
|
### Ubuntu
|
|
|
### Start xrdesktop on KWin
|
|
|
|
|
|
1. Add the [xrdesktop PPA](https://launchpad.net/~xrdesktop/+archive/ubuntu/xrdesktop/+packages).
|
|
|
`sudo add-apt-repository ppa:xrdesktop/xrdesktop`
|
|
|
1. Start SteamVR
|
|
|
2. Activate xrdestkop in the plasma applet.
|
|
|
|
|
|
2. `sudo apt update && sudo apt install gnome-shell-xrdesktop gnome-shell-extension-xrdesktop libsdl2-2.0-0`
|
|
|
![Plasma Applet](uploads/3fabfc7e48eddf7dcd99abf644f0593d/kde-applet.png)
|
|
|
|
|
|
## Reload GNOME Shell
|
|
|
Alternatively you can also run the following qdbus command
|
|
|
|
|
|
```
|
|
|
qdbus org.kde.KWin /XR org.kde.kwin.XR.active true
|
|
|
```
|
|
|
|
|
|
---
|
|
|
|
|
|
In order to use the newly installed GNOME Shell and extension without relogging or rebooting, you need to:
|
|
|
## GNOME Shell
|
|
|
|
|
|
If you just installed xrdesktop and have not restarted gnome-shell yet, do so now:
|
|
|
|
|
|
1. Press `Alt + F2` to open the command window.
|
|
|
2. Type `r` and `Enter` to reload GNOME Shell.
|
|
|
|
|
|
![Reload GNOME Shell](uploads/a304521358e40b5b7a5c5297aeda9f0f/gnome-shell-reload.png)
|
|
|
|
|
|
## Enable xrdesktop extension
|
|
|
## Enable xrdesktop gnome-shell extension
|
|
|
|
|
|
1. Install `gnome-tweaks` if you did not already.
|
|
|
2. Press the `Super` key, type and open `Tweaks`.
|
|
|
3. Go to the `Extensions` tab.
|
|
|
4. Enable the `Xrdesktop extension`.
|
|
|
4. Enable the `xrdesktop extension`.
|
|
|
|
|
|
![GNOME Tweaks](uploads/229756b13c24b2514c9bc38139479a12/gnome-tweaks.png)
|
|
|
|
|
|
## Start xrdesktop
|
|
|
|
|
|
## Start xrdesktop on gnome-shell
|
|
|
|
|
|
1. Start SteamVR
|
|
|
2. Enable `Mirror to XR` in the xrdesktop extension.
|
... | ... | @@ -121,28 +132,64 @@ In order to use the newly installed GNOME Shell and extension without relogging |
|
|
![GNOME Shell extension](uploads/ffbb4eaa407055aafc92d7bf6ab00a92/gnome-shell-extension.png)
|
|
|
|
|
|
|
|
|
Alternatively you can also run the following script, which is installed by xrdesktop's gnome-shell
|
|
|
Alternatively you can also run the following script, which is included in gnome-shell-xrdesktop
|
|
|
|
|
|
```
|
|
|
gnome-shell-set-vr enable
|
|
|
```
|
|
|
|
|
|
## Debugging
|
|
|
|
|
|
To follow the journal of GNOME Shell, run
|
|
|
---
|
|
|
|
|
|
```
|
|
|
journalctl /usr/bin/gnome-shell -f
|
|
|
```
|
|
|
---
|
|
|
|
|
|
# xrdesktop settings
|
|
|
|
|
|
xrdesktop has a few configuration options implemented as gsettings. Currently there is no dedicated UI to configure xrdesktop, but settings can be changed for example with the gnome tool `dconf-editor`. To jump right to the xrdesktop settings use the /org/xrdesktop namespace as parameter:
|
|
|
The `xrdesktop` package includes a dedicated settings UI named `xrdesktop Settings` in the menu or `/usr/bin/xrd-settings`.
|
|
|
|
|
|
dconf-editor /org/xrdesktop
|
|
|
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 `dconf-editor /org/xrdesktop`.
|
|
|
|
|
|
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. |
|
|
\ No newline at end of file |
|
|
All settings should apply immediately to a running xrdesktop session.
|
|
|
|
|
|
---
|
|
|
|
|
|
---
|
|
|
|
|
|
# Troubleshooting
|
|
|
|
|
|
## KWin plugin not working
|
|
|
|
|
|
Running `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
|
|
|
|
|
|
1. Open `Desktop Effects` settings (Available in the Application menu or in System Settings - Desktop Behavior)
|
|
|
2. Ensure the `XR Desktop` effect is enabled (it should be enabled by default)
|
|
|
|
|
|
![KDE Desktop Effects](uploads/b0d51f256a5f92b164dbbd6229a1be05/kde-desktop-effects.png)
|
|
|
|
|
|
Make sure you don't filter the effects:
|
|
|
|
|
|
![kde-show-all-effects](uploads/e919fed62247c51583a1e51de6da1285/kde-show-all-effects.png)
|
|
|
|
|
|
|
|
|
Running `kwin_x11 --replace` from a terminal will also print various debugging messages to stdout while running xrdesktop.
|
|
|
|
|
|
---
|
|
|
|
|
|
## Gnome
|
|
|
|
|
|
## Debugging
|
|
|
|
|
|
To follow the journal of GNOME Shell, run
|
|
|
|
|
|
```
|
|
|
journalctl /usr/bin/gnome-shell -f
|
|
|
``` |
|
|
\ No newline at end of file |