Mandatory installation of MESA drivers causes problems with proprietary drivers #3808

Open
classner opened this Issue Apr 22, 2015 · 7 comments

Comments

Projects
None yet
7 participants

Dear Steam for Linux team,

for users with NVIDIA cards, the mandatory installation of the MESA drivers, at least on Linux Mint 17.1, is causing problems. A short summary what I found out about it:

Description about what causes the issue

When installing steam, the MESA drivers are automatically pulled in. Even when uninstalling them, steam requests an installation on startup. It wants to install

  • libgl1-mesa-glx:i386
  • libglapi-mesa:i386
  • libgl1-mesa-glx:i386

However, for many games, the proprietary NVIDIA drivers are required. The installation of MESA is even requested, when the NVIDIA drivers are properly setup, including the i386 compatibility packages.

The installation of the MESA drivers, however, replaces /etc/ld.so.conf.d/i386-linux-gnu_GL.conf with /usr/lib/i386-linux-gnu/mesa/ld.so.conf, registering /usr/lib/i386-linux-gnu/mesa/libGL.so.1 before the nvidia libGL.so.1 (which is located in /usr/lib/i386-linux-gnu).

What is happening then

This leads to a warning about direct rendering not being available at steam startup, and issues with games, e.g., the infamous Could not find required OpenGL entry point "glGetError" (see, e.g., here, or here, or in general here).

Workaround

A workaround was for me to simply removing the file /etc/ld.so.conf.d/i386-linux-gnu_GL.conf and rerunning sudo ldconfig. This effectively breaks the MESA installation by removing the link to its library directory, but leaves it installed so that steam is happy.

It would be great if this could be addressed in a cleaner way.

In general, thanks for bringing steam to Linux and keep up the good work!

For reference: installing the packages broke my cinnamon desktop: it wouldn't load correctly any more. I had to sudo apt-get --reinstall install cinnamon to make it work again after sudo apt-get remove libgl1-mesa-glx:i386. After restarting, I just ignored the request of steam to install MESA by closing the opened terminal and it works.

isnt this more of a distro problem than a steam problem?

@classner classner changed the title from Manadory installation of MESA drivers causes problems with proprietary drivers to Mandatory installation of MESA drivers causes problems with proprietary drivers May 14, 2015

I wouldn't say so: I would expect that the MESA libraries replace whatever other OpenGL libraries are installed if I install the MESA package. Consequently, I don't find it appropriate that Steam requests that installation and doesn't detect the presence of the already present OpenGL libraries.

Guys, does this happen to you with distro supplied packages or with driver installations from installers supplied by nvidia/AMD?

What I do, is comment out the contents of both:

/etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf

and

/etc/ld.so.conf.d/i386-linux-gnu_GL.conf

Indeed, this breaks MESA, but, honestly, I don't care. I do not use it. I'm hopeful that this "fix" will finally solve the occasional breakage when MESA gets updated for security reasons.

I also don't agree that this is a distro issue. The steam .deb package has Valve listed as maintainer.

This happened to me with the drivers supplied by NVIDIA. Sure, that's a valid workaround. Ideally, this wouldn't be necessary and should be easy to fix.

+1 for fixing this, the problem forced me to manually repair my LMDE Cinnamon + NVIDIA 340.96 driver.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment