protonscr

Nvidia cuda 10 installer missing 32 bit support

steamclosed NVIDIA driversDistro Family: Ubuntu
ValveSoftware/steam-for-linux#5778 · opened 2018-09-23 by AlexRouSg · updated 2022-05-25 · 177 comments · github
AAlexRouSg 2018-09-23 github

Your system information

  • Steam client version (build number or date): Unknown - Installed on 23/9/18
  • Distribution (e.g. Ubuntu): Linux Mint 19 x64
  • Opted into Steam client beta?: [Yes/No] No
  • Have you checked for system updates?: [Yes/No] Yes

Please describe your issue in as much detail as possible:

Describe what you expected should happen and what did happen. Please link any large code pastes as a Github Gist

Installed cuda 10 which uses Nvidia driver 410 which dropped support for x86
Steam then refuses to start with the typical glXChooseVisual error

Steps for reproducing this issue:

  1. Start Steam
Kkisak-valve maintainer 2018-09-23 github

Hello @AlexRouSg, in detail, please explain the steps you took to install the nvidia driver. If you used nvidia's installer, I think you need to have libc6-i386 installed before installing the nvidia driver.

AAlexRouSg 2018-09-23 github

I used the official deb installer from https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804

CUDA 10 uses gcc 7 btw.

From what I've found, glXChooseVisual happens when the x86 drivers are not installed, however 410 does not support x86 anymore so they cannot be installed.

Also normal ogl applications work so drivers are working.

Kkisak-valve maintainer 2018-09-23 github

I got confirmation from someone that nvidia 410.57 works fine with steam, so for some reason the nvidia installer did not put 32 bit support on your system or is otherwise broken.

AAlexRouSg 2018-09-23 github

Ahhh, apparently the .run installer includes a 32 bit compatibility layer.

771mb0 2018-09-25 github

I'm having the exact same problem, except I'm on standard Ubuntu18.04. Also used the deb installer from their site. Can you confirm that the .run installer fixed the issue for you?

EDIT:
Using the .run installer worked for me as well. Also works with drivers 410.48.

AAlexRouSg 2018-09-25 github

Yes steam and all 32 bit ogl applications work only with the .run installer.

Installing with the .run installer is tricky cause you need to blacklist the nouveau drive and boot into non gui mode (init 3) before running the installer.

Uuframer 2018-10-20 github

Same issue here.

Installed CUDA 10 and NVIDIA driver is now 410.48. Launch Steam then immediately pops up "glXChooseVisual failed".

OS: Ubuntu 18.04 with apt updated to the latest.
Steam Laucher: 1.0.0.56
CUDA 10 was installed using:

  • Operating System: Linux
  • Architecture: x86_64
  • Distribution: Ubuntu
  • Version: 18.04
  • Installer Type: deb (network)
Uuframer 2018-10-20 github

Can Steam switch to 64-bit instead of 32-bit to fix this issue?

Mmelvyniandrag 2018-10-28 github

Also interested in this issue. Same setup as @uframer. Would be great if Steam was 64-bit. My particular issue is that I'm setting up a machine with nvidia-docker and there they recommend using the package manager. I mean, it's generally recommended to use the package manager to keep yourself out of problems. Would love to see the package manager version changed appropriately, hopefully for 10.1 or whatever comes next.

Ggcp 2018-12-21 github

Can Steam switch to 64-bit instead of 32-bit to fix this issue?

While it would avoid this particular error, any game that's also using 32-bit binaries (and that's likely going to be a lot if not all of of them?) is going to fail in the same manner. This is really a bug in NVIDIA's packaging.

Ddarthdeus 2019-01-27 github

@kisak-valve Replying to your comment over at #5884, do you know if there's an issue tracking this on either Ubuntu or NVIDIA's issue tracker that we could reference/check? Looks like there are quite a few people who are running into this, and maybe if we all voiced our issues they would fix it.

@71mb0 did you install the driver together with the .run file? I saw many people not recommending using the driver that is packaged with CUDA, but instead installing the packaged one.

Ggachiemchiep 2019-02-08 github

@darthdeus
I have the same issue. I updated Ubuntu 16.04 into Ubuntu 18.04 last week and steam stopepd working.
So i uninstall cuda 10 and use the cuda 9.2 run file (cuda_9.2.148_396.37_linux.run, Ubuntu 17.10) to install cuda 9.2 with nvidia driver-396.
Steam worked now. Graphics driver work smoothly without any problems.
Detail is at : https://www.pugetsystems.com/labs/hpc/How-to-install-CUDA-9-2-on-Ubuntu-18-04-1184/#step-2-get-the-right-nvidia-driver-installed

Ddarthdeus 2019-02-08 github

@gachiemchiep Thanks! I just tried it as well and it works :)

For anyone finding this issue in despair, here's what I did:

# get rid of the packaged thingies
sudo apt purge nvidia\*
sudo apt purge cuda\*

then go to the official CUDA toolkit download page, get the local runfile, and follow the manual for installing. I didn't follow the blog posted above because I need CUDA 10.0, but it was all simple. The steps are basically:

  1. remove existing nvidia drivers
  2. install dependencies
  3. disable nouveau
  4. reboot & run sudo init 3
  5. install sudo ./cuda-....run
  6. sudo reboot
  7. profit :)
RRobRoseKnows 2019-02-17 github

God it would have been really helpful to know that CUDA would break Steam.

Kkisak-valve maintainer 2019-02-28 github

Noted by @LouisCyfer in #6113, the Cuda 10.1 / 418.39 .deb package is also affected.

LLouisCyfer 2019-02-28 github

Hi Folks!
Ty @kisak-valve for linking!

I have figured this driver is pretty much working with CUDA 10.0.130 and binary driver 32bit libs for ubuntu 16.04. I assume 18.04 might just be ok with this too because the version of the CUDA and driver releases are the same.

cuda-repo-ubuntu1604-10-0-local-10.0.130-410.48_1.0-1_amd64

hope this helps anyone.

Xxmlyqing00 2019-03-01 github

Also interested in this issue. Same setup as @uframer. Would be great if Steam was 64-bit. My particular issue is that I'm setting up a machine with nvidia-docker and there they recommend using the package manager. I mean, it's generally recommended to use the package manager to keep yourself out of problems. Would love to see the package manager version changed appropriately, hopefully for 10.1 or whatever comes next.

I am using Cuda10.1, still have this problem

Oolavgg 2019-03-08 github

For anyone wondering sudo apt install libnvidia-gl-418:i386 should work

Kkarolgrudzinski 2019-03-08 github

For anyone wondering sudo apt install libnvidia-gl-418:i386 should work

$ sudo apt install libnvidia-gl-418:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package libnvidia-gl-418:i386 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  libnvidia-common-418

E: Package 'libnvidia-gl-418:i386' has no installation candidate

and:

