On Fri, 11 Jan 2019 at 14:55:00 +0000, George B. wrote: > I installed steam package (on amd64) and it automatically brought in a > bunch of i386 libs, but [not] enough as the app did not start due to missing > libGL.so.1 library file.
Which Nvidia proprietary driver packages did you have installed? (You can use "dpkg-query -W | grep -E 'libgl1|nvidia'" to get a list of relevant packages, and then use /var/log/apt/history.log to see which ones you only installed while solving this) What is the exact error message you got? > I had to manually install libgl1-nvidia-glvnd-glx:386 to get it to work > (the amd64 version of the package was already installed). The problem we have here is: If we don't add a dependency on Nvidia proprietary drivers, then people in your situation will sometimes end up with only the amd64 Nvidia driver installed, but not the i386 Nvidia driver. You do have *an* i386 OpenGL implementation (the i386 OpenGL implementation from Mesa is in steam's dependencies), but it's the wrong one for your hardware (and installing the amd64 version of the Nvidia proprietary driver disables the Mesa drivers), so it won't work. However, if we add a dependency on Nvidia proprietary drivers, then people whose hardware doesn't actually use those drivers will accidentally install them when they install Steam. Apart from the Nvidia driver being proprietary code some of which runs as root, the mechanisms used to choose between the Nvidia and Mesa drivers are quite elaborate, so we shouldn't apply the extra complexity of those mechanisms to systems that don't have the hardware that would benefit from them. I feel as though a dependency on an Nvidia driver by steam is the wrong dependency: there's nothing special about Steam that makes it require Nvidia drivers, it just needs *some* working OpenGL driver. Unfortunately, there's no way to write "if you have glx-alternative-nvidia then you must also have nvidia-driver-libs:i386" as a dependency. I think part of the problem might be that if you installed the Nvidia driver before you enabled the i386 foreign architecture, then the nvidia-driver-libs Recommends on nvidia-driver-libs-i386 is unsatisfiable at the time that you installed nvidia-driver-libs, and apt leaves that Recommends broken even after you add the i386 foreign architecture and nvidia-driver-libs-i386 becomes available. Perhaps the least bad solution would be for Debian's /usr/games/steam wrapper script to detect the broken situation (amd64 Nvidia driver, but no i386 Nvidia driver) and try to use PackageKit to fix it... smcv