Open Cteljr opened 6 months ago
Having the same issue here.
Using Microsoft Windows [Version 10.0.19044.3803], ArchWSL and WSL2.
Already tried wsl --update
~ cat /mnt/wslg/versions.txt
WSLg ( x86_64 ): 1.0.59+Branch.main.Sha.2bffa4a1867601b1fd0e3c7bb59ada9f6131c28e
Mariner: VERSION="2.0.20230630"
DirectX-Headers:
mesa:
pulseaudio: 6f045ff0dca233a939a2aba815f84d177e294122
FreeRDP: c4030980b29322a9cb2190711a5fadeeeb8b6a33
weston: 1c19fc5ecdd4552f36f77256e1fb53225801aff0
~ echo $DISPLAY
:0
~ ls -la /tmp/.X11-unix/
total: 0
drwxrwxrwx 2 root root 80 Jan 6 19:39 .
drwxrwxrwt 8 root root 320 Jan 6 19:34 ..
srwxrwxrwx 1 kio kio 0 Jan 6 19:34 X0
lrwxrwxrwx 1 kio kio 19 Jan 6 19:39 .X11-unix -> /mnt/wslg/.X11-unix
~ ls -la /tmp/.X11-unix
lrwxrwxrwx 1 kio kio 19 Jan 8 15:09 /tmp/.X11-unix -> /mnt/wslg/.X11-unix
~ uname -r
5.15.133.1-microsoft-standard-WSL2
In my case, I get this message when trying to open Cypress:
[1554:0104/175201.023492:ERROR:ozone_platform_x11.cc(240)] Missing X server or $DISPLAY
[1554:0104/175201.023535:ERROR:env.cc(255)] The platform failed to initialize. Exiting.
Other GUI applications are not openning but don't output any message.
EDIT: In my case, the problem only occurs with ArchWSL. Installed Ubuntu and had no problems. This is the X-related info that is in Ubuntu (which works fine):
cat /mnt/wslg/versions.txt
WSLg ( x86_64 ): 1.0.59+Branch.main.Sha.2bffa4a1867601b1fd0e3c7bb59ada9f6131c28e
Mariner: VERSION="2.0.20230630"
DirectX-Headers:
mesa:
pulseaudio: 6f045ff0dca233a939a2aba815f84d177e294122
FreeRDP: c4030980b29322a9cb2190711a5fadeeeb8b6a33
weston: 1c19fc5ecdd4552f36f77256e1fb53225801aff0
~ echo $DISPLAY
:0
~ ls -la /tmp/.X11-unix/
total 4
drwxrwxrwx 2 root root 60 Jan 8 14:36 .
drwxrwxrwt 24 root root 4096 Jan 8 18:11 ..
srwxrwxrwx 1 kio kio 0 Jan 8 14:36 X0
~ ls -la /tmp/.X11-unix
total 4
drwxrwxrwx 2 root root 60 Jan 8 14:36 .
drwxrwxrwt 24 root root 4096 Jan 8 18:11 ..
srwxrwxrwx 1 kio kio 0 Jan 8 14:36 X0
~ uname -r
5.15.133.1-microsoft-standard-WSL2
Same issue here!
Using Microsoft Windows [version 10.0.22631.2861] and WSL2
~$ cat /mnt/wslg/versions.txt
WSLg ( x86_64 ): 1.0.59+Branch.main.Sha.2bffa4a1867601b1fd0e3c7bb59ada9f6131c28e
Mariner: VERSION="2.0.20230630"
DirectX-Headers:
mesa:
pulseaudio: 6f045ff0dca233a939a2aba815f84d177e294122
FreeRDP: c4030980b29322a9cb2190711a5fadeeeb8b6a33
weston: 1c19fc5ecdd4552f36f77256e1fb53225801aff0
~$ echo $DISPLAY
172.21.32.1:0.0
~$ ls -la /tmp/.X11-unix
total 4
drwxrwxrwx 2 root root 60 Jan 8 10:21 .
drwxrwxrwt 12 root root 4096 Jan 8 10:21 ..
srwxrwxrwx 1 simon simon 0 Jan 8 10:21 X0
~$ ls -la /tmp/.X11-unix/
total 4
drwxrwxrwx 2 root root 60 Jan 8 10:21 .
drwxrwxrwt 12 root root 4096 Jan 8 10:26 ..
srwxrwxrwx 1 simon simon 0 Jan 8 10:21 X0
I used VcXsrv months (years?) ago and do not have it installed anymore, but seems like it's still messing up WSLg somehow
Same issue here!
Using Microsoft Windows [version 10.0.22631.2861] and WSL2
~$ cat /mnt/wslg/versions.txt WSLg ( x86_64 ): 1.0.59+Branch.main.Sha.2bffa4a1867601b1fd0e3c7bb59ada9f6131c28e Mariner: VERSION="2.0.20230630" DirectX-Headers: mesa: pulseaudio: 6f045ff0dca233a939a2aba815f84d177e294122 FreeRDP: c4030980b29322a9cb2190711a5fadeeeb8b6a33 weston: 1c19fc5ecdd4552f36f77256e1fb53225801aff0 ~$ echo $DISPLAY 172.21.32.1:0.0 ~$ ls -la /tmp/.X11-unix total 4 drwxrwxrwx 2 root root 60 Jan 8 10:21 . drwxrwxrwt 12 root root 4096 Jan 8 10:21 .. srwxrwxrwx 1 simon simon 0 Jan 8 10:21 X0 ~$ ls -la /tmp/.X11-unix/ total 4 drwxrwxrwx 2 root root 60 Jan 8 10:21 . drwxrwxrwt 12 root root 4096 Jan 8 10:26 .. srwxrwxrwx 1 simon simon 0 Jan 8 10:21 X0
I used VcXsrv months (years?) ago and do not have it installed anymore, but seems like it's still messing up WSLg somehow
what linux distro are you using?
As suggested in this issue, the issue is solved by adding export LIBGL_ALWAYS_INDIRECT=1
to ~/.zshrc
(or ~/.bashrc
if you use bash) and then running source ~/.zshrc
so the changes take effect.
When trying the fix proposed above, I realized that I still had some remaining of my previous VcXsrv install in my .bashrc
file:
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2; exit;}'):0.0
export LIBGL_ALWAYS_INDIRECT=1
sudo /etc/init.d/dbus start &> /dev/null
I removed the first and third line, and everything is working well now
As suggested in this issue, the issue is solved by adding
export LIBGL_ALWAYS_INDIRECT=1
to~/.zshrc
(or~/.bashrc
if you use bash) and then runningsource ~/.zshrc
so the changes take effect.
Tried this too, though I wasn't using ArchWSL, but still X11 doesn't appear to be running and the link fix still fails as described in the original issue.
As suggested in this issue, the issue is solved by adding
export LIBGL_ALWAYS_INDIRECT=1
to~/.zshrc
(or~/.bashrc
if you use bash) and then runningsource ~/.zshrc
so the changes take effect.Tried this too, though I wasn't using ArchWSL, but still X11 doesn't appear to be running and the link fix still fails as described in the original issue.
Which distro are you using?
As suggested in this issue, the issue is solved by adding
export LIBGL_ALWAYS_INDIRECT=1
to~/.zshrc
(or~/.bashrc
if you use bash) and then runningsource ~/.zshrc
so the changes take effect.Tried this too, though I wasn't using ArchWSL, but still X11 doesn't appear to be running and the link fix still fails as described in the original issue.
Which distro are you using?
$ cat /mnt/wslg/versions.txt WSLg ( x86_64 ): 1.0.59+Branch.main.Sha.2bffa4a1867601b1fd0e3c7bb59ada9f6131c28e Mariner: VERSION="2.0.20230630" DirectX-Headers: mesa: pulseaudio: 6f045ff0dca233a939a2aba815f84d177e294122 FreeRDP: c4030980b29322a9cb2190711a5fadeeeb8b6a33 weston: 1c19fc5ecdd4552f36f77256e1fb53225801aff0
$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.3 LTS Release: 22.04 Codename: jammy
$ uname -a Linux WIN-GPNU4RS958T 5.15.133.1-microsoft-standard-WSL2 #1 SMP Thu Oct 5 21:02:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
I'm having exactly same issue as @Cteljr , same versions. I tried fresh installing wsl2 and distros with same results: X apps dont work, xeyes/xcalc: "cant open display :0" -or- "Missing X server or $DISPLAY" I tried "export LIBGL_ALWAYS_INDIRECT=1" - not working... Wayland apps do start normal (chrome/nautilus/gedit) but sometimes graphic garbles up, hinting at graphics driver problems
In /mnt/wslg/weston.log I see: [16:58:42.737] Spawned Xwayland server, pid 23 [16:58:44.758] xserver crashing too fast: 134
Researching earlier reports of xserver crashing too fast in wsl2, turns up old intel graphic driver bugs. I have a 2 GPU setup on an intel tiger lake i7:
A solution is to get wsl2 to work with xming instead of wsl2's own xserver: install xming and add these to your .bashrc:
export WSL_WINDOWS_HOST=cat /etc/resolv.conf | grep nameserver | cut -d ' ' -f 2
export DISPLAY=$WSL_WINDOWS_HOST":0"
That worked for me, but it seems you dont get the same fancy window integration
Update: Turns out I wasnt using the latest Intel Graphics drivers! Intel's Driver Support Agent forced it to the old 27.20.100 latest manufacturer (MSI) supplied version. Downloading latest install directly from intel's support site forced the install of latest 31.0.101 version [edit] MS windows keeps resetting to the old driver, you need to use this trick to keep the new driver Fixed all problems! No longer need xming and wayland integrates much nicer with windows desktop
If you have the same problem, look this method. https://github.com/microsoft/wslg/issues/1156
Windows build number:
Microsoft Windows [Version 10.0.22000.2538]
Your Distribution version:
22.04
Your WSL versions:
WSL version: 2.0.9.0 Kernel version: 5.15.133.1-1 WSLg version: 1.0.59 MSRDC version: 1.2.4677 Direct3D version: 1.611.1-81528511 DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp Windows version: 10.0.22000.2538
Steps to reproduce:
Following the instructions at https://github.com/microsoft/wslg/wiki/Diagnosing-%22cannot-open-display%22-type-issues-with-WSLg
WSL logs:
weston.log pulseaudio.log stderr.log wlog.log
WSL dumps:
No response
Expected behavior:
Should be able to run Xserver; also, per the instructions at the github troubleshooting link (above), I should be able to create the link for the Xserver, i.e.
sudo rm -r /tmp/.X11-unix
ln -s /mnt/wslg/.X11-unix /tmp/.X11-unix
Both commands should work.Actual behavior:
The
rm
command fails with:rm: cannot remove '/tmp/.X11-unix': Device or resource busy
, and theln
command fails withln: failed to create symbolic link '/tmp/.X11-unix/.X11-unix': Read-only file system
, althoughls -la /tmp/.X11-unix
showswhich doesnt appear to be a read-only filesysytem. BTW
sudo ln -s /mnt/wslg/.X11-unix /tmp/.X11-unix
fares no better:ln: failed to create symbolic link '/tmp/.X11-unix/.X11-unix': Read-only file system