$ LC_ALL=C apt install libnvidia-common-418
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libnvidia-common-418 is already the newest version (418.39-0ubuntu1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
?ghost 2019-03-16 github

Looks like nvidia is giving steam users "cudas" 🐞🐞🐞, downgrading the 10.1 18.04 build to the 10.0 build...will post results shortly.

?ghost 2019-03-16 github
AAnveena 2019-03-29 github

Same issue here.

Installed CUDA 10 and NVIDIA driver is now 410.48. Launch Steam then immediately pops up "glXChooseVisual failed".

OS: Ubuntu 18.04 with apt updated to the latest.
Steam Laucher: 1.0.0.56
CUDA 10 was installed using:

  • Operating System: Linux
  • Architecture: x86_64
  • Distribution: Ubuntu
  • Version: 18.04
  • Installer Type: deb (network)

这么看做cuda开发的steamer真的多..现在又J8凉了..你解决了么?

AAnveena 2019-03-29 github

Success.

10.0 available here https://developer.nvidia.com/cuda-toolkit-archive

Y don't steam support 64bits ?Y we have to use older and lower cuda 10.0? Shit valve.valve's developer eat shit everyday?steam still not support well at iPhone X that released 600 days ago.?wtf steam

Bbeew 2019-03-30 github

I don't use steam but have some wine applications that require 32 bit support. It appears that this problem only happens if you install the graphic driver with the cuda-driver package from Nvidia. You can install the driver with the .run file but it is a pain and kind of risky..

An alternative painless way for Ubuntu users would be to grab the driver from the graphic driver ppa. Nvidia-418 will satisfy Cuda's requirement (cuda-10.1 or cuda-10.0 or below) and provides 32 bit compatibility
https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa

Bbeew 2019-03-30 github

@Anveena

For the moment may as well stick to cuda 10.0, the 32 bit driver support issue can be fixed with driver ppa (for Ubuntu) but cuda-10.1 breaks a whole bunch of other things as well (e.g tensorflow for people who use cuda for Machine Learning)

?ghost 2019-03-30 github

I'm using cuda 9.1 and nvidia 410.48 and also have this problem.

AAnveena 2019-04-01 github

image
try this:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt upgrade
//may should reboot?
sudo apt --fix-broken install
//may should reboot?
sudo apt install libnvidia-gl-418:i386
All works well.Let's play dota!
image
It's really working!!

DDessix 2019-04-02 github

A solution less-likely to cause issues with your package manager is to install the drivers from the Nvidia PPA and then install cuda toolkit from the runfile instead of your package manager. The primary drawback is lack of automatic updates, but it doesn't seem that the toolkits very update often anyway.

Kkyleabeauchamp 2019-05-20 github

I also hit this issue on a system with cuda 10.1. I really wish these driver and CUDA updates didn't periodically break either my CUDA install or my steam install...

Rrobelgeda 2019-05-25 github

@Anveena You are my hero!

Oomen23 2019-06-01 github

@Anveena I am using CUDA 10 with drivers 418.67 - any suggestions without breaking the system?

Kind Regards (and no I cant reinstall everything or upgrade to 430.x - this special configuration of libraries is necessary for some CUDA and cuDNN software to work.)

Rromanovzky 2019-06-04 github

I also need to use CUDA, the solution presented above does not solve the problem. It's a workaround for anyone that does not need CUDA....

Ddarthdeus 2019-06-04 github

@romanovzky The workaround presented earlier does work with CUDA https://github.com/ValveSoftware/steam-for-linux/issues/5778#issuecomment-461861324

Oomen23 2019-06-06 github

TensorFlow makes me download nvidia-driver-410 (which sets up as 418.56 but then) nvidia-driver-418 from their repo installs which is 418.67 not 418.56 because libcuDNN7 needs >=418.67 - if I try to downgrade - well the system would remove all CUDA 10 packages and ensorFlow related stuff - any tips? I got a ppa with a driver ready just cant downgrade to one (or upgrade nvidia-driver-430 which has 430.14 atm – nothing would break if I could upgrade to 430.14 - every function pointer and entrypoint would still work) - i tried every apt command possible it still didnt wanna let me change the display driver.
Thanks for your help
Kind Regards

PS: any apt-get wizard please help me get this working with nvidia-driver-430 or nvidia-driver-418(418.56 32-bit support one) but please without a runfile - I can mess up my system myself. Thank you so much in advance!

Bbeew 2019-06-06 github

@omen23

Which cuda? I have cuda-10.0 with nvidia-418.56 and libcuDNN7. If you uninstall the cuda meta-package (or cuda-10.0 or whichever) then you can install nvidia-418.56. Afterwards just reinstall all the cuda-x-x packages one by one that you have removed when removing the cuda meta-package. The trick is NOT to install the cuda meta-package which would pull in the cuda-driver without 32 bit support, but install the actual packages one by one.

This is very easy if you have the synaptic package manager and use the gui to just check the packages and install. If you use the terminal then it is painful since there are a lot of packages with complicated names.

P.S the newest cuda is cuda-10.1, but it breaks many things including tensorflow so I assume you are on <= cuda-10.0

Oomen23 2019-06-07 github

why is the terminal a pain?
I just copy all the packages that will be removed and install them later on - thanks bro - for reminding me that its a meta-package.
Regards

Oomen23 2019-06-07 github
sudo apt-get remove cuda-10-0 
[sudo] password for 
Sorry, try again.
[sudo] password for  
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  cuda-command-line-tools-10-0 cuda-compiler-10-0 cuda-cufft-10-0 cuda-cufft-dev-10-0 cuda-cuobjdump-10-0 cuda-cupti-10-0 cuda-curand-10-0
  cuda-curand-dev-10-0 cuda-cusolver-10-0 cuda-cusolver-dev-10-0 cuda-cusparse-10-0 cuda-cusparse-dev-10-0 cuda-demo-suite-10-0 cuda-documentation-10-0
  cuda-drivers cuda-gdb-10-0 cuda-gpu-library-advisor-10-0 cuda-libraries-10-0 cuda-libraries-dev-10-0 cuda-memcheck-10-0 cuda-misc-headers-10-0
  cuda-npp-10-0 cuda-npp-dev-10-0 cuda-nsight-10-0 cuda-nsight-compute-10-0 cuda-nvcc-10-0 cuda-nvdisasm-10-0 cuda-nvgraph-10-0 cuda-nvgraph-dev-10-0
  cuda-nvjpeg-10-0 cuda-nvjpeg-dev-10-0 cuda-nvml-dev-10-0 cuda-nvprof-10-0 cuda-nvprune-10-0 cuda-nvrtc-10-0 cuda-nvrtc-dev-10-0 cuda-nvtx-10-0
  cuda-nvvp-10-0 cuda-runtime-10-0 cuda-samples-10-0 cuda-toolkit-10-0 cuda-tools-10-0 cuda-visual-tools-10-0 nvidia-modprobe
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  cuda-10-0
0 upgraded, 0 newly installed, 1 to remove and 9 not upgraded.
After this operation, 25,6 kB disk space will be freed.
Do you want to continue? [Y/n] 
(Reading database ... 321919 files and directories currently installed.)
Removing cuda-10-0 (10.0.130-1) ...

so if it is a metapackage it is NOT needed for cuda-10-0 to work

Oomen23 2019-06-07 github

lol actually I saw that all of them are meta packages even cuda-10-0-runtime and cuda-drivers i removed them and upgraded to 430.14 works flawlessly
CUDA 10.0 and Steam again on one machine FeelsGoodMan
Kind Regards

Oomen23 2019-06-07 github

I have to agree ...
The only good thing apt-cache show ... works exactly if not even better ... but I was too lazy diving into the whole CUDA thing.. I just need TensorFlow to work and like to play games from time to time .. I was steam beta tester, sill havent gotten completely tired of cstrike. :P
Screenshot_20190607_175733
Screenshot_20190607_205432

BBOT-RBA 2019-06-09 github

Laptop with MX150, installed CUDA 10.1 from nvidia local .deb on fresh Lubuntu 18.04 and steam doesn't start:
libGL error: No matching fbConfigs or visuals found libGL error: failed to load driver: swrast SteamUpdateUI: An X Error occurred X Error of failed request: BadValue (integer parameter out of range for operation)
Attempted to install from .run file as suggested, resulting in a black screen. As suggested from the nvidia-linux installation guide I tried to run nvida-xconfig to generate a xorg.conf in my /etc/X11, however I still got a black screen. The guide refers to manually edit the xorg.conf but I don't know where to start.
In the end since I need cuda I reverted to the deb installer. Please fix!

Rrobelgeda 2019-06-09 github

I thought I fixed the issue but have been getting the same problems when I tried to reinstall Nvidia and CUDA

Rromanovzky 2019-06-10 github

I took this to the NVIDIA forums and this is what worked for me in order to get CUDA working with TensorFlow and be able to run steam:

First, purge nvidia-*

  • Add ppa:graphics-drivers/ppa
  • Install cuda-repo from here (choose the version you want, I use CUDA 10.0, alternatively you can use wget/curl here)
  • Install machine-learning-repo from here
  • Install driver from ppa (in my case nvidia-430)
  • Install cuda-toolkit NOT cuda
  • Install cudnn if not automatically installed

The important part is to install cuda-toolkit and not cuda package. I guess that we all made the mistake of following TensorFlow's installation guide, which is outdated and breaks steam compatibility.

Hope this helps

BBOT-RBA 2019-06-10 github

I took this to the NVIDIA forums and this is what worked for me in order to get CUDA working with TensorFlow and be able to run steam:

First, purge nvidia-*

* Add `ppa:graphics-drivers/ppa`

* Install `cuda-repo` from [here](https://developer.nvidia.com/cuda-toolkit) (choose the version you want, I use CUDA 10.0, alternatively you can use `wget/curl` [here](https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/))

* Install `machine-learning-repo` from [here](http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/)

* Install driver from ppa (in my case nvidia-430)

* **Install cuda-toolkit NOT cuda**

* Install cudnn if not automatically installed

The important part is to install cuda-toolkit and not cuda package. I guess that we all made the mistake of following TensorFlow's installation guide, which is outdated and breaks steam compatibility.

Hope this helps

Hi romanovzky, I'd like to try this solution!
In the second step I have to follow the entire instructions provided from the nvidia package?
I mean:

`sudo dpkg -i cuda-repo-ubuntu1804-10-1-local-10.1.168-418.67_1.0-1_amd64.deb`
`sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub`
`sudo apt-get update`
`sudo apt-get install cuda`

Or I have to change somenthing? Thanks

BBOT-RBA 2019-06-10 github

I read the discussion on the nvidia forum, and I tried to first install the graphics driver from ppa and then attempt the cuda-toolkit.
However when trying to boot with nvidia-driver-430,418,410 xorg starts, but by doing nvidia-smi it says the driver is inactive... Tried to prime-select nvidia but it says its already selected...

I don't know, but maybe this is related to my MX150 being an optimus card =/
Anyone with optimus has the same experience?

BBOT-RBA 2019-06-10 github

This was performed on Lubuntu 18.04 with an MX150 Optimus GPU:

okay, seems that there's a weird bug with nvidia prime that makes nvidia-smi fail. To fix it you just need to do the following:

  1. sudo prime-select intel
  2. reboot
  3. sudo prime-select nvidia
  4. reboot
    After that the driver will work and nvidia-smi will show the GPU working.
    So I was able to install the 430 driver from ppa and then cuda-toolkit from the CUDA 10.0 deb (10.1 works as well but I need 10.0 for pytorch). Now steam works, and pytorch with cuda10 as well.

This is what I did:

- sudo apt remove --purge nvidia*
- sudo apt remove --purge cuda*
- reboot
- Add ppa:graphics-drivers/ppa
- download .deb for CUDA 10.0 local from https://developer.nvidia.com/cuda-toolkit-archive
- cd ~/Downloads
- sudo dpkg -i cuda-repo-ubuntu1804-10-0-local-10.0.130-410.48_1.0-1_amd64.deb
- sudo apt-key add /var/cuda-repo-10-0-local-10.0.130-410.48/7fa2af80.pub
- sudo apt-get update
- install driver from ppa: sudo apt install nvidia-driver-430
- install `machine-learning-repo` from [here](http://developer.download.nvidia.com/compute/machine/learning/repos/ubuntu1804/x86_64/)
- sudo apt update
- sudo apt install cuda-toolkit-10-0
- sudo apt install nvidia-cuda-toolkit 
- reboot
- if nvidia-smi doesn't work perform the fix above
- Success!

Thanks to @romanovzky and the guys from nvidia forum

Rromanovzky 2019-06-11 github

Sorry for the late reply, happy you made it work! I don't have dual GPU so I wouldn't have been able to help you anyway :)

LLuc45 2019-06-16 github

Ubuntu 18.04:

1. sudo add-apt-repository ppa:graphics-drivers/ppa
2. Run "nvidia-settings" and check your Nvidia driver major version. Mine, for instance, is: NVIDIA Driver Version: 430.26 (so, 430)
3. sudo apt install libnvidia-gl-{{MAJOR VERSION NUMBER}}:i386

My command ended up being this, for instance: sudo apt install libnvidia-gl-430:i386

But Steam, seriously, 32 bits....??

MMartinX3 2019-07-03 github

@Luc45 thank you, that fixes the problem.

I hope valve will develop a x86 emulator for games which won't run with a x86_64 steam.
I mean the same worked for 16 bit games.
Just a matter of time and money.

Xxmlyqing00 2019-07-03 github

Ubuntu 18.04:

1. sudo add-apt-repository ppa:graphics-drivers/ppa
2. Run "nvidia-settings" and check your Nvidia driver major version. Mine, for instance, is: NVIDIA Driver Version: 430.26 (so, 430)
3. sudo apt install libnvidia-gl-{{MAJOR VERSION NUMBER}}:i386

My command ended up being this, for instance: sudo apt install libnvidia-gl-430:i386

But Steam, seriously, 32 bits....??

When I try these scripts. It says that it will remove my previous cuda toolkit, which is installed in x64 version. So if you don't want to reinstall x64 cuda toolkit again, be careful to do that.

Jjomarocas 2019-08-02 github

https://developer.nvidia.com/cuda-10.0-download-archive

This was performed on Lubuntu 18.04 with an MX150 Optimus GPU:

okay, seems that there's a weird bug with nvidia prime that makes nvidia-smi fail. To fix it you just need to do the following:

1. sudo prime-select intel

2. reboot

3. sudo prime-select nvidia

4. reboot
   After that the driver will work and nvidia-smi will show the GPU working.
   So I was able to install the 430 driver from ppa  and then cuda-toolkit from the CUDA 10.0 deb (10.1 works as well but I need 10.0 for pytorch). Now steam works, and pytorch with cuda10 as well.

This is what I did:

- sudo apt remove --purge nvidia*
- sudo apt remove --purge cuda*
- reboot
- Add ppa:graphics-drivers/ppa
- download .deb for CUDA 10.0 local from https://developer.nvidia.com/cuda-toolkit-archive
- cd ~/Downloads
- sudo dpkg -i cuda-repo-ubuntu1804-10-0-local-10.0.130-410.48_1.0-1_amd64.deb
- sudo apt-key add /var/cuda-repo-10-0-local-10.0.130-410.48/7fa2af80.pub
- sudo apt-get update
- install driver from ppa: sudo apt install nvidia-driver-430
- install `machine-learning-repo` from [here](http://developer.download.nvidia.com/compute/machine/learning/repos/ubuntu1804/x86_64/)
- sudo apt update
- sudo apt install cuda-toolkit-10-0
- sudo apt install nvidia-cuda-toolkit 
- reboot
- if nvidia-smi doesn't work perform the fix above
- Success!

Thanks to @romanovzky and the guys from nvidia forum

thanks works for me but i want to simplify for ubuntu 18-04

sudo apt remove --purge nvidia\*
sudo apt purge --purge cuda\*
wget https://developer.nvidia.com/compute/cuda/10.0/Prod/local_installers/cuda-repo-ubuntu1804-10-0-local-10.0.130-410.48_1.0-1_amd64
sudo dpkg -i cuda-repo-ubuntu1804-10-0-local-10.0.130-410.48_1.0-1_amd64
sudo apt install nvidia-driver-430
sudo apt-key add /var/cuda-repo-10-0-local-10.0.130-410.48/7fa2af80.pub
sudo apt update
sudo apt install cuda-toolkit-10-0
sudo apt install nvidia-cuda-toolkit
sudo apt install libnvidia-gl-430:i386
sudo apt autoremove
sudo reboot now
MMartinX3 2019-08-03 github

Ubuntu 18.04:

1. sudo add-apt-repository ppa:graphics-drivers/ppa
2. Run "nvidia-settings" and check your Nvidia driver major version. Mine, for instance, is: NVIDIA Driver Version: 430.26 (so, 430)
3. sudo apt install libnvidia-gl-{{MAJOR VERSION NUMBER}}:i386

My command ended up being this, for instance: sudo apt install libnvidia-gl-430:i386

But Steam, seriously, 32 bits....??

That works, no cuda installation needed.

Dddouglas87 2019-08-28 github

image
try this:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt upgrade
//may should reboot?
sudo apt --fix-broken install
//may should reboot?
sudo apt install libnvidia-gl-418:i386
All works well.Let's play dota!
image
It's really working!!

Seems to be working.
Here is what it looks like on my end:

bunny@Lovely:~$ sudo add-apt-repository ppa:graphics-drivers/ppa
You are about to add the following PPA:
Fresh drivers from upstream, currently shipping Nvidia.

Current Status

Current long-lived branch release: nvidia-430 (430.40)
...
More info: https://launchpad.net/\~graphics-drivers/+archive/ubuntu/ppa
Press Enter to continue or Ctrl+C to cancel
...

apt update; apt upgrade
...

bunny@Lovely:~$ apt-cache search libnvidia-gl
libnvidia-gl-390 - NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
libnvidia-gl-410 - NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
libnvidia-gl-415 - NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
libnvidia-gl-418 - Transitional package for libnvidia-gl-430
libnvidia-gl-430 - NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
nvidia-340 - NVIDIA binary driver - version 340.107

bunny@Lovely:~$ apt install libnvidia-gl-430:i386
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
libnvidia-cfg1-418
Use 'sudo apt autoremove' to remove it.
The following NEW packages will be installed:
libnvidia-gl-430:i386
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 17.3 MB of archives.
After this operation, 72.0 MB of additional disk space will be used.
Get:1 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu bionic/main i386 libnvidia-gl-430 i386 430.40-0ubuntu0~gpu18.04.1 [17.3 MB]
Fetched 17.3 MB in 1min 9s (252 kB/s)
Selecting previously unselected package libnvidia-gl-430:i386.
(Reading database ... 466685 files and directories currently installed.)
Preparing to unpack .../libnvidia-gl-430_430.40-0ubuntu0~gpu18.04.1_i386.deb ...
Unpacking libnvidia-gl-430:i386 (430.40-0ubuntu0~gpu18.04.1) ...
Setting up libnvidia-gl-430:i386 (430.40-0ubuntu0~gpu18.04.1) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...

bunny@Lovely:~$ apt list --installed | grep -i cuda

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

cuda/now 10.1.243-1 amd64 [installed,local]

So CUDA 10.1 is still installed from earlier (cuDNN too) and I have nvidia-430 installed and libnvidia-gl-430:i386 installed fine with no conflict.

RRobRoseKnows 2019-09-13 github

Has anyone been able to install CUDA via the package manager while keeping steam working?

BBOT-RBA 2019-09-13 github

Yes, some months ago was a bit tricky because of these issues with the
cuda+driver support, but by playing with the driver (be prepared to X
crashes and at some points a full reinstall) you can make It work once for
all. Now I dont know if it's any better

Il ven 13 set 2019, 20:00 Robert Rose [email protected] ha scritto:

Has anyone been able to install CUDA via the package manager while keeping
steam working?


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ValveSoftware/steam-for-linux/issues/5778?email_source=notifications&email_token=AHLQAQN533ZD2VFAVY2E56DQJPIKPA5CNFSM4FWWU4YKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6VYH7A#issuecomment-531334140,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHLQAQP2YL4OG4ZT3NL5LJTQJPIKPANCNFSM4FWWU4YA
.

SSwimmingTiger 2019-10-05 github

For anyone wondering sudo apt install libnvidia-gl-418:i386 should work

It works for me, thank you!
A reboot is required after install or steam will hangs on Installing breakpad exception handler for appid(steam)/version(xxx).

Bbitnom 2019-10-23 github

I just encountered this issue. apt install libnvidia-gl-418:i386 fixed it and did not disrupt my essential cuda install.

:~# apt install libnvidia-gl-418:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libayatana-appindicator1 libayatana-indicator7 linux-headers-4.15.0-64 linux-headers-4.15.0-64-generic linux-image-4.15.0-64-generic
  linux-modules-4.15.0-64-generic linux-modules-extra-4.15.0-64-generic
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
  libnvidia-gl-430:i386
The following NEW packages will be installed:
  libnvidia-gl-418:i386 libnvidia-gl-430:i386
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Vvarishtsg 2019-11-01 github

Has anyone been able to get it to work with cuda 10.1 network deb install. Manually installing the 418:i386 driver removes my existing cuda 10.1 install. Removing it is not an option as I need it for tensorflow.

Is there a docker container or something available for steam?

Yyjzhang 2019-12-04 github

The steam flatpak seems to work, even with the latest Nvidia drivers and cuda installation. This is on linux mint 19.2.

Rr-barnes 2019-12-26 github

I didn't get the 440 driver to work with Lubuntu 18.04 because it doesn't have an "i386" package. The 435 driver did work:

apt install nvidia-driver-435 libnvidia-gl-435:i386
MMartinX3 2019-12-26 github

440 works here on my 18.04
But I use the nvidia PPA

SSaxtr0 2020-01-01 github

440 works here on my 18.04
But I use the nvidia PPA

off course it works, what is missing is the 32bit libraries compatibility for older programs (like steam and a lot of games).
In fact the 440 driver shuld not be used for gaming, just for cuda developments (only 64 bit)

MMartinX3 2020-01-01 github

Weird.
I have installed the 32bit 440 package here.

Rr-barnes 2020-01-01 github

I don't have 32bit package listed as available via apt.

WWilliamTambellini 2020-01-04 github

Be careful, nvidia still sometimes releases buggy drivers where 32b libs are replaced with 64b libs:
example with 418.87:
$ ldconfig -p | grep libGL
libGL.so.1 (libc6,x86-64) => /usr/lib32/nvidia-418/libGL.so.1
libGL.so.1 (libc6,x86-64) => /usr/lib32/libGL.so.1
libGL.so.1 (libc6,x86-64) => /usr/lib/nvidia-418/libGL.so.1
libGL.so.1 (libc6,x86-64) => /lib32/libGL.so.1
libGL.so (libc6,x86-64) => /usr/lib32/nvidia-418/libGL.so
libGL.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGL.so
libGL.so (libc6,x86-64) => /usr/lib/nvidia-418/libGL.so
libGL.so (libc6,x86-64) => /lib32/libGL.so
See all libs are 64b, even in the lib32 folder.

440.33 seems better:
$ ldconfig -p | grep libGL.so
libGL.so.1 (libc6,x86-64) => /usr/lib/nvidia-440/libGL.so.1
libGL.so.1 (libc6) => /usr/lib32/nvidia-440/libGL.so.1
libGL.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGL.so
libGL.so (libc6,x86-64) => /usr/lib/nvidia-440/libGL.so
libGL.so (libc6) => /usr/lib32/nvidia-440/libGL.so

SSaxtr0 2020-01-05 github

Ok guys,
just to be clear:
we are speaking about the 440.33 available here:
http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/
this packaged driver, is missing the i386 packages, so it is not ok to run steam

CCeeBeeEh 2020-01-13 github

Throwing in my voice here too. I have the 440.33.01 driver installed via the CUDA repo. Steam fails to start with the following output:

libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Installing breakpad exception handler for appid(steam)/version(1578700296)
Installing breakpad exception handler for appid(steam)/version(1578700296)
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Steam: An X Error occurred
X Error of failed request:  GLXBadContext
Major opcode of failed request:  151
Serial number of failed request:  45
xerror_handler: X failed, continuing

Running Ubuntu 18.04.1 and upgraded the kernel to the latest supported 5.0.0-37-generic.

Installing a different driver is not possible as doing so causes issues with the package management of the CUDA libraries and I need CUDA to be stable over anything Steam related. I've installed the 435 driver and was able to get Steam working, but then my CUDA install was removed. Yes I could manually hold packages, but the network/repo install of CUDA seems to have the 440 driver set as an absolute dependency. So if I install 435 then CUDA gets removed. If I then re-install CUDA then the driver gets upgraded to 440. And I do not want to manually wrangle the packages simply because of the extra work that requires when trying to update things in the future.

SSaxtr0 2020-01-16 github

cbstryker, the driver you are using have not implemented the 32bit libraries needed by Steam.
With Ubuntu 18.04 your best option is to use the driver nvidia-driver-435 that is in the repo bionic-updates.
If you want the latest driver use the nvidia ppa https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa

MMartinX3 2020-01-16 github

You mean 440
because I can still run steam and play games with it.

SSaxtr0 2020-01-16 github

MartinX3, you wrote few lines above you are using the PPA to get latest driver. In the bionic-updates repo there is the 435

MMartinX3 2020-01-16 github

@ScaMar please look again into your shared link

CCeeBeeEh 2020-01-16 github

cbstryker, the driver you are using have not implemented the 32bit libraries needed by Steam.
With Ubuntu 18.04 your best option is to use the driver nvidia-driver-435 that is in the repo bionic-updates.
If you want the latest driver use the nvidia ppa https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa

So I thought I would give this a try (again) and see if I can get CUDA working with the 435 drivers. Lo and behold, I now have Steam working and the entire CUDA framework is trashed (again) on my system. No Matter what I try (selectively installing packages one-by-one) I will eventually get to the point where one of the final pieces of the CUDA libraries will demand the 440 drivers, and there's nothing I can do about it (aside from using the non-net install of the CUDA libraries).

sudo apt install cuda-runtime-10-1
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following package was automatically installed and is no longer required:
  libnvidia-common-435
Use 'sudo apt autoremove' to remove it.
The following additional packages will be installed:
  cuda-drivers libnvidia-cfg1-440 libnvidia-compute-440 libnvidia-decode-440 libnvidia-encode-440 libnvidia-fbc1-440 libnvidia-gl-440 libnvidia-ifr1-440
  nvidia-compute-utils-440 nvidia-dkms-440 nvidia-driver-440 nvidia-kernel-common-440 nvidia-kernel-source-440 nvidia-utils-440
  xserver-xorg-video-nvidia-440
Recommended packages:
  libnvidia-compute-440:i386 libnvidia-decode-440:i386 libnvidia-encode-440:i386 libnvidia-ifr1-440:i386 libnvidia-fbc1-440:i386 libnvidia-gl-440:i386
The following packages will be REMOVED:
  libnvidia-cfg1-435 libnvidia-compute-435 libnvidia-compute-435:i386 libnvidia-decode-435 libnvidia-decode-435:i386 libnvidia-encode-435
  libnvidia-encode-435:i386 libnvidia-fbc1-435 libnvidia-fbc1-435:i386 libnvidia-gl-435 libnvidia-gl-435:i386 libnvidia-ifr1-435 libnvidia-ifr1-435:i386
  nvidia-compute-utils-435 nvidia-dkms-435 nvidia-driver-435 nvidia-kernel-common-435 nvidia-kernel-source-435 nvidia-utils-435
  xserver-xorg-video-nvidia-435
The following NEW packages will be installed:
  cuda-drivers cuda-runtime-10-1 libnvidia-cfg1-440 libnvidia-compute-440 libnvidia-decode-440 libnvidia-encode-440 libnvidia-fbc1-440 libnvidia-gl-440
  libnvidia-ifr1-440 nvidia-compute-utils-440 nvidia-dkms-440 nvidia-driver-440 nvidia-kernel-common-440 nvidia-kernel-source-440 nvidia-utils-440
  xserver-xorg-video-nvidia-440
0 upgraded, 16 newly installed, 20 to remove and 0 not upgraded.

Any more ideas? I don't mean to be snarky, but I've already tried all of what you said before you said it and explained it in my previous post.

SSaxtr0 2020-01-16 github

@ScaMar please look again into your shared link

My bad i'm not understanding.
My link is to PPA in order to install latest codec (that is 440.44 in CUDA repo there is the 440.33)
Alternative to run steam is to use the 435 driver, available in the default repo for bionic.

@cbstryker you can try the PPA driver that is 440, then check for CUDA framework

MMartinX3 2020-01-16 github

@ScaMar please look again into your shared link

My bad i'm not understanding.
My link is to PPA in order to install latest codec (that is 440.44 in CUDA repo there is the 440.33)
Alternative to run steam is to use the 435 driver, available in the default repo for bionic.

My bad, I did read your message wrong
Sorry

CCeeBeeEh 2020-01-16 github

Ok, so I've managed to get around all of this. I've wasted my entire day as a result. Here's the order of all things I did to get everything working again (Steam and all CUDA stuff):

  1. sudo apt purge cuda*
  2. sudo apt purge nvidia*
    (remove any TensorRT and CUDnn libraries also)
  3. reboot
  4. Install Nvidia drivers PPA
  5. sudo apt install nvidia-driver-440
  6. reboot
  7. add the CUDA repo
  8. sudo apt install cuda-toolkit-10-1 cuda-tools-10-1 cuda-compiler-10-1 cuda-libraries-10-1 cuda-libraries-dev-10-1
    This install all the cuda libraries minus the drivers, there are a few meta packages that install the driver also, and doing so will give you a version that Steam cannot use. Refer to this page: https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#package-manager-metas
  9. sudo apt install ~/Downloads//libcudnn7_7.6.5.32-1+cuda10.1_amd64.deb
  10. sudo apt install ~/Downloads/libcudnn7-dev_7.6.5.32-1+cuda10.1_amd64.deb
  11. sudo apt install ~/Downloads/libcudnn7_7.6.5.32-1+cuda10.1_amd64.deb
  12. sudo apt install tensorrt libnvinfer-dev python3-libnvinfer-dev uff-converter-tf

To say the least, this was a very frustrating experience. I hope this helps anyone else facing the same issue.

Cc3cuddles 2020-01-23 github

So I'm trying to understand the current status of this issue and what can be done. I'm going to summarize what I have learned here, but please tell me if I've got anything wrong.

Current status: Basically, CUDA 10 and steam don't work together, at least not out of the box. Installing the CUDA 10 metapackage replaces any previously installed nvidia driver with a version that lacks the 32 bit libraries steam requries. Trying to install the needed libraries, like libnvidia-gl:i386 causes apt to complain about this new driver, which it wants to remove it to install libnvidia-gl:i386

Potential workarounds:

  • install and use CUDA 9 instead
  • pick and choose what you need from CUDA so as to avoid the metapackage, as @cbstryker demonstrated above
  • install CUDA with the .run file from nvidia's website

It seems that installing CUDA with the .run file is the fastest and most straightforward solution, but I understand the many would prefer to use apt.

CCeeBeeEh 2020-01-23 github

So I'm trying to understand the current status of this issue and what can be done. I'm going to summarize what I have learned here, but please tell me if I've got anything wrong.

Current status: Basically, CUDA 10 and steam don't work together, at least not out of the box. Installing the CUDA 10 metapackage replaces any previously installed nvidia driver with a version that lacks the 32 bit libraries steam requries. Trying to install the needed libraries, like libnvidia-gl:i386 causes apt to complain about this new driver, which it wants to remove it to install libnvidia-gl:i386

Potential workarounds:

  • install and use CUDA 9 instead
  • pick and choose what you need from CUDA so as to avoid the metapackage, as @cbstryker demonstrated above
  • install CUDA with the .run file from nvidia's website

It seems that installing CUDA with the .run file is the fastest and most straightforward solution, but I understand the many would prefer to use apt.

Actually, I would suggest that using apt is the fastest and cleanest. You can think of the cuda-10 metapackage as a metapackage for the other metapackages (not really though). Basically, selecting the other metapackages that I listed in my post gives you everything you need for CUDA. CUDA doesn't care which driver you're using our how you installed it as long as it meets the minimum version (which I think is 418 right now).

Using apt also gives you the fastest security updates.

Cc3cuddles 2020-01-23 github

@cbstryker I'm trying to follow your instructions. I just finished step 6, and I'm trying to get steam working before installing CUDA. Running steam produces the error GLXBadContext. Okay, I'll try to manually install 32 bit libraries. However, aptitude complains when running sudo apt install libnvidia-gl:i386:

The following packages will be REMOVED:
  libnvidia-gl-440 libnvidia-ifr1-440 nvidia-driver-440
The following NEW packages will be installed:
  libnvidia-gl-440:i386
0 upgraded, 1 newly installed, 3 to remove and 8 not upgraded.

can you confirm that you got steam to work with nvidia-driver-440?

Cc3cuddles 2020-01-23 github

I ended up using the flatpak distribution of steam and that fixed my problems. I have nvidia-driver-440 installed as well as cuda-10-1 and CUDA works in addition to steam.

Kkarolgrudzinski 2020-01-23 github

I commented in this thread 10 months ago and I'm still amazed that you guys are still fighting with this. I ended up removing steam because I play games very rarely and hadn't tried to make it work since then. I used Gentoo for more than 15 years and I've never had such problems that I have in Ubuntu for the last 2 years I'm using it.

Bbeew 2020-01-23 github

I commented in this thread 10 months ago and I'm still amazed that you guys are still fighting with this. I ended up removing steam because I play games very rarely and hadn't tried to make it work since then. I used Gentoo for more than 15 years and I've never had such problems that I have in Ubuntu for the last 2 years I'm using it.

Barking up the wrong tree here. This is not a Ubuntu issue but the way Nvidia removed 32 support from the driver in its CUDA repo. If you don't use the driver from that repo problem solved (either just use the repo for cuda or install cuda locally and install the driver from Ubuntu's ppa)

Kkarolgrudzinski 2020-01-23 github

It is Ubuntu issue from my perspective because it is stuck on archaic driver versions and updates are so rare. I wouldn't use nVidia's local installer because package managers are better at cleaning after deintallations. And don't get me started on the whole stupidity of deb's dependency hell when package versions are so strictly tied to other packages versions.

Cc3cuddles 2020-01-23 github

@beew using the driver from Ubuntu ppa broke steam in my case. I installed the driver from the Ubuntu ppa, and I did not install anything from the CUDA repo, just to be sure, and steam still would not launch.

Edit: actually, now that I think about it, since I have both repos in sources.list, I am not totally sure it didn't just pull the driver from the CUDA repo when I thought I was using the ubuntu ppa....

CCeeBeeEh 2020-01-23 github

It is Ubuntu issue from my perspective because it is stuck on archaic driver versions and updates are so rare. I wouldn't use nVidia's local installer because package managers are better at cleaning after deintallations. And don't get me started on the whole stupidity of deb's dependency hell when package versions are so strictly tied to other packages versions.

Install the Nvidia PPA and you'll have the latest driver.

@beew using the driver from Ubuntu ppa broke steam in my case. I installed the driver from the Ubuntu ppa, and I did not install anything from the CUDA repo, just to be sure, and steam still would not launch.

Edit: actually, now that I think about it, since I have both repos in sources.list, I am not totally sure it didn't just pull the driver from the CUDA repo when I thought I was using the ubuntu ppa....

You probably have some left over configurations. If you haven't already, do a complete purge of all Nvidia and CUDA packages. Then install the drivers from the PPA (usually nvidia-drivers-4xx). The CUDA drivers are "cuda-drivers", or something similar. However, if you install any of the CUDA metapackages it will remove the PPA driver.

Ffenguoerbian 2020-02-10 github

The .run file of 440 driver itself includes the 32bit part. It even pops out to ask whether you want to install the 32bit part. But not the driver included in the cuda10.2 .run file. So my solution is to install this standalone driver first. Then install the cuda .run file, but uncheck the driver part. The cuda installation will warn you about driver version must be greater than 440, but that's OK. This way, both steam and cuda are happy.

Bbeew 2020-02-12 github

I purged all cuda stuffs from Nvidia's repo, Installed driver from graphic driver ppa to get 32 bit support then installed cuda with the .run file locally. It is simple and everything works.

Nvidia's repo is a pain. first it removed 32 bit support in the driver update for cuda 10.0 (32 bit still supported by the driver, just not for the one packaged in the cuda repo (why??). Then it updated cuda to 10.1 and broke tensorflow and almost everything else that used cuda since it renamed and moved files from where they used to be (why??!!).

Nvidia doesn't care about compatibility downstream and its repo upgrades first instance it releases a new version. If you downgrade cuda you have to pin a lot of packages.. If you pin them in synaptic but forget to pin them in apt next time sudo apt upgrade will upgrade them nonetheless, then again downgrade and remove/install a bunch of stuffs. After a while bunch of things may get out of sync (I don't like pinning packages)

P.S. another option is like fenguerobian above (install both driver and cuda with .run files, one after the other, though I suspect you don't need two step, install cuda with .run file will install the driver if you agree, and it will probably has 32 bit support because my understanding is that 32 bit is only removed in the cuda repo) , but installing driver with .run file is pita, especially when you have a kernel upgrade, I think it is a lot easier to use the ppa for driver.

AAlexRouSg 2020-02-12 github

If you use the .run installer and enable DKMS you won't need to reinstall the drivers on a kernel upgrade, at least on ubuntu even with HWE kernels (5.3). (not sure how it reacts with other distros/kernels)

Mmuhammadfraz 2020-03-06 github

For anyone wondering sudo apt install libnvidia-gl-418:i386 should work

I've got the following stack:
Ubuntu 18.04
Nvidia driver version 440
Cuda 10.2

I've had issues with steam not starting since I upgraded my driver from 396 to 440.
I just followed the suggestion in the quoted post and it worked. Though, I still don't understand why installing 418:i386 worked with the installed driver version 440. Some hidden magic happened I guess but I am happy that steam is now working. Thanks for the help.

CCarloWood 2020-03-13 github

Hey all.
The problem seems to be that the nvidia cuda repository contains nvidia driver and libraries with the version 440.64.00 while the graphic driver ppa has the version 440.64-0... The latter is consider to be LESS than the former (note the period in the first where there is a dash in the latter). The cuda-drivers require a version >= 440.64.00, so that fails.

I worked around this using 'equivs':

sudo apt install equivs

Create a file ns-control with the following content:

Section: non-free/libs
Priority: optional
Homepage: https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804&target_type=debnetwork
Standards-Version: 3.9.2

Package: cuda-nvidia-equivs
Version: 10.2.440.64
Maintainer: Carlo Wood <[email protected]>

Depends: nvidia-driver-440 (= 440.64-0ubuntu0~0.18.04.1),
 libnvidia-compute-440 (>= 440.64),
 libnvidia-decode-440 (>= 440.64),
 libnvidia-encode-440 (>= 440.64),
 libnvidia-fbc1-440 (>= 440.64),
 libnvidia-gl-440 (>= 440.64),
 libnvidia-ifr1-440 (>= 440.64),
 nvidia-compute-utils-440 (>= 440.64),
 nvidia-dkms-440 (>= 440.64),
 nvidia-kernel-source-440 (>= 440.64),
 nvidia-utils-440 (>= 440.64),
 xserver-xorg-video-nvidia-440 (>= 440.64)

Provides: nvidia-driver-440 (= 440.64.00),
 libnvidia-compute-440 (= 440.64.00),
 libnvidia-decode-440 (= 440.64.00),
 libnvidia-encode-440 (= 440.64.00),
 libnvidia-fbc1-440 (= 440.64.00),
 libnvidia-gl-440 (= 440.64.00),
 libnvidia-ifr1-440 (= 440.64.00),
 nvidia-compute-utils-440 (= 440.64.00),
 nvidia-dkms-440 (= 440.64.00),
 nvidia-kernel-source-440 (= 440.64.00),
 nvidia-utils-440 (= 440.64.00),
 xserver-xorg-video-nvidia-440 (= 440.64.00)

Architecture: amd64
Multi-Arch: same
Description: A meta package to fool apt into installing cuda from nvidia.
 See the Homepage URL for instructions to install the latest cuda.
 However the last line (actually installing cuda) will fail (assuming
 you have 'deb http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu bionic main'
 in /etc/apt/sources.list.d/graphics-drivers-ubuntu-ppa-bionic.list
 .
 The reason for that failure is that nvidia's cuda repository
 also comes with the nvidia driver and libraries, but requires
 a version that is not satisfied by graphics-drivers-ubuntu-ppa.
 .
 This meta package adds a workaround for this broken dependency,
 hopefully causing the drivers to not be installed, but still be
 satisfied so that cuda will install.

Then run

equivs-build ns-control
sudo dpkg -i cuda-nvidia-equivs_10.2.440.64_amd64.deb

Edit /etc/apt/preferences.d/cuda-repository-pin-600
and change the Pin-Priority from 600 to 450, because we
want to keep the normal ubuntu debs if possible.

And now finally this will work,

sudo apt install cuda

CCeeBeeEh 2020-03-13 github

Hey all.
The problem seems to be that the nvidia cuda repository contains nvidia driver and libraries with the version 440.64.00 while the graphic driver ppa has the version 440.64-0... The latter is consider to be LESS than the former (note the period in the first where there is a dash in the latter). The cuda-drivers require a version >= 440.64.00, so that fails.

I worked around this using 'equivs':

sudo apt install equivs

Create a file ns-control with the following content:

Section: non-free/libs
Priority: optional
Homepage: https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804&target_type=debnetwork
Standards-Version: 3.9.2

Package: cuda-nvidia-equivs
Version: 10.2.440.64
Maintainer: Carlo Wood <[email protected]>

Depends: nvidia-driver-440 (= 440.64-0ubuntu0~0.18.04.1),
 libnvidia-compute-440 (>= 440.64),
 libnvidia-decode-440 (>= 440.64),
 libnvidia-encode-440 (>= 440.64),
 libnvidia-fbc1-440 (>= 440.64),
 libnvidia-gl-440 (>= 440.64),
 libnvidia-ifr1-440 (>= 440.64),
 nvidia-compute-utils-440 (>= 440.64),
 nvidia-dkms-440 (>= 440.64),
 nvidia-kernel-source-440 (>= 440.64),
 nvidia-utils-440 (>= 440.64),
 xserver-xorg-video-nvidia-440 (>= 440.64)

Provides: nvidia-driver-440 (= 440.64.00),
 libnvidia-compute-440 (= 440.64.00),
 libnvidia-decode-440 (= 440.64.00),
 libnvidia-encode-440 (= 440.64.00),
 libnvidia-fbc1-440 (= 440.64.00),
 libnvidia-gl-440 (= 440.64.00),
 libnvidia-ifr1-440 (= 440.64.00),
 nvidia-compute-utils-440 (= 440.64.00),
 nvidia-dkms-440 (= 440.64.00),
 nvidia-kernel-source-440 (= 440.64.00),
 nvidia-utils-440 (= 440.64.00),
 xserver-xorg-video-nvidia-440 (= 440.64.00)

Architecture: amd64
Multi-Arch: same
Description: A meta package to fool apt into installing cuda from nvidia.
 See the Homepage URL for instructions to install the latest cuda.
 However the last line (actually installing cuda) will fail (assuming
 you have 'deb http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu bionic main'
 in /etc/apt/sources.list.d/graphics-drivers-ubuntu-ppa-bionic.list
 .
 The reason for that failure is that nvidia's cuda repository
 also comes with the nvidia driver and libraries, but requires
 a version that is not satisfied by graphics-drivers-ubuntu-ppa.
 .
 This meta package adds a workaround for this broken dependency,
 hopefully causing the drivers to not be installed, but still be
 satisfied so that cuda will install.

Then run

equivs-build ns-control
sudo dpkg -i cuda-nvidia-equivs_10.2.440.64_amd64.deb

And now finally this will work,

sudo apt install cuda

While this is a creative solution. It's overkill. Install the Nvidia drivers from the distro repo, or from the graphics driver PPA. Then to install CUDA just install the following meta-packages:

cuda-toolkit-10-1
cuda-tools-10-1
cuda-compiler-10-1
cuda-libraries-10-1
cuda-libraries-dev-10-1

These are the exact same as if you install "cuda" or "cuda-10-x" except it does not include the drivers.

CCarloWood 2020-03-13 github

Well.. not really. For a start you install 10-1 instead of 10-2.

CCeeBeeEh 2020-03-13 github

Well.. not really. For a start you install 10-1 instead of 10-2.

Then install 10-2 or 10-0 or whichever your heart desires. The point is that this is cleanest method with the least amount of overhead.

SSaxtr0 2020-03-13 github

@cbstryker nice trick

CCarloWood 2020-03-13 github

Ok, I agree. I wish I had seen your answer (https://github.com/ValveSoftware/steam-for-linux/issues/5778#issuecomment-575334890) before. I'll try it next upgrade.

Ssnapfast 2020-03-15 github

The .run file of 440 driver itself includes the 32bit part. It even pops out to ask whether you want to install the 32bit part. But not the driver included in the cuda10.2 .run file. So my solution is to install this standalone driver first. Then install the cuda .run file, but uncheck the driver part. The cuda installation will warn you about driver version must be greater than 440, but that's OK. This way, both steam and cuda are happy.

This is the solution that worked for me. Least commands and trouble.

Aar13pit 2020-03-22 github

I made a slight modification to the solution provided by @cbstryker in comment to get steam to work with Ubuntu 18.04 and nvidia driver 440.

The PPA version of nvidia-drivers-440 did not install the 32-Bit parts required by steam. I first purged the existing nvidia and cuda packages, installed the standalone driver using the .run file enabling 32-bit parts and DKMS then went to step 7 in the specified comment.

That made everything work.

I also tried the installation of steam from flatpak. Using everything from the PPAs the flatpak installation also worked but it gave me glx errors with CS GO so I switched to my mentioned solution.

Mmeetnick 2020-03-30 github

I made this Gist which creates a working environment with CUDA 10.0 + Nvidia driver 440 and also Steam works. With a plus, this Gist installs TensorRT 6 and CUDNN 7.6.5.

https://gist.github.com/meetnick/b17a1b1d13a2b31e0740bdd68027f386

NOTICE: This Gist is mainly focused on ML environment with PyTorch and TensorFlow using GPU. So if you don't want these, please DIY by change it to fit your needs.

Vvalgur 2020-04-04 github

Pretty much the same as @meetnick, but uses only apt-installed packages for both CUDA and drivers:
https://gist.github.com/valgur/fcd72fcdf5db81a826f8ff9802621d75

Installing the cuda-toolkit-10-x instead of cuda-10-x meta-package and the Nvidia drivers from graphics-drivers PPA is a simple fix for this problem. The only difference between these two packages is that the toolkit one does not add a dependency for cuda-drivers, which blocks the installation of the normal Nvidia drivers with 32-bit support.

PPrisionMike 2020-04-05 github

For anyone wondering sudo apt install libnvidia-gl-418:i386 should work

I've got the following stack:
Ubuntu 18.04
Nvidia driver version 440
Cuda 10.2

I've had issues with steam not starting since I upgraded my driver from 396 to 440.
I just followed the suggestion in the quoted post and it worked. Though, I still don't understand why installing 418:i386 worked with the installed driver version 440. Some hidden magic happened I guess but I am happy that steam is now working. Thanks for the help.

And this doesn't remove your CUDA - 10.2? You sure?

CCarloWood 2020-04-07 github

@valgur I think there is one thing still missing though. You should also create a file, say
/etc/apt/preferences.d/cuda-repository-pin-450 with the contents

Package: *
Pin: release l=NVIDIA CUDA
Pin-Priority: 450

Otherwise driver packages in nvidia's repository might be installed over the ones in graphics-drivers which is not what you want. In fact they already are no? Nvidia has versions like "440.64.00-0ubuntu1" which is considered to be larger than graphics-drivers version "440.64-0ubuntu0~0.18.04.2".

Have a look at apt-cache policy nvidia-driver-440

Eenfiskutensykkel 2020-04-07 github

None of the solutions above worked for me, the .run installer failed with an unspecified error, and for some reason I wasn't able to select the PPA driver. However, the flatpak version of steam worked perfectly for me, with a normal .deb installation of CUDA 10.2 and the corresponding driver. I'm trying a couple of different games now to verify.

Mmkrupczak3 2020-04-20 · hidden on GitHub github

God it would have been really helpful to know that CUDA would break Steam.

Lik this if you cri everytim

Mmkrupczak3 2020-04-21 · hidden on GitHub github

I made a slight modification to the solution provided by @cbstryker in comment to get steam to work with Ubuntu 18.04 and nvidia driver 440.

The PPA version of nvidia-drivers-440 did not install the 32-Bit parts required by steam. I first purged the existing nvidia and cuda packages, installed the standalone driver using the .run file enabling 32-bit parts and DKMS then went to step 7 in the specified comment.

That made everything work.

I also tried the installation of steam from flatpak. Using everything from the PPAs the flatpak installation also worked but it gave me glx errors with CS GO so I switched to my mentioned solution.

Pour one out please for my fellow lost souls
https://github.com/mkrupczak3/Linux-Hall-of-Shame/blob/master/README.md

Mmkrupczak3 2020-04-21 · hidden on GitHub github

WTF, Who marked me as spam? This is a concerned developer expressing frustration in an appropriate way.

If your house was on fire, wouldn't you be hollering about it?

Because I spent most of yesterday working on this dumpster fire of so called "software".

I know it's really not valve's fault (here's looking at you NVIDIA), but still excruciatingly frustrating:
https://github.com/mkrupczak3/Linux-Hall-of-Shame/blob/master/README.md

Mmkrupczak3 2020-04-21 · hidden on GitHub github

Holy fucking shit, this thread is from 2018 and it's still a major pain in my ass:

https://www.youtube.com/watch?v=gvdf5n-zI14

https://youtu.be/ee925OTFBCA?t=15

Aakesterson 2020-05-03 github

This appears to be resolved - I'm on driver 440, was able to apt install libnvidia-gl-440:i386, now steam starts up and runs. I guess the packaging issues got resolved upstream?

ZZincr0 2020-05-05 github

as today, this problem is still there, you can install libnvidia-gl-440:i386 but it will remove the non i386 version.

Aakesterson 2020-05-07 github

as today, this problem is still there, you can install libnvidia-gl-440:i386 but it will remove the non i386 version.

This does not appear to be the case, at least for my install. After installing :i386, I still have the amd64 versions.

$ sudo dpkg -l | grep -iE nvidia | grep -ie 440
ii  libnvidia-cfg1-440:amd64              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA binary OpenGL/GLX configuration library
ii  libnvidia-common-440                  440.82-0ubuntu0~0.18.04.1                        all          Shared files used by the NVIDIA libraries
ii  libnvidia-compute-440:amd64           440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA libcompute package
ii  libnvidia-decode-440:amd64            440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA Video Decoding runtime libraries
ii  libnvidia-encode-440:amd64            440.82-0ubuntu0~0.18.04.1                        amd64        NVENC Video Encoding runtime library
ii  libnvidia-extra-440:amd64             440.82-0ubuntu0~0.18.04.1                        amd64        Extra libraries for the NVIDIA driver
ii  libnvidia-fbc1-440:amd64              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA OpenGL-based Framebuffer Capture runtime library
ii  libnvidia-gl-440:amd64                440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
ii  libnvidia-gl-440:i386                 440.82-0ubuntu0~0.18.04.1                        i386         NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
ii  libnvidia-ifr1-440:amd64              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA OpenGL-based Inband Frame Readback runtime library
ii  nvidia-compute-utils-440              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA compute utilities
ii  nvidia-dkms-440                       440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA DKMS package
ii  nvidia-driver-440                     440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA driver metapackage
ii  nvidia-kernel-common-440              440.82-0ubuntu0~0.18.04.1                        amd64        Shared files used with the kernel module
ii  nvidia-kernel-source-440              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA kernel source package
ii  nvidia-settings                       440.64-0ubuntu0~0.18.04.1                        amd64        Tool for configuring the NVIDIA graphics driver
ii  nvidia-utils-440                      440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA driver support binaries
ii  xserver-xorg-video-nvidia-440         440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA binary Xorg driver
ZZincr0 2020-05-07 github

as today, this problem is still there, you can install libnvidia-gl-440:i386 but it will remove the non i386 version.

This does not appear to be the case, at least for my install. After installing :i386, I still have the amd64 versions.

$ sudo dpkg -l | grep -iE nvidia | grep -ie 440
ii  libnvidia-cfg1-440:amd64              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA binary OpenGL/GLX configuration library
ii  libnvidia-common-440                  440.82-0ubuntu0~0.18.04.1                        all          Shared files used by the NVIDIA libraries
ii  libnvidia-compute-440:amd64           440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA libcompute package
ii  libnvidia-decode-440:amd64            440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA Video Decoding runtime libraries
ii  libnvidia-encode-440:amd64            440.82-0ubuntu0~0.18.04.1                        amd64        NVENC Video Encoding runtime library
ii  libnvidia-extra-440:amd64             440.82-0ubuntu0~0.18.04.1                        amd64        Extra libraries for the NVIDIA driver
ii  libnvidia-fbc1-440:amd64              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA OpenGL-based Framebuffer Capture runtime library
ii  libnvidia-gl-440:amd64                440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
ii  libnvidia-gl-440:i386                 440.82-0ubuntu0~0.18.04.1                        i386         NVIDIA OpenGL/GLX/EGL/GLES GLVND libraries and Vulkan ICD
ii  libnvidia-ifr1-440:amd64              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA OpenGL-based Inband Frame Readback runtime library
ii  nvidia-compute-utils-440              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA compute utilities
ii  nvidia-dkms-440                       440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA DKMS package
ii  nvidia-driver-440                     440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA driver metapackage
ii  nvidia-kernel-common-440              440.82-0ubuntu0~0.18.04.1                        amd64        Shared files used with the kernel module
ii  nvidia-kernel-source-440              440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA kernel source package
ii  nvidia-settings                       440.64-0ubuntu0~0.18.04.1                        amd64        Tool for configuring the NVIDIA graphics driver
ii  nvidia-utils-440                      440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA driver support binaries
ii  xserver-xorg-video-nvidia-440         440.82-0ubuntu0~0.18.04.1                        amd64        NVIDIA binary Xorg driver

Strange, i'm using kde neon. I just used the script by @meetnick (and it works), so i can't do testing anymore.

PPrisionMike 2020-05-07 github

@akesterson Even my installer still notifies me that it'll remove the non i386 version if I install it. But there seems to be some update in the Steam, as it has now given me a more specific list of missing drivers:
libXtst.so.6
libpulse.so.0
libva.so.2
libbz2.so.1.0
libvdpau.so.1
libva.so.2
libva-x11.so.2

I will try to install them and see if it works. Though apt can't search any of them as is, and when I search only the root name (say libxtst,libpulse) I am overwhelmed by the options.

PPrisionMike 2020-05-07 github

@akesterson Even my installer still notifies me that it'll remove the non i386 version if I install it. But there seems to be some update in the Steam, as it has now given me a more specific list of missing drivers:
libXtst.so.6
libpulse.so.0
libva.so.2
libbz2.so.1.0
libvdpau.so.1
libva.so.2
libva-x11.so.2

I will try to install them and see if it works. Though apt can't search any of them as is, and when I search only the root name (say libxtst,libpulse) I am overwhelmed by the options.

I should provide the relevant specs I have rn.
Ubuntu 18.04.4 (amd64)
NVIDIA-SMI 440.33.01 Driver Version: 440.33.01 CUDA Version: 10.2
GeForce MX110/PCIe/SSE2

Ffrancardoso93 2020-05-29 github

For anyone wondering sudo apt install libnvidia-gl-418:i386 should work

sudo apt install libnvidia-gl-440:i386 worked for me! :smile:

NNorbiPeti 2020-05-29 github

I still couldn't install the 32-bit version for 440 without removing the 64-bit version.

You should also create a file, say
/etc/apt/preferences.d/cuda-repository-pin-450 with the contents

Package: *
Pin: release l=NVIDIA CUDA
Pin-Priority: 450

This fixes the issue for me on Ubuntu 18.04.4.

Rr-barnes 2020-05-30 github

On a fresh install of Lubuntu 20.04

sudo apt install libnvidia-gl-440:i386 nvidia-driver-440

works fine.

Cccostel 2020-06-02 github

I am so happy to have found this thread. I've spent months reinstalling Nvidia drivers along with CUDA.

For when I downgrade to Nvidia 435 steam and wine work but CUDA breaks for TensorFlow on Ubuntu 18.04.

sudo apt install libnvidia-gl-440:i38

Throws

Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package libnvidia-gl-440:i38
Ddarkalchemy 2020-06-04 github

sudo apt install libnvidia-gl-440:i38

@ccostel I think it should be:

sudo apt install libnvidia-gl-440:i386
Kkeysmashes 2020-06-08 github

I'm just making a note here, because it took me a while to understand this problem: Steam currently will not work if you have CUDA 11 installed.

This is because CUDA 11 requires at least Nvidia driver version 450, which is currently only available in Nvidia's CUDA repository, and the CUDA repository does not include i386 versions of the drivers. When you have, say libnvidia-gl-440 and libnvidia-gl-440:i386 installed, the former comes from the CUDA repo whereas the latter probably comes from the graphics-drivers PPA (see apt-cache policy libnvidia-gl-440{,:i386}). Currently, the 450 driver isn't available in the graphics-drivers PPA, so there's no i386 version, and therefore you cannot currently use Steam with the 450 driver.

This should hopefully (aiui) sort itself out once the 450 driver lands in the graphics-drivers PPA and an i386 version becomes available.

Mmkrupczak3 2020-06-09 · hidden on GitHub github

Hi @kisak-valve,

Your software, combined with this unholy abomination that is the NVIDIA "driver" software, has forced me to give up both video-games and even made me re-consider wanting to touch graphics cards for a while.

I've also been rethinking life. I'm not happy with all the choices I've made that have brought me here.

Mmkrupczak3 2020-06-21 github

I apologize for my snark earlier, but I think either running the command @r-barnes mentioned, using the Ubuntu GUI to set my graphics drivers, or maybe a steam software update fixed it for me!

I'm overjoyed!

I've been back to playing some videogames. Hopefully I'll still be able to dork with neural nets soon.

I wish I knew exactly what it was that fixed it, but I'm happy to at least have it working.

Thanks to all of you kind souls for making the world of Linux graphics drivers slightly less horrifying (if only by a little bit).

Kkeysmashes 2020-07-29 github

fwiw, nvidia-graphics-drivers-450 has now landed in the graphics-drivers PPA, so sudo apt install libnvidia-gl-450:i386 should now work. (if you've installed CUDA, you might need to tweak your apt preferences at /etc/apt/preferences.d/cuda-repository-pin-600 to convince apt that it's ok to use the driver from the graphics-drivers PPA instead of the one from the CUDA repo.)

MMarioIshac 2020-07-31 github

(if you've installed CUDA, you might need to tweak your apt preferences at /etc/apt/preferences.d/cuda-repository-pin-600 to convince apt that it's ok to use the driver from the graphics-drivers PPA instead of the one from the CUDA repo.)

@sersorrel Could you clarify this a bit more? This is exactly what I just ran into, I have CUDA installed but when I try to install libnvidia-gl-450:i386 from the graphics-drivers PPA it wants to remove CUDA as well as the driver dependencies of CUDA. How would I tweak the preferences such that they can coexist? Here's my /etc/apt/preferences.d/cuda-repository-pin-600:

Package: nsight-compute
Pin: origin *ubuntu.com*
Pin-Priority: -1

Package: nsight-systems
Pin: origin *ubuntu.com*
Pin-Priority: -1

Package: *
Pin: release l=NVIDIA CUDA
Pin-Priority: 600
Kkeysmashes 2020-07-31 github

@MarioIshac sure – I solved the problem by creating /etc/apt/preferences.d/nvidia-drivers with the following contents:

Package: *
Pin: release o=LP-PPA-graphics-drivers
Pin-Priority: 601

though fwiw, that has resulted in all the graphics drivers coming from the graphics-drivers PPA, so I don't know if CUDA apps will still work if you do this. (I think this is because the CUDA repo and the PPA currently have different versions of the 450 driver – iirc, the CUDA repo and the PPA used to include packages with the same version number (and a Pin-Priority: 501 was enough to convince apt that CUDA's libnvidia-gl-... and the PPA's libnvidia-gl-...:i386 could coexist), but that doesn't seem to be the case at the moment.)

Rrealyanyang 2020-09-27 github

I just solved the problem by accident.
I have googled all day and confirm that the Nvidia driver is the culprit. Steam still can't launch after trying to install 32-bit libs. Finally, I decide to install the newest Nvidia driver using the .run file. In the process of installing the driver, it can also install 32-bit support but gives me a warning Unable to determine the path to install the libglvnd EGL vendor library config files. Check that you have pkg-config and the libglvnd development libraries installed, or specify a path with --glvnd-egl-config-path.
Then I install these two libs by sudo apt install pkg-config libglvnd-dev and re-run the .run file to reinstall the driver. After reboot, reinstall steam and it can work normally.
I wish this can also help you.

OS: Ubuntu 18.04
Nvidia driver: 450.66
CUDA: v10.1.243

Mmkrupczak3 2020-09-27 · hidden on GitHub github

I just solved the problem by accident.
I have googled all day and confirm that the Nvidia driver is the culprit. Steam still can't launch after trying to install 32-bit libs. Finally, I decide to install the newest Nvidia driver using the .run file. In the process of installing the driver, it can also install 32-bit support but gives me a warning Unable to determine the path to install the libglvnd EGL vendor library config files. Check that you have pkg-config and the libglvnd development libraries installed, or specify a path with --glvnd-egl-config-path.
Then I install these two libs by sudo apt install pkg-config libglvnd-dev and re-run the .run file to reinstall the driver. After reboot, reinstall steam and it can work normally.
I wish this can also help you.

OS: Ubuntu 18.04
Nvidia driver: 450.66
CUDA: v10.1.243

Nice! I'll have to try this.

Damn. What a mess this platform has been. This is why I still can't recommend Linux to normal humans

Kkarolgrudzinski 2020-09-27 · hidden on GitHub github

Damn. What a mess this platform has been. This is why I still can't recommend Linux to normal humans

This is a mess only on release based distros like Ubuntu. On rolling-release distros this never occurs.

Mmkrupczak3 2020-10-13 · hidden on GitHub github

@karolgrudzinski

Released-based or not, the contract with users should be that MAJOR VERSION RELEASES are SUPPOSED TO WORK. That's why they're major, long term support releases!

Also, this has nothing to do with the released-based distribution scheme! The problem is just that none of these people talk to each-other (or even test their products), and they all write terrible software!

I've had an excellent experience using Manjaro (Arch Linux), and will probably switch over to that instead of upgrading from 18.04 to the horrendous 20.04.

This problem is not unique to release based distros like Ubuntu though. I use many flavours of Linux in my livelyhood, and the core problem remains in the Linux ecosystem: end users are forgotten and treated as second class citizens.

Mmkrupczak3 2020-10-13 · hidden on GitHub github

This bit-level package hacking crap in the terminal should be completely unecessary for my theoretical snot-nosed nephew to play Minecraft on his theoretical cheap Ubuntu laptop.

Mmkrupczak3 2020-10-15 · hidden on GitHub github

Or Among Us, Terarria, Portal, or TF2 if you will, because those are all actually on Steam, and someone with less than expert knowledge of how to mangle computers and Linux packages might feasibly want to use their computer with free and open source software (because they're a cheap bastard, like me).

I went to school for this and have been dorking with this all my life. It's important to always keep in mind though: most people haven't, and are deathly scared of this stuff or get very frustrated trying!

Nnickistre 2020-10-22 github

On Pop!_OS 20.04, I managed to get steam running on my Nvidia card by running sudo apt install libnvidia-gl-455:i386. Now steam and games launched from it are now properly using the Nvidia card in Hybrid graphics mode (I've not tested pure Nvidia graphics mode yet, though steam was simply refusing to run in that mode yesterday). Even works with multi-monitors with hybrid graphics, though there seems to be some pretty minor performance issues in the game i tested (Dragon's Dogma: Dark Arisen on proton).

OS: Pop! OS 20.04
Nvidia driver: 455.28
CUDA: 11.1

Ppayalord 2020-11-04 github

Does anyone know how to solve this on Centos 8?

Iikmckenz 2020-11-09 github

Trying to install the 32-bit drivers seems to require getting rid of the 64 bit drivers for me on Ubuntu.

$ sudo apt-get install libnvidia-gl-450:i386  
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libnvidia-cfg1-450 libnvidia-decode-450 libnvidia-encode-450 libnvidia-extra-450 libnvidia-fbc1-450 libxnvctrl0 nvidia-compute-utils-450 nvidia-dkms-450 nvidia-kernel-common-450
  nvidia-kernel-source-450 nvidia-prime nvidia-settings nvidia-utils-450 screen-resolution-extra xserver-xorg-video-nvidia-450
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  libnvidia-gl-450 libnvidia-ifr1-450 nvidia-driver-450
The following NEW packages will be installed:
  libnvidia-gl-450:i386
0 upgraded, 1 newly installed, 3 to remove and 0 not upgraded.
Need to get 17.2 MB of archives.
After this operation, 147 MB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.

and

$ sudo apt-get install libnvidia-gl-450:i386  nvidia-driver-450
Reading package lists... Done
Building dependency tree       
Reading state information... Done
nvidia-driver-450 is already the newest version (450.80.02-0ubuntu1).
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help resolve the situation:

The following packages have unmet dependencies:
 libnvidia-gl-450 : Breaks: libnvidia-gl-450:i386 (!= 450.80.02-0ubuntu1) but 450.80.02-0ubuntu0.20.04.2 is to be installed
 libnvidia-gl-450:i386 : Breaks: libnvidia-gl-450 (!= 450.80.02-0ubuntu0.20.04.2) but 450.80.02-0ubuntu1 is to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
Kkeysmashes 2020-11-09 github

it might be possible to coax apt into finding a solution it's happy with, if you tell it the version of libnvidia-gl-450 and libnvidia-gl-450:i386 you want to end up with, but it may also be possible that this just doesn't work any more. looking at apt policy libnvidia-gl-450 and apt policy libnvidia-gl-450:i386 will probably be helpful.

Ggwindes 2020-11-20 github

It appears at this time with CUDA 11 (which require nvidia drivers 455) that you can't run steam due to the nonexistent 32bit runtime required. Is that correct?

Ppayalord 2020-11-20 github

@gwindes i was able to find 32-bit lib drivers for 450 version while i have CUDA 11 too. On my CentOS 8. And steam works fine now.

Ggwindes 2020-11-20 github

@payalord did it uninstall the 64bit libraries as part of that? On Linux Mint 20 (Ubuntu 20.04) when I install the 32bit drivers it uninstalls CUDA 11. Others seem to have that same issue in this thread.

Looking at the graphics-drivers PPA looks like drivers 455 are coming soon: https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-455/+bug/1902093
They've been built but doesn't look included in the PPA just yet. So hopefully that will fix things :crossed_fingers: so CUDA 11 doesn't get uninstalled and allow the 32bit runtime as well as 64bit runtime as others have mentioned the graphics-drivers PPA builds seem to support that.

Ppayalord 2020-11-20 github

@gwindes no on my centos 8 both 32 bit and 64bit now installed fine along with functional CUDA 11 as i know.

CCreationTribe 2020-12-02 github

Can Steam switch to 64-bit instead of 32-bit to fix this issue?

While it would avoid this particular error, any game that's also using 32-bit binaries (and that's likely going to be a lot if not all of of them?) is going to fail in the same manner. This is really a bug in NVIDIA's packaging.

Couldn't Steam build a 32-bit VM into the package solely for those games?
It appears that a lot of 32-bit support is getting fully dropped. Including *buntu. I think, going forth from 20.04, the *buntu platforms will no longer support 32-bit machines. It's only a fair shake away from dropping 32-bit libraries as well. Then we will have to run a VM; so why not start including it now?
Just my 2 cents. Because this is lame. Moving versions around and spending hours on hacky implementations really isn't something I can do too easily. I've tuned everything for Rapids / CUDA development for my current system with bleeding edge drivers. Dropping back to 410 would be more than painful for me.

SSamanthaClarke1 2020-12-03 github

@ikmckenz Hey, you haven't upgraded from a previous version of ubuntu in the past, have ya?

Basically, from what I'm guessing (since it was the case for me) you have other repos that gave you a newer version of nvidia-drivers-450 (455 in my case), and the i386 doesn't match up. Check out the apt policy of both of em, and try to find a matching version. Might need a driver reinstall but thats a small price :)

Rryandgoldenberg1 2020-12-19 github

Is there a fix for Ubuntu 20.04 with Cuda 11.2 - driver version 460? I don't see the package libnvidia-gl-460:i386

Xx2eliah 2020-12-30 github

@ryandgoldenberg1 The 460 driver is still in beta; the runfile seems to come with 32-bit libraries, but you need to have the i386 architecture added (dpkg --add-architecture i386), libglvnd-dev and at least libc6:i386 installed, + possibly also libxtst6:i386 libxrandr2:i386 libgtk2.0-0:i386 libsm6:i386 libpulse0:i386 ffmpeg:i386. Once those are on your system, a clean install of the 460 beta driver from runfile, including the 32 bit libraries, followed by a clean steam install from apt should work. (at least it seems to work for me so far; I could not say whether all of the above :i386 libs are needed or just the libc6:i386 is enough; for my system, the key was to install the 460 beta driver after all the i386 libs.).

CCreationTribe 2021-01-30 github

For everybody who uses CUDA for development or any other platform/hardware intensive GPU applications; I'd like to share a "fix" (if you want to call it that) that has allowed me to both run Steam and run CUDA11.x with the 460.x.

STEP 1: Get rid of everything CUDA/NVIDIA

# apt remove and purge everything cuda / nvidia
sudo apt remove --auto-remove --purge "*cuda*" "cublas*" "nsight*"
sudo apt remove --auto-remove --purge "*nvidia*"
sudo apt-get autoclean

# update mlocate database and run separate searches for nvidia and cuda
sudo updatedb
sudo mlocate cuda
sudo mlocate nvidia

# remove any additional leftover configuration files and/or directories as you see fit 

STEP 2: Download the latest video card driver from NVIDIA
After download is complete, logout of your session and kill any other sessions that would be using the video driver, aka: that have an active desktop running (don't shut down - just logout)

STEP 3: Open a new TTY session
Ctl+Alt+F3 for TTY3
login through the shell and install the new NVIDIA driver
PREEMPTIVE NOTE!: When the NVIDIA installer asks you if you want the 32bit binaries installed along with the 64s, YOU SAY YES!!!

chmod 777 NVIDIA-Linux-x86_64-460.39.run
./NVIDIA-Linux-x86_64-460.39.run

STEP 4: Prep and install the "Docker + DevEnv" container from NVIDIA's RAPIDS getting started page: https://rapids.ai/start.html
Or - if you're running the latest Docker, and you're ok with all RAPIDS 0.17 packages with BlazingSQL on Ubuntu 18.04 with Python 3.8 and CUDA 11.0 ... then just run this:

docker pull rapidsai/rapidsai-dev:0.17-cuda11.0-devel-ubuntu18.04-py3.8
docker run --gpus all --rm -it -p 8888:8888 -p 8787:8787 -p 8786:8786 \
    rapidsai/rapidsai-dev:0.17-cuda11.0-devel-ubuntu18.04-py3.8

If you're using docker-nvidia2 or docker ce 18, replace 'docker run --gpus all' with 'docker run --runtime=nvidia'

STEP 5: Enjoy the fact that you can now run Steam on your machine and a docker container that's capable of running your GPU metal with cutting edge CUDA and RAPIDS dev framework at the same time without a single dag-nippin' problem.

So hey, rock on us! :)

DDessix 2021-01-31 github

Another workaround I found was (for -460 in this example), in a new directory:
apt show libnvidia-gl-460:amd64

Then copy the value of Version, in my case 460.32.03-0ubuntu1.
Using that version, take off everything beyond the - and type apt download libnvidia-gl-460:i386=460.32.03- and press tab to autocomplete the available version, in my case it came up as 460.32.03-0ubuntu0.20.04.1, so I run:
apt download libnvidia-gl-460:i386=460.32.03-0ubuntu0.20.04.1

dpkg-deb -R ./libnvidia-gl-* ./unpacked

Edit ./unpacked/DEBIAN/control and remove the Conflicts line and, if present, libnvidia-gl or similar from the Replaces line. Update the Version line to match the one you got from libnvidia-gl-460:amd64.

dpkg-deb -b unpacked ./libnvidia-gl-noconflict.deb

sudo dpkg -i ./libnvidia-gl-noconflict.deb

sudo apt install -f

A word of warning, this will cause your apt to be confused about this package, but you can always dpkg -r libnvidia-gl-460:i386 and apt install -f to fix it in the future.

Ttrappedinspacetime 2021-02-21 github

Just an idea, there is multiarch support on debian.

      dpkg --add-architecture i386 
      apt update

Then try to install it.
https://wiki.debian.org/Multiarch/HOWTO

TT3sT3ro 2021-02-21 github

Just an idea, there is multiarch support on debian.

      dpkg --add-architecture i386 
      apt update

Then try to install it.
https://wiki.debian.org/Multiarch/HOWTO

Probably won't work, because driver and libs versions get messed up when cuda repo is in the system. In my case on 20.04 installing :i386 disabled the driver and prevented :amd64 from being installed. Purging cuda along with it's repository makes it possible to install both architecture's libs again, but now you can't use CUDA :|. I think the cleanest workaround right now is proposed by @CreationTribe by using Rapids docker image for now.

TTimSC 2021-04-28 github

I don't like installers spewing files all over my file system, so I used the approach described by @CreationTribe in a VirtualBox VM, installed the driver there and copied only the necessary files to my real system. Now I have CUDA (installed from the Nvidia repository) and Steam working on driver 465.19.01!

I put the binaries in a repository <Link removed by moderator> ... they need to be copied to /usr/lib32

In fact, the appropriate files can be obtained by using the extract only option provided by the installer e.g. ./NVIDIA-Linux-x86_64-460.73.01.run -x

This is probably safer than installing libraries not from official sources. The appropriate files seem to be:

/usr/lib32/libEGL*
/usr/lib32/libGLESv*
/usr/lib32/libGLX*
/usr/lib32/libnvidia-egl*
/usr/lib32/libnvidia-gl*
/usr/lib32/libnvidia-glcore*
/usr/lib32/libnvidia-tls*

Kkisak-valve maintainer 2021-04-28 github

Hello @TimSC, the repo you linked is legally problematic and has been removed. See section 2.1.3 at https://www.nvidia.com/content/DriverDownload-March2009/licence.php?lang=us.

TTimSC 2021-04-28 github

Improved instructions:

I have CUDA (installed from the Nvidia repository) and Steam working on driver 465.19.01! The appropriate files can be obtained by using the extract only option provided by the installer e.g. ./NVIDIA-Linux-x86_64-465.19.01.run -x

The i386 library files are in a folder named "32". This is probably safer than installing libraries not from official sources. The appropriate files seem to be:

/usr/lib32/libEGL*
/usr/lib32/libGLESv*
/usr/lib32/libGLX*
/usr/lib32/libnvidia-egl*
/usr/lib32/libnvidia-gl*
/usr/lib32/libnvidia-tls*

Obviously, the library files have to match the installed driver version. There are some symlinks that should be created:

cd /usr/lib32
sudo ln -s libEGL_nvidia.so.465.19.01 libEGL_nvidia.so.0
sudo ln -s libGLESv1_CM_nvidia.so.465.19.01 libGLESv1_CM_nvidia.so.1
sudo ln -s libGLESv2_nvidia.so.465.19.01 libGLESv2_nvidia.so.2
sudo ln -s libGLX_nvidia.so.465.19.01 libGLX_indirect.so.0
sudo ln -s libGLX_nvidia.so.465.19.01 libGLX_nvidia.so.0

You will probably need to run this for the system to detect the new libraries:

sudo ldconfig
Mmkrupczak3 2021-04-28 github

Hello @TimSC, the repo you linked is legally problematic and has been removed. See section 2.1.3 at https://www.nvidia.com/content/DriverDownload-March2009/licence.php?lang=us.

😿

Keep fighting the good fight

TTimSC 2021-05-03 github

@forest-hermit Sorry to hear that. I must have missed a step... A guess you are getting the GLXBadContext error if you start steam in a terminal?

Fforest-hermit 2021-05-03 github

@forest-hermit Sorry to hear that. I must have missed a step... A guess you are getting the GLXBadContext error if you start steam in a terminal?

Sorry, was my fault, your instructions are perfect, I had two ultra dumb moments, first I downloaded a slightly different driver version, and the second try I copy paste your commands for link creation without checking your driver version was also different to mine. So hurried to delete my comment but was too late.

Thank you very much.

GG-Francio 2021-06-03 github

First of all, thank you for the solution! I had to make an additional step in order to make it work, that is adding to my libc.conf the path to the 32bit files mentioned in @TimSC comment and then sudo ldconfig. Not my idea, see here (different problem but same solution): https://askubuntu.com/questions/313173/why-are-my-32bit-opengl-libraries-pointing-to-mesa-instead-of-nvidia-and-how-do

Bbeew 2021-06-03 github

It seems that 32 bit support works as long as you install the nvidia driver in any way other than through Nvidia's cuda repository. There are many ways to do that: Ubuntu's standard repository, graphic driver ppa, the stand alone .run file and similar for other Linux distros, so no need to go through some obscure hacks. I don't recommend the cuda repo anyway since downstream (e.g tensorflow) always lags behind nvidia's release so almost every cuda update will break something, I would rather be in control of when to upgrade cuda then leaving it to nividia (you can apt pin but you have to pin many packages and selectively upgrade but soon your sources may be out of sync, too ugly and complicated to maintain)

My setup is to install cuda locally with the tar file and then install the graphic driver from the graphic driver ppa. Everything works.

Mmkaskov 2021-06-04 github

Usually, I used to install 460 drivers through the repository developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 and there was no i386 support.
Today I install it through repository http://ru.archive.ubuntu.com/ubuntu and both amd64 and i386 were automatically installed and worked.

SSigtechnica 2021-07-26 github

@ mkaskov had the same issue with the 470 series, removing the cuda repo (temporarily?), then reinstall the drivers, it worked

Bbluszcz 2021-07-31 github

How to make it work with CUDA drivers:

Download the i386 deb package:

apt download libnvidia-gl-470:i386

decompress downloaded file, and from the archive copy everything from:

usr/lib/i386-linux-gnu

into:

~/.steam/ubuntu12_32

Here Screenshot how I did it with mc program:

image

Kkisak-valve maintainer 2021-07-31 github

Hello @bluszcz, that's going to be very brittle. The nVidia proprietary driver requires that the running kernel module, 32 bit userspace libraries, and 64 bit userspace libraries have exactly the same version to work properly. Most of the time, nVidia bundles a different driver version with their CUDA driver bundle than is in the mainline release. It's a rare coincidence that the Ubuntu repositories have the same version as the CUDA PPA.

Bbluszcz 2021-07-31 github

Hello @kisak-valve, yes, this is not a permanent solution, and yes, it assumes that packages are available.

However, this works with this assumptions, when comparing to apt install libnvidia-gl-470:i386 which removes cuda driver.

Actually, with apt pinnnig it can be a permanent solution ;)

Bbeew 2021-08-01 github

Hello @kisak-valve, yes, this is not a permanent solution, and yes, it assumes that packages are available.

However, this works with this assumptions, when comparing to apt install libnvidia-gl-470:i386 which removes cuda driver.

Actually, with apt pinnnig it can be a permanent solution ;)

Actually you don't have to install the driver from the cuda repo. Install it from a number of apt repos ( Ubuntu standard repo, graphic driver ppa, even system 76's ppa , which I think would work even if you don't have a system76 computer) All of these versions support 32 bits. Then install CUDA in your home with Nvidia's install script (you can skip the driver) and symblink to /usr/local/cuda as explained in the documentation.

Problem solved.

I don't understand why people have to twist themselves into a pretzel for this.

TTimSC 2021-08-02 github

@beew Sometimes CUDA depends on a driver version that is not in the standard apt repo. It depends on the whims of Nvidia.

Bbeew 2021-08-02 github

Sometimes CUDA depends on a driver version that is not in the standard apt repo. It depends on the whims of Nvidia.

I never encountered that situation. If you install cuda without the driver (it is only possible if you install with the install script of course, with .deb this won't work) it would complain that your installation is incomplete after the install, or prompt you to install its driver and remove yours. Just ignore them. Cuda works.

Yes, in order to support cuda version x you need a driver with version >= y etc, but you can find the high enough version usually in the graphic driver ppa if the official ubuntu repo doesn't have it. In my experience (I used to use Nvidia's cuda repo) the cuda repo's driver version is lower than the graphic driver ppa's. AFAIK the driver version will never be too high, it only causes problems if it is too low so there is no problem. In any case using bleeding edge cuda is probably a bad idea as it usually breaks things downstream (e.g tensorflow)

Ddchapman1988 2021-08-14 github

Replying to https://github.com/ValveSoftware/steam-for-linux/issues/5778#issuecomment-890391987

This seems to be a solution. Also just running sudo apt install libnvidia-gl-470:i386 could work. It did for me at least.

Rrobelgeda 2021-08-14 github

How is this issue still active! Can the maintainers please fix this issue or tell us how to fix it ☠️

Ddmgolembiowski 2021-08-26 github

@gachiemchiep Thanks! I just tried it as well and it works :)

For anyone finding this issue in despair, here's what I did:

# get rid of the packaged thingies
sudo apt purge nvidia\*
sudo apt purge cuda\*

then go to the official CUDA toolkit download page, get the local runfile, and follow the manual for installing. I didn't follow the blog posted above because I need CUDA 10.0, but it was all simple. The steps are basically:

  1. remove existing nvidia drivers
  2. install dependencies
  3. disable nouveau
  4. reboot & run sudo init 3
  5. install sudo ./cuda-....run
  6. sudo reboot
  7. profit :)

