Steam for Linux

Steam for Linux

Steam on Ubuntu: dependencies issues while installing 32 bit Nvidia drivers
I managed to install steam on Ubuntu 24.04 LTS and the first time I started it there was an error message saying that I need the 32 bit drivers. Without the drivers no game launches. Steam recommended to launch the following commands:

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libnvidia-gl-570:i386



my current version of the drivers is:
~$ dpkg -l | grep nvidia-driver
ii nvidia-driver-570-open 570.133.07-0ubuntu0.24.04.1 amd64 NVIDIA driver (open kernel) metapackage

when I run the 3rd command listed before I get the following dependencies related error:

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
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 to resolve the situation:

The following packages have unmet dependencies:
dpkg : PreDepends: libmd0 (>= 0.0.0) but it is not installable
libcairo2 : Depends: libx11-6 but it is not going to be installed
Depends: libxcb-render0 but it is not going to be installed
Depends: libxcb-shm0 but it is not going to be installed
Depends: libxcb1 (>= 1.6) but it is not going to be installed
Depends: libxext6 but it is not going to be installed
Depends: libxrender1 but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

I tried to fix this but so far no luck.

I hope someone can help me out.
Last edited by crpz41; 8 Jul @ 2:45am
< >
Showing 1-15 of 22 comments
Zyro 8 Jul @ 3:10am 
Did you try already?
> sudo apt --fix-broken install

What does this say? (Might have to be installed and initialized first.)
> sudo apt-cache policy libmd0

Did you mess with your /etc/apt/sources.list?
crpz41 8 Jul @ 5:15am 
Originally posted by Zyro:
Did you try already?
> sudo apt --fix-broken install

What does this say? (Might have to be installed and initialized first.)
> sudo apt-cache policy libmd0

Did you mess with your /etc/apt/sources.list?
sudo apt --fix-broken install
[sudo] password for ****:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

sudo apt-cache policy libmd0
libmd0:
Installed: 1.1.0-2build1.1
Candidate: 1.1.0-2build1.1
Version table:
*** 1.1.0-2build1.1 100
100 /var/lib/dpkg/status
1.1.0-2build1 500
500 http://de.archive.ubuntu.com/ubuntu noble/main amd64 Packages


and final answer, I haven't touched sources.list file.
Last edited by crpz41; 8 Jul @ 5:16am
Zyro 8 Jul @ 5:21am 
Version table:
*** 1.1.0-2build1.1 100
100 /var/lib/dpkg/status
1.1.0-2build1 500
500 http://it.archive.ubuntu.com/ubuntu noble/main amd64 Packages

As far as I know that means there's a version installed for which the soruce is unknown?

With a known sourece, it should look along these lines (Debian example):

libmd0:
Installiert: 1.0.4-2
Installationskandidat: 1.0.4-2
Versionstabelle:
*** 1.0.4-2 500
500 http://deb.debian.org/debian bookworm/main amd64 Packages
100 /var/lib/dpkg/status

(So, two entries for the installed package, the status file and the source URL.)

The following (and everything else) without warranty!

You could try to do
> sudo apt install libmd0/1.1.0-2build1

... to at least sanitize this package.
Only accept it if it doesn't remove packages.

It looks to me like there was some... source mixing happening.
crpz41 8 Jul @ 5:32am 
Originally posted by Zyro:
Version table:
*** 1.1.0-2build1.1 100
100 /var/lib/dpkg/status
1.1.0-2build1 500
500 http://it.archive.ubuntu.com/ubuntu noble/main amd64 Packages

As far as I know that means there's a version installed for which the soruce is unknown?

With a known sourece, it should look along these lines (Debian example):

libmd0:
Installiert: 1.0.4-2
Installationskandidat: 1.0.4-2
Versionstabelle:
*** 1.0.4-2 500
500 http://deb.debian.org/debian bookworm/main amd64 Packages
100 /var/lib/dpkg/status

(So, two entries for the installed package, the status file and the source URL.)

The following (and everything else) without warranty!

You could try to do
> sudo apt install libmd0/1.1.0-2build1

... to at least sanitize this package.



Only accept it if it doesn't remove packages.

It looks to me like there was some... source mixing happening.

this is what I get:

sudo apt install libmd0/1.1.0-2build1
[sudo] password for ****:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package libmd0 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:
libmd0:i386

E: Release '1.1.0-2build1' for 'libmd0' was not found



