-
Notifications
You must be signed in to change notification settings - Fork 6
Troubleshooting
This is because the screens were selected in the wrong order.
Delete your tokens and then re-launch WlxOverlay.
rm ~/.config/wlxoverlay/*.token
When the screen share popups are shown, you should see a desktop notification about which screen to select. If this is not the case, run WlxOverlay in a terminal window and follow the instructions there. Once your screens are selected, you can again run WlxOverlay like normal.
Sadly, PipeWire doesn't expose the position of the selected screen, nor the logical size. Due to this, we have to get these from Wayland. There's no correlation between the Wayland info and the PipeWire info of each screen, so the best we can do is ask the user to select them in order.
You will likely see a egl: failed to create dri2 screen
if you scroll up. In that case, see the issue below.
This is a frequent issue when using NVidia. Seemingly it's trying to load the Mesa implementation of EGL over NVidia's.
Try setting:
__EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/10-nvidia.json
Warning: Do not set this globally, as it will break Flatpak apps. If you have other EGL apps that need this, and you don't want to do it per app, I recommend moving /usr/share/glvnd/egl_vendor.d/50-mesa.json
out from that folder.
See the SocketException
below.
You may have started WlxOverlay while it's already running somewhere else.
Remember; WlxOverlay will be started by SteamVR automatically!
It's not impossible that something else is using the port. Check using lsof -i :42069
If you need to run WlxOverlay by hand (to see logs, etc), clean up any running instances first:
pkill -f WlxOverlay
Because some SteamVR versions only work with WAYLAND_DISPLAY
unset, WlxOverlay doesn't rely on WAYLAND_DISPLAY
.
Instead, it will try and discover the wayland socket itself at $XDG_RUNTIME_DIR/wayland-*
Some desktop environments are known not to clear this wayland socket after switching wayland → X11 without a reboot. In these cases, it's ok to remove this file.
Ensure that your user has access to uinput.
This is usually as simple as adding yourself to the input group:
sudo usermod -a -G input $USER
You will likely need to reboot or restart your desktop session.
I have heard of a single case when no matter what we've tried the lasers wouldn't show.
If you run into this, try enabling the fallback_cursors
option in the config.yaml
.
Also please reach out as I want to know more about this issue. (Discord link below)
See the GLFW issue below.
The error message will look like this:
Silk.NET.GLFW.GlfwException: GLFW Init failed, PlatformError: Wayland: Failed to connect to display
Solution:
Your distro should provide separate packages for glfw-wayland
and glfw-x11
, which conflict.
Make sure that you're using the X11 package when running under X11 and the Wayland package when running under Wayland.
WlxOverlay needs to interface with your Wayland compositor directly, and attempts to run it via XWayland will result in black screens.
Verify you're not running under XWayland
Method 1: Check the screen names on your watch.
-
Scr 1
,Scr 2
, etc -> Xorg screens (XWayland) -
Default
,DP-1
,DP-2
,HDMI-1
,HDMI-2
, etc -> Wayland
Method 2: Look for Wayland detected.
in the logs
If you're sure that you're not on XWayland, the capture might have issues. Try switching to software capture by setting wayland_capture: pw-fallback
in your config.yaml
.
Happens when using PipeWire GPU capture.
Try switching to software capture by setting wayland_capture: pw-fallback
in your config.yaml
.
Also please provide us logs and info of your desktop environment on Discord or in a ticket, so that we can look into it.
The video panel buttons simply change the HmdDisplayColorGain*_Float
settings in SteamVR.
If there is no effect on your system then it's likely due to your headset driver not supporting this setting.
Hop on to this Discord Server and poke me if you need more help.
There is also a Matrix Space here: #linux-vr-adventures:matrix.org