Please do not run these steps blindly!

Bbeew 2021-08-27 github

Replying to https://github.com/ValveSoftware/steam-for-linux/issues/5778#issuecomment-906808573

You don't need to install the driver if you install cuda with the local installer. It is a lot easier to install the driver from Ubuntu's repository or the graphic driver ppa and then run the local installer for cuda and don't install a driver. I said that it works from n posts ago and I don't know why peoplle are still struggling with this with complex workarounds.

Ddmgolembiowski 2021-08-27 · hidden on GitHub github

Replying to https://github.com/ValveSoftware/steam-for-linux/issues/5778#issuecomment-906808573

You don't need to install the driver if you install cuda with the local installer. It is a lot easier to install the driver from Ubuntu's repository or the graphic driver ppa and then run the local installer for cuda and don't install a driver. I said that it works from n posts ago and I don't know why peoplle are still struggling with this with complex workarounds.

https://youtu.be/evthRoKoE1o

Mmkrupczak3 2021-08-27 github

+1 for using the Ubuntu "software and updates" utility for managing drivers

I can switch between various driver versions with ease. Works much better than NVIDIA's Linux install scripts

Also why I'm sticking with Ubuntu in the near future. NVIDIA's driver support is first class with this distro, not so much for most others

Bbluszcz 2021-10-14 github

