VNC serves only black window - "QXcbIntegration: Cannot create platform OpenGL context, neither GLX"

Hy!

Have a machine with an old NVIDIA NVS 290 with NVIDIA 340 driver installed from repo (to make Kaffeine + SAT DVB-S2 work).

I tried to start vncservers, both from command line (vncserver :1) as well as from YaST.

In both occasions the vncserver can be accessed from the LAN, but only a black window is served. :frowning:

In startup logs for both these vncservers I see:

QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled

and sometimes I see in the black VNCserver windows a message saying something with OpenGL not running, disappears really quick.

I looked the interweb, but found nothing that would fix my problem.

PS: Yesterday I did zypper dup (not zypper up) on the 42.3 (…tooooo much TW installs…), hope that doesn’t cause any problems?

Warning: I have not used this for years, and it may completely be out of date.

VNC is configured by default to use IPv4
Linuxes are configured by default to use IPv6 and IPv4
Many LANs are still configured IPv4 only

This can result in an IPv4 VNC listening for an IPv6 X server (blank VNC screen).
The quick solution was to comment out the IPv6 localhost entry in /etc/hosts on the server:–

 # special IPv6 addresses
 # ::1             localhost ipv6-localhost ipv6-loopback

nVidia drivers replace default openGL implementation (both for server and client) so any application that requires openGL will fail in this case. Your choices are

  1. Use DE that does not require openGL
  2. Run Xvnc making sure it picks native libglx instead of nVidia. That is basically reverse of what Bumblebee does, you can look in their script for inspiration. You will also need to make sure clients pick the right libraries - either by exporting suitable LD_LIBRARY_PATH (see mentioned script) or by using libglvnd - unfortunately not on Leap 42.x.

Hy again!

@eng-in: Many thanks, but all machines set to “Ignore” IPv6, whatever that means… :wink:

@arvidjaar: Many thanks, very interesting to know! (I love this forum, although the forum doesn’t love me :o) )

I uninstalled NVIDIA driver, now the VNCserver started from CLI works flawlessly! And amazingly my DVB-S2 card also!

What doesn’t work:

  • The VNCserver started via Yast: While activating after clicking “OK” the menu reaches the point “Restarting services” and the GUI (on the machine, not VNC) dies and I end up on a CLI login (reproducibly).

  • When I start a stream in VNC or Kaffeine the pic is totally black (not via VNC! Only when logged in physically!), but if I start another app like Libreoffice or Bleachbit, the stream in VNC or Kaffeine will suddenly start!

  • All windows in the GUI lack scrolling bars, nothing to see, although they work when moved with the mouse…

Very funny! :slight_smile:

But both VNCserver and DVB-S2 work now. You can’t always get what you want… :wink:

anazazi

Although you did not mention it in this thread, you are running KDE/Plasma on that machine using SDDM as the display manager. Switch the display manager (perhaps install kdm from the repos and switch to that, or use lightDM).

  • When I start a stream in VNC or Kaffeine the pic is totally black (not via VNC! Only when logged in physically!), but if I start another app like Libreoffice or Bleachbit, the stream in VNC or Kaffeine will suddenly start!
  • All windows in the GUI lack scrolling bars, nothing to see, although they work when moved with the mouse…

Very funny! :slight_smile:

If you want things smoother, perhaps try a different desktop on the remote machine: I find Xfce works great with VNC.

Hi!

Yepp, normal/standard KDE/Plasma and display manager. Have one remote machine with XFCE, quite nice, but I’m more used to KDE stuff at the moment.

And the concept of a “display manager” is slightly over my linux pay grade :wink:

99% working for the moment, rest let’s see…