sudo apt install libmd0:i386
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
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 to resolve the situation:

The following packages have unmet dependencies:
dpkg : PreDepends: libmd0 (>= 0.0.0) but it is not installable
libegl1 : Depends: libegl-mesa0 but it is not going to be installed
libgbm1 : Depends: mesa-libgallium (= 24.2.8-1ubuntu1~24.04.1) but it is not going to be installed
libice6 : Depends: libbsd0 (>= 0.2.0) but it is not going to be installed
libreoffice-base-core : Depends: libreoffice-core (= 4:24.2.7-0ubuntu0.24.04.4) but it is not going to be installed or
libreoffice-core-nogui (= 4:24.2.7-0ubuntu0.24.04.4) but it is not going to be installed
libxcb-image0 : Depends: libxcb-util1 (>= 0.4.0) but it is not going to be installed
libxcb1 : Depends: libxdmcp6 but it is not going to be installed
python3-uno : Depends: libreoffice-core (= 4:24.2.7-0ubuntu0.24.04.4) but it is not going to be installed or
libreoffice-core-nogui (= 4:24.2.7-0ubuntu0.24.04.4) but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
Last edited by crpz41; 8 Jul @ 5:36am
Zyro 8 Jul @ 5:55am 
Is it a fresh install? Would it be too much work to do a new installation, and issue dpkg --add-architecture i386 there early on?
Last edited by Zyro; 8 Jul @ 6:56am
crpz41 8 Jul @ 7:12am 
Originally posted by Zyro:
Is it a fresh install? Would it be too much work to do a new installation, and issue dpkg --add-architecture i386 there early on?

I just uninstalled steam. you mean removing nvidia drivers, adding i386 and reinstalling them?
I really hate nvidia drivers on linux. I upgraded to RTX50 series in March and I waited 3 months with nouveau drivers to wait some TESTED nvidia one to appear on the "additional drivers" list. The less I interact with them the better.
at best I can go back to nouveau, add i386 and then installing the same drivers I have from the list. I am not going to install anything other than the current ones I have, I don't want to brick the OS.

my computer has dual boot, if I want to play I can go to windows. in the past few days I wanted to give a chance to steam for linux but if it doesn't work I just prefer to stick to windows for gaming.
Zyro 8 Jul @ 8:10am 
Originally posted by crpz41:
Originally posted by Zyro:
Is it a fresh install? Would it be too much work to do a new installation, and issue dpkg --add-architecture i386 there early on?

I just uninstalled steam. you mean removing nvidia drivers, adding i386 and reinstalling them?
I really hate nvidia drivers on linux. I upgraded to RTX50 series in March and I waited 3 months with nouveau drivers to wait some TESTED nvidia one to appear on the "additional drivers" list. The less I interact with them the better.
at best I can go back to nouveau, add i386 and then installing the same drivers I have from the list. I am not going to install anything other than the current ones I have, I don't want to brick the OS.

my computer has dual boot, if I want to play I can go to windows. in the past few days I wanted to give a chance to steam for linux but if it doesn't work I just prefer to stick to windows for gaming.

Removing nvidia drivers, adding i386 and reinstalling them could be worth a try.

It really shouldn't be hard to install Nvidia drivers.
I once made a lengthy video to show just how easy it is. :)
https://www.youtube.com/watch?v=aS6mXW7KPoU
crpz41 8 Jul @ 8:49am 
Originally posted by Zyro:
Originally posted by crpz41:

I just uninstalled steam. you mean removing nvidia drivers, adding i386 and reinstalling them?
I really hate nvidia drivers on linux. I upgraded to RTX50 series in March and I waited 3 months with nouveau drivers to wait some TESTED nvidia one to appear on the "additional drivers" list. The less I interact with them the better.
at best I can go back to nouveau, add i386 and then installing the same drivers I have from the list. I am not going to install anything other than the current ones I have, I don't want to brick the OS.

my computer has dual boot, if I want to play I can go to windows. in the past few days I wanted to give a chance to steam for linux but if it doesn't work I just prefer to stick to windows for gaming.

Removing nvidia drivers, adding i386 and reinstalling them could be worth a try.

It really shouldn't be hard to install Nvidia drivers.
I once made a lengthy video to show just how easy it is. :)
https://www.youtube.com/watch?v=aS6mXW7KPoU