I don't understand why people have to twist themselves into a pretzel for this.

If it helps, drivers in Ubuntu are usually delayed when comparing to the ones available directly from NVIDIA. New versions improves stability (critical when you are using Blender Cycles with NVIDIA'a Optix ;) and sometimes performance as well <3

Cheers.

Bbeew 2021-10-14 github

I don't understand why people have to twist themselves into a pretzel for this.

If it helps, drivers in Ubuntu are usually delayed when comparing to the ones available directly from NVIDIA. New versions improves stability (critical when you are using Blender Cycles with NVIDIA'a Optix ;) and sometimes performance as well <3

Cheers.

Actually the graphic driver ppa is always up to date.

Morever the most update cuda from Nvidia's cuda repository almost always breaks downstream compatibility (e.g tensorflow, pytorch etc) and it is the opposite to stability. If you don't use cuda then you don't have to worry about it but then you if you do it is all the more reason not to install from Nvidia's repo which always pushes the newest version.

Bbluszcz 2021-10-27 github

Actually the graphic driver ppa is always up to date.

lol.

Nvidia has 470.82, PPA has 470.74.

In PPA i do not see 495.

This gets funny dude.

Bbeew 2021-10-27 github

I wouldn't twist myself to a pretzel for a minor version update. I am sure quite a few people looking for a solution would agree. If you want to tear your hair out be my guest. LOL

TTimSC 2021-10-27 github

@beew Moving from 470 to 495 isn't a minor version update.

Bbeew 2021-10-29 github

470.87 is just pushed to the graphic driver ppa today. It is also in the pop!_os ppa and you don't need a system76 computer or running pop!_os to install it, as already noted above. Is waiting a few days so big a deal?

I am not sure why it is important to get 495 the first moment it is released, 470 is the production branch and 495 is the 'new feature branch', it will probably be available in the ppa in due time. If you are eager to test new features at the cost of breaking your system then you are supposedly a pro and can always install with the .run file so stop complaining that you can't do it the easy way.

I could be wrong, but the biggest new feature for 495 is wayland support. There are still tons of things that you can't do on Wayland and the only DE that provides full wayland support is gnome. I am not going to ditch x for my working machines any time soon so Wayland support is quite secondary for me that this point. I am fairly sure that I am not alone on this.

TTimSC 2021-10-29 github

So we have established that the Ubuntu PPA is sometimes behind the Nvidia repository for drivers.

@beew I might need to install a version that is newer than the Ubuntu PPA because sometimes the CUDA in the Nvidia repository requires a driver that is only in the Nvidia repository (or available in the binary installer). Yes, I'm aware that you have not encountered that situation.

For example, CUDA 11.5 in the Nvidia repository depends on driver 495.29 (at least as far as the repository packages are concerned, at the time of writing) Of course, installing CUDA or drivers from a local binary source allows more flexibility (as you pointed out beew).

Ggwindes 2021-10-29 github

Decided to try my hand at this again a year later.

I recently updated the drivers to 495.29.05 and CUDA to 11.5 as the GA release of Python CUDA is something I'd like to utilize more. I utilized the installer here (Ubuntu): https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=20.04&target_type=deb_local

My understanding is since 495.x isn't available via package manager and it would have to match the drivers exactly from Nvidia that I would need to find the i386 version of 495.29.05 in order to try and get this to work.

Does anyone know if nvidia packages i386 drivers with their installer at all? If so where might be able to find them? I'm thinking about attempting @bluszcz solution https://github.com/ValveSoftware/steam-for-linux/issues/5778#issuecomment-890391987 despite being brittle seems like it's the only way possible if you're looking to use the latest toolkit.

A potential different solution would be to not use the packaged driver version of 495 and instead downgrade to 470 and install the 470:i386 driver too. Seems like it may be possible given CUDA 11.5.x has a minimum driver version of 450.80.02 re: https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html

Looks like 495 will be getting added to Ubuntu soon. Maybe if this gets added we can utilize the drivers from the ppa.
https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-495/+bug/1948025

Bbeew 2021-10-29 github

@gwindes

Cuda 11.5 doesn't require driver 495, anything >= 450.80.02 would work, so 470 is definitely sufficient. https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html. The 495 requirement is an artifact of Nvidia's packaging, just like the missing 32 bit support from the driver installed from Nvidia's cuda deb repo. That's why I don't use it.

Your can install cuda 11.5 locally (without sudo) with the .run file without installing the driver (assuming you already have 470 or something sufficiently high installed)

Installing cuda locally is optimal actually because this way you can keep multiple versions of cuda and switch by just making symlinks and installing cuda locally is definitely not harder than the "brittle solution" that is, well, brittle.

I don't know what you use pycuda for but I use these for ML and neither tensorflow nor pytorch support cuda 11.5 so for me it is useless (so if I were using the cuda repo it will break everything by upgrading cuda to 11.5 even if I don't care about 32 bit support)

Only the Nvidia drivers packaged in its cuda repo are missing 32 bit support. 32 bit support is present if you get the drivers through any other means (ppas, the run file, standard repo) So like I said, I don't really understand why people are having such a hard time.

Vvcarlosrb 2021-11-13 github
Kkisak-valve maintainer 2022-05-25 github

Manual inspection of the newer Ubuntu LTS folders at https://developer.download.nvidia.com/compute/cuda/repos/ reveals that NVIDIA has started building libnvidia-gl-###:i386 packages in their third party repositories for the 510 series driver and newer.

Any further repo issues should be directed as the repo maintainers.