"glx_init(): No GLX extension" when trying to start Compton


Hello everyone!

I’m currently having some issues with Compton after I updated my system on 02/24. It stopped working altogether after I logged in into my laptop (Acer Aspire E5-575G-53VG) the next day. If I run ‘compton’ on my terminal, w/ or w/o flags, the output is always the same:

Furthermore, ‘glxinfo | grep OpenGL’ outputs the following:

Also, ‘glxgears -info’, ‘primusrun glxgears’ and ‘optirun -b primus glxgears’ all output the following:

My Xorg.0.log file is here.

‘inxi -Gx’ output:

‘lspci’ output:

My bumblebee.conf looks like this: (Must add that under /etc/bumblebee/ multiple bumblebee.conf.pacsave, xorg.conf.nouveau.pacsave and xorg.conf.nvidia.pacsave files appear)

# Configuration file for Bumblebee. Values should **not** be put between quotes

## Server options. Any change made in this section will need a server restart
# to take effect.
# The secondary Xorg server DISPLAY number
# Should the unused Xorg server be kept running? Set this to true if waiting
# for X to be ready is too long and don't need power management at all.
# The name of the Bumbleblee server group name (GID name)
# Card power state at exit. Set to false if the card shoud be ON when Bumblebee
# server exits.
# The default behavior of '-f' option on optirun. If set to "true", '-f' will
# be ignored.
# The Driver used by Bumblebee server. If this value is not set (or empty),
# auto-detection is performed. The available drivers are nvidia and nouveau
# (See also the driver-specific sections below)
# Directory with a dummy config file to pass as a -configdir to secondary X
# Xorg binary to run

## Client options. Will take effect on the next optirun executed.
# Acceleration/ rendering bridge, possible values are auto, virtualgl and
# primus.
# The method used for VirtualGL to transport frames between X servers.
# Possible values are proxy, jpeg, rgb, xv and yuv.
# List of paths which are searched for the primus libGL.so.1 when using
# the primus bridge
# Should the program run under optirun even if Bumblebee server or nvidia card
# is not available?

# Driver-specific settings are grouped under [driver-NAME]. The sections are
# parsed if the Driver setting in [bumblebeed] is set to NAME (or if auto-
# detection resolves to NAME).
# PMMethod: method to use for saving power by disabling the nvidia card, valid
# values are: auto - automatically detect which PM method to use
#         bbswitch - new in BB 3, recommended if available
#       switcheroo - vga_switcheroo method, use at your own risk
#             none - disable PM completely
# https://github.com/Bumblebee-Project/Bumblebee/wiki/Comparison-of-PM-methods

## Section with nvidia driver specific options, only parsed if Driver=nvidia
# Module name to load, defaults to Driver if empty or unset
# colon-separated path to the nvidia libraries
# comma-separated path of the directory containing nvidia_drv.so and the
# default Xorg modules path

## Section with nouveau driver specific options, only parsed if Driver=nouveau

My xorg.conf.nvidia file:

Under /usr/lib/nvidia/:

And finally:

I’m currenty using Nvidia proprietary drivers which I installed with the following command: [quote]mhwd -a pci nonfree 0300[/quote]

I’ve been trying to solve this issue with both closed and open drivers with no success whatsoever. I’ve also tried multiple solutions found on this forum and Arch forums, similar or exactly like mine, but I haven’t been able to solve this issue.

Any help would be greatly appreciated, thanks!

EDIT: When I updated, the following message came up:

Compton + latest nvidia : "Failed to get GLX context"

Out of the blue I also faced this, when trying to start compton:

$ compton
glx_init(): No GLX extension.

I just removed bumblebee (and primus) using pamac, then removed the proprietary drivers using the Manjaro Settings GUI and installed the proprietary drivers again using Manjaro Settings GUI.

Had to remove bumblebee first, because otherwise it gave me a “script error”.

So far it seems to work properly again…

[edit]Spoke too soon, I still frequently run into that problem. A reboot fixes it, most of the times. [/edit]


Sounds related to this issue, which was apparently fixed for most users, but a small number have still had libgl issues related to the mesa 17.0 update.

Info in this thread may help you.


I have the same problem as OP. I have similiar outputs for almost everything:

$ compton
glx_init(): No GLX extension.

I don’t know what to do, now. Already tried to uninstall bumblebee + nvidia driver and reinstall them, but the problem remains. Last update was March 09.

Can anyone help? :sweat:


Thanks for your responses, @maxf and @sueridgepipe, but none of them worked :frowning:

Weird enough, I just updated my system (some 100+ upgrades, I think), which included manjaro-system, mesa, mhwd-db, bumblebee and lib32-mesa and the problem was fixed after a restart :smiley: now Compton is working again flawlessly.

Seems like the problem (according to pacman.log) was that a symlink was missing. When updating, this warning came up on my terminal:

warning: could not get file information for usr/lib/xorg/modules/extensions/libglx.so

Maybe you could start from there, @felisdomesticalis; is your system updated?


Yes, my system should be updated. At least pacman tells me so.

Since this problem solves for everyone with a system update and i hadn’t any problems until yesterday, i get the feeling that i caused this error by installing something wrong.

Let me recall. The last “big” update i did was some days ago, but without any problems after starting my machine again today. Then, yesterday, again, i did a system update with only two packages and installed some packages for my joystick afterwards. I rebooted and BOOM! compton died and left me without a clue what to do.

For some reason pacman.log doesn’t tell me what packages were installed during the system update. Only manually installed packages are listed by name :frowning:

closed #7

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.