I did the following:
1. removing steam from GUI
2. removing nvidia drivers from GUI
3. sudo apt autoremove
4. rebooted the PC
5. added i386
6. installed nvidia drivers from GUI. the same I had before
7. sudo apt install libnvidia-gl-570:i386

but I still get the same dependencies related error.


my sources file is:
GNU nano 7.2 /etc/apt/sources.list.d/ubuntu.sources
Types: deb
URIs: http://de.archive.ubuntu.com/ubuntu/
Suites: noble
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Types: deb
URIs: http://security.ubuntu.com/ubuntu/
Suites: noble-security
Components: main multiverse universe restricted
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
Last edited by crpz41; 8 Jul @ 8:52am
Yoth 8 Jul @ 10:41am 
Originally posted by crpz41:
dpkg : PreDepends: libmd0 (>= 0.0.0) but it is not installable
libmd0 and libmd0:i386 should be available in the repo.

I see that you already enabled i386 multiarch.

Open the application menu and search "Software & Update". Enable all the package sources in the "Ubuntu Software" tab except "Source code". Also check if "Other Software" shows the entries: noble, noble-updates and noble-backports as well as main, restricted, universe and multiverse. Then run "sudo apt-get update && sudo apt-get install --fix-missing" and it should install what's required.

EDIT: Just ran it on a VM and it installed fine with those package sources:
"sudo apt-get install libnvidia-gl-570:i386 libnvidia-gl-570:amd64"
Last edited by Yoth; 8 Jul @ 10:59am
crpz41 8 Jul @ 11:13am 
Originally posted by Yoth:
Originally posted by crpz41:
dpkg : PreDepends: libmd0 (>= 0.0.0) but it is not installable
libmd0 and libmd0:i386 should be available in the repo.

I see that you already enabled i386 multiarch.

Open the application menu and search "Software & Update". Enable all the package sources in the "Ubuntu Software" tab except "Source code". Also check if "Other Software" shows the entries: noble, noble-updates and noble-backports as well as main, restricted, universe and multiverse. Then run "sudo apt-get update && sudo apt-get install --fix-missing" and it should install what's required.

EDIT: Just ran it on a VM and it installed fine with those package sources:
"sudo apt-get install libnvidia-gl-570:i386 libnvidia-gl-570:amd64"


$ sudo apt install libmd0:i386
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
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 to resolve the situation:

The following packages have unmet dependencies:
dpkg : PreDepends: libmd0 (>= 0.0.0) but it is not installable
libegl1 : Depends: libegl-mesa0 but it is not going to be installed
libgbm1 : Depends: mesa-libgallium (= 24.2.8-1ubuntu1~24.04.1) but it is not going to be installed
libice6 : Depends: libbsd0 (>= 0.2.0) but it is not going to be installed
libreoffice-base-core : Depends: libreoffice-core (= 4:24.2.7-0ubuntu0.24.04.4) but it is not going to be installed or
libreoffice-core-nogui (= 4:24.2.7-0ubuntu0.24.04.4) but it is not going to be installed
libxcb-image0 : Depends: libxcb-util1 (>= 0.4.0) but it is not going to be installed
libxcb1 : Depends: libxdmcp6 but it is not going to be installed
python3-uno : Depends: libreoffice-core (= 4:24.2.7-0ubuntu0.24.04.4) but it is not going to be installed or
libreoffice-core-nogui (= 4:24.2.7-0ubuntu0.24.04.4) but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.



sudo apt install libmd0
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libmd0 is already the newest version (1.1.0-2build1.1).
The following package was automatically installed and is no longer required:
libxau6:i386
Use 'sudo apt autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.



~$ dpkg-query -l | grep i386
ii gcc-14-base:i386 14.2.0-4ubuntu2~24.04 i386 GCC, the GNU Compiler Collection (base package)
ii libc6:i386 2.39-0ubuntu8.4 i386 GNU C Library: Shared libraries
ii libgcc-s1:i386 14.2.0-4ubuntu2~24.04 i386 GCC support library
rc libgl1-mesa-dri:i386 24.0.9-0ubuntu0.1 i386 free implementation of the OpenGL API -- DRI modules
ii libidn2-0:i386 2.3.7-2build1.1 i386 Internationalized domain names (IDNA2008/TR46) library
ii libnvidia-compute-570:i386 570.133.07-0ubuntu0.24.04.1 i386 NVIDIA libcompute package
ii libtinfo6:i386 6.4+20240113-1ubuntu2 i386 shared low-level terminfo library for terminal handling
ii libunistring5:i386 1.1-2build1.1 i386 Unicode string library for C
ii libxau6:i386 1:1.0.9-1build6 i386 X11 authorisation library
ii zlib1g:i386 1:1.3.dfsg-3.1ubuntu2.1 i386 compression library - runtime
Last edited by crpz41; 8 Jul @ 11:17am
Yoth 8 Jul @ 11:43am 
try:
sudo apt-get update && sudo apt-get install --fix-missing && sudo apt-get dist-upgrade

