OpenGL/GLX broken on Sway, working on Gnome+Wayland

There’s nothing obvious in the environment that stands out, here’s a diff from Gnome+Wayland to Sway+Wayland:

https://diffy.org/diff/2825a32f87c96

Sway:

$ glxinfo -B
name of display: :0
X Error of failed request:  BadAlloc (insufficient resources for operation)
  Major opcode of failed request:  149 (GLX)
  Minor opcode of failed request:  5 (X_GLXMakeCurrent)
  Serial number of failed request:  0
  Current serial number in output stream:  29

Gnome:

$ glxinfo -B
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 10240 MB
    Total available memory: 10240 MB
    Currently available dedicated video memory: 8981 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce RTX 3080/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 545.29.06
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6.0 NVIDIA 545.29.06
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 545.29.06
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

Never mind, i figured it out.

I had added the environment variable XWAYLAND_NO_GLAMOR=1 when reading about random issues with screen flickering. This is what was preventing GLX from working. I hadn’t realized that Glamor was related to the OpenGL backend

1 Like