Then try installing again. If it still doesn't work you've manually configured to hold a package at a certain version and as such no updates can be applied.

You check held packages with:
apt-mark showhold

You can remove the hold with:
apt-mark unhold <package>
Last edited by Yoth; 8 Jul @ 11:47am
crpz41 8 Jul @ 12:15pm 
Originally posted by Yoth:
try:
sudo apt-get update && sudo apt-get install --fix-missing && sudo apt-get dist-upgrade

Then try installing again. If it still doesn't work you've manually configured to hold a package at a certain version and as such no updates can be applied.

You check held packages with:
apt-mark showhold

You can remove the hold with:
apt-mark unhold <package>


user@hello:~$ apt-mark showhold
user@hello:~$

so nothing on hold
Yoth 8 Jul @ 12:27pm 
This can only mean that your sources list is somehow borked. Try to remove everything from /etc/apt/sources.list and /etc/apt/sources.list.d/* that's not the main ubuntu repo. Then do "sudo apt-get clean && sudo apt-get update".

Also just in case you didn't follow my previous post:

Originally posted by crpz41:
my sources file is:
GNU nano 7.2 /etc/apt/sources.list.d/ubuntu.sources
Types: deb
URIs: http://de.archive.ubuntu.com/ubuntu/
Suites: noble
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Types: deb
URIs: http://security.ubuntu.com/ubuntu/
Suites: noble-security
Components: main multiverse universe restricted
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Suites: noble

should be

Suites: noble noble-updates noble-backports
Last edited by Yoth; 8 Jul @ 12:31pm
crpz41 8 Jul @ 1:07pm 
Originally posted by Yoth:
This can only mean that your sources list is somehow borked. Try to remove everything from /etc/apt/sources.list and /etc/apt/sources.list.d/* that's not the main ubuntu repo. Then do "sudo apt-get clean && sudo apt-get update".

Also just in case you didn't follow my previous post:

Originally posted by crpz41:
my sources file is:
GNU nano 7.2 /etc/apt/sources.list.d/ubuntu.sources
Types: deb
URIs: http://de.archive.ubuntu.com/ubuntu/
Suites: noble
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Types: deb
URIs: http://security.ubuntu.com/ubuntu/
Suites: noble-security
Components: main multiverse universe restricted
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Suites: noble

should be

Suites: noble noble-updates noble-backports


I just now realized to have the updates set on "security only". I selected all updates then launched: sudo apt-get update && sudo apt-get install --fix-missing && sudo apt-get dist-upgrade

I rebooted and "sudo apt install libnvidia-gl-570:i386" worked.

when I start steam I don't get any error message anymore.
I started a game that should work on linux (the finals) nad




Originally posted by Yoth:
This can only mean that your sources list is somehow borked. Try to remove everything from /etc/apt/sources.list and /etc/apt/sources.list.d/* that's not the main ubuntu repo. Then do "sudo apt-get clean && sudo apt-get update".

Also just in case you didn't follow my previous post:

Originally posted by crpz41:
my sources file is:
GNU nano 7.2 /etc/apt/sources.list.d/ubuntu.sources
Types: deb
URIs: http://de.archive.ubuntu.com/ubuntu/
Suites: noble
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Types: deb
URIs: http://security.ubuntu.com/ubuntu/
Suites: noble-security
Components: main multiverse universe restricted
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Suites: noble

should be

Suites: noble noble-updates noble-backports


finally I've been able to install the 32bit driver and steam doesn't complain anymore.
I downloaded the finals, which is supposed to run, and it compiles shaders but then it doesn't launch.
Yoth 8 Jul @ 1:29pm 
You have installed i386 opengl drivers, you're probably still missing vulkan drivers.
Check:
mesa-vulkan-drivers:amd64 mesa-vulkan-drivers:i386
< >
Showing 1-15 of 22 comments
Per page: 1530 50