Apt install nvidia-driver-550 goes to 580 now?

Hi all,

I was going through my usual updating bit through the Software & Updates app on 17.3 core, but it updated my Nvidia driver to 580 instead of keeping it at 550, and 580 seems to have the same problems on my laptop's RTX 4070 as version 570 had (switching desktops/workspaces makes a game window screen go black sometimes).

I thought, "No problem, I'll just reinstall 550 again," so I did the usual apt purge nvidia stuff, but I ran into the strangest thing:
sudo apt install nvidia-driver-550 tries to install the nvidia-driver-580 instead.

Does anyone have any idea why it would redirect to 580, or how to make it really get 550 instead?

Thank you.

That really is strange.

Maybe a remaining file is causing the issue.
Can you purge all Nvidia first:
sudo apt remove --purge '^nvidia-.*' '^libnvidia-.*'

Then run

sudo apt install nvidia-driver-550 nvidia-dkms-550

and see if it works properly?

Hi Aravisian,

I tried the purge you suggested with the regular expressions just in case something was left from my attempt (including a separate sudo apt autoremove), but nothing extra was removed.

Unfortunately, trying to install the 550 driver at the same time as the 550 dkms just showed 580 for dkms as well.

So weird..

I just tested this and:

sudo apt install nvidia-driver-550 nvidia-dkms-550                                             ─╯
[sudo] password for mech-1: 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following package was automatically installed and is no longer required:
  nvidia-firmware-580-580.65.06
Use 'sudo apt autoremove' to remove it.
The following NEW packages will be installed:
  nvidia-dkms-550 nvidia-driver-550
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 22.2 kB of archives.
After this operation, 65.5 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 nvidia-dkms-550 amd64 550.163.01-0ubuntu0.24.04.2 [11.1 kB]
Get:2 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 nvidia-driver-550 amd64 550.163.01-0ubuntu0.24.04.2 [11.1 kB]
Fetched 22.2 kB in 1s (27.7 kB/s)            
Selecting previously unselected package nvidia-dkms-550.
(Reading database ... 442370 files and directories currently installed.)
Preparing to unpack .../nvidia-dkms-550_550.163.01-0ubuntu0.24.04.2_amd64.deb ...
Unpacking nvidia-dkms-550 (550.163.01-0ubuntu0.24.04.2) ...
Selecting previously unselected package nvidia-driver-550.
Preparing to unpack .../nvidia-driver-550_550.163.01-0ubuntu0.24.04.2_amd64.deb ...
Unpacking nvidia-driver-550 (550.163.01-0ubuntu0.24.04.2) ...
Setting up nvidia-driver-550 (550.163.01-0ubuntu0.24.04.2) ...
Setting up nvidia-dkms-550 (550.163.01-0ubuntu0.24.04.2) ...

I am not able to replicate this. Can you check your sources?

Here are my sources. They ought to be completely unchanged from Zorin 17.2 (pre-Brave).

Hmmm... I am on Zorin OS 18, not 17, so I am in the Noble repositories.

I wonder if there is an error in the Jammy repos.

As a 550 fan, that would be pretty bad for me and my very picky laptop GPUs.

Any way to check? Or, any way around it?

You are not alone:
https://www.reddit.com/r/linux_gaming/comments/1oak91x/having_issues_getting_nvidiadriver_550_on_pop_os/

I think this is either an error in metadata or the 550 dummy package in Jammy.

If you run

apt show nvidia-driver-550

I see

Version: 550.163.01-0ubuntu0.24.04.2
Priority: optional
Section: restricted/libs
Source: nvidia-graphics-drivers-550
Origin: Ubuntu
Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 32.8 kB
Depends: nvidia-driver-580

Note the Depends: nvidia-driver-580

What does nvidia-smi output?

1 Like

Hi again,

I've been trying to see what causes the 580 driver to crash in the meantime.

I think it is most unstable after starting a game and switching workspaces, but only after coming out of a Suspend. It does still crash/freeze sometimes though, like when I opened GIMP to save a screenshot for this post.

As for the terminal commands:

does output:
Depends: nvidia-driver-580

Regarding sources, make sure you have your downloads set to "Main Server."

Zorin OS 17 should not be deprecated yet, as it receives updates till 2027. And I'm pretty sure Nvidia has not deprecated their early 500 series driver sets. As you can see in my screenshot, I still have 550, but I'm on OS 16.

FYI, Nvidia 580, is the latest driver release for Linux. When a new driver is installed, you have to go into Nvidia X Server Settings APP, and select Prime Profiles, and set it for Performance, then reboot the PC.

PS: Make sure your using the proprietary Nvidia driver, not open, not tested, not server.



Morning,

apt list --installed | grep 550

I noticed that trying to install 550 does install specifically nvidia-driver-550 alongside the entirety of 580: none of the other important 550 versions of the dependencies. apt does install the entirety of the 580 dependencies (stuff like libnvidia-gl-550 is left out, but 580 is in).

I'm not sure if this is only after switching from the US server to the Main Server, but apt show nvidia-driver-550 had an extra package that I could display with the -a flag: it was a slightly older version of 550 that didn't list 580 as its only dependency (and correctly lists its 550 dependencies).

Unfortunately, it seems like trying to install that specific version doesn't work out on its own:
sudo apt install nvidia-driver-550=550.144.03-0ubuntu0.22.04.1

It gives the unmet dependencies errors, not over 580, but because apt is trying to get the newer version of the other 550 packages, which are incompatible.

Maybe I could try a manual install of all of the old version packages at once xD. I guess it wouldn't matter too much since a purge regex would still target them.

I'd hit a similar situation with trying to ignore 580 dependencies and installing each new 550 package manually, but the OS would probably squawk about missing 580 dependencies ad infinitum.

I'll try a manual old version install (appending the =version to the end of every package) and get back to you.

Edit: This is so silly. xD

Took me a hot minute, but it worked!
One apt install to rule them all, one old version to bind them.
sudo apt install nvidia-driver-550=550.144.03-0ubuntu0.22.04.1 nvidia-dkms-550=550.144.03-0ubuntu0.22.04.1 nvidia-kernel-source-550=550.144.03-0ubuntu0.22.04.1 nvidia-kernel-common-550=550.144.03-0ubuntu0.22.04.1 libnvidia-gl-550=550.144.03-0ubuntu0.22.04.1 libnvidia-compute-550=550.144.03-0ubuntu0.22.04.1 libnvidia-extra-550=550.144.03-0ubuntu0.22.04.1 nvidia-compute-utils-550=550.144.03-0ubuntu0.22.04.1 libnvidia-decode-550=550.144.03-0ubuntu0.22.04.1 libnvidia-encode-550=550.144.03-0ubuntu0.22.04.1 nvidia-utils-550=550.144.03-0ubuntu0.22.04.1 xserver-xorg-video-nvidia-550=550.144.03-0ubuntu0.22.04.1 libnvidia-cfg1-550=550.144.03-0ubuntu0.22.04.1 libnvidia-fbc1-550=550.144.03-0ubuntu0.22.04.1 nvidia-settings nvidia-prime

I noticed that the Software Updater immediately wanted to "upgrade" to 580 again, so I also ran:
sudo apt-mark hold nvidia-driver-550

It works, but I feel like I don't know enough to know whether this is dumb or a decent workaround till the jammy package server metadata gets sorted (I don't know the differences between the sub 550 versions of 144 and 163, etc).

This error feels weirdly intentional though: like a lot of packages were adjusted to have their corresponding 580 version as a dependency. 550-open, the dkms, the other trove of dependencies.

If anyone knows a newer version of 550 I can manually target without the 580 dependency, that'd be great. 144.03 was just the one that I could easily discern from apt show.

Edit: Well, dang, I think it is intentional:

+nvidia-graphics-drivers-550 (550.163.01-0ubuntu0.22.04.2) jammy; urgency=medium
+
+ * Release transitionals to 580 (LP: #2125411)
+ -- Kuba Pawlak kuba.pawlak@canonical.com Mon, 22 Sep 2025 16:38:55 +0200

1 Like

They got rid of the old versions now too. RIP 550.

Used dpkg-repack to get all of the newer 550 drivers from a computer that wasn't yet forsaken by Ubuntu, installed those .debs with dpkg, marked all of them.

Janky, but a solution to getting the final version of new 550 drivers (163) Ubuntu had shipped without adding any repos.

1 Like

I just wonder why your 4070 prefers an older driver than the 580. What is Nvidia doing over there?
Are they so hung up on bolstering ChatGPT in order to boost their chip sales, they laid off their coding department?

1 Like

I don't know, but I wouldn't be surprised if they were trying to use the attempt at "AI" to make their drivers.

The MSi laptop from which I was able to repack the 550 version had a 3080 ti and basically the same problems with the 570 version a few months back.

1 Like

This isn't what you want, but it may prove to be of use to you. I'm not sure how janky the repackaging you did is, but installing from the original .run may be less janky, albeit more involved, and Nvidia has their Linux drivers back to 2003:

You can find instructions for installation here:

Take particular note, if you try this, of the requirement to upgrade Zorin's version of gcc. I'm not sure what 18 ships with, but 17.3 definitely ships with a version too old.

Pros:

  • Total control over which driver version you use, as the .run is disconnected from any kind of update.
  • Easier personal archival in case of... well, what you've run into already.
  • Lower risk of packaging issues* (uncommon, but I've got a thread around here somewhere that no one could solve which turned out to be a packaging issue on Canonical's side) I'm basing this assertion on the simple fact that it's gone through fewer hands--fewer steps means fewer opportunities for failure.

Cons:

  • Entirely manual. You can't just unmark and sudo apt update. You'll have to get the new .run installer and go through the whole process each time.
  • Potentially worse integration with Zorin. I've had fewer problems since switching to Nvidia's .run packages, but even the Nvidia installer warns that distro provided packages may work better.
  • Possible headaches if you're using a non-default kernel. (I have to jump through loopholes to use the .run package because I also use the Xanmod kernel. If you don't, this shouldn't apply.)
  • No APT provided safety rails. The .run installers include an --uninstall argument, but none of APT's features are available.

In the event that you try a .run installer, I STRONGLY recommend choosing the MIT/GPL license option when you get the choice between that and proprietary. I've had issues using the proprietary version with both the packaged drivers and .run installers.

1 Like

Great to know!

I was definitely worried about how I'd handle moving between distro versions in 2027.

For now, I'll stick with my janky dpkg, because there won't be more versions of 550 (even from Nvidia), but when I finally move to 18, this'll be my go-to move (unless Nvidia's re-figured out how to "driver").

Are the run files independent of distro version (i.e., Ubuntu 22/24) because they are manually compiled by gcc?

Thanks!

That's my understanding, but you'll likely want to check and see if other distributions have differing instructions for preparing to use the .run. At a minimum, if the distro isn't Debian based, you'll need the relevant package manager's commands to remove any packaged drivers. I haven't personally tried this on other distributions, but I'd be pretty comfortable giving it a shot on any Debian based, at least.

Thanks for clarifying.

I'll probably download the .run in advance (and check the hash) for the inevitable use later on.

Thanks a lot.

1 Like

Only the package maintainers can really speak to their motivations, but there was a security bulletin this month announcing several security vulnerabilities fixed in recent driver updates. Security Bulletin: NVIDIA GPU Display Drivers - October 2025 | NVIDIA

There were multiple fixed CVEs, with the highest on Linux being a 7.0 that potentially allowed privilege escalation. Fixes exist in the 580, 570, and 535 branches. 570 was the earliest that supported 50 series GPUs and was bad enough that even some Windows users reverted to 565, so for a user coming from 550, Ubuntu's graphics driver maintainer may have felt 580 was the better choice to get users off of affected drivers.

Not saying it was the correct course of action--I'm just saying this is a comprehensible motivation for what we've seen in the way of 550 being switched to 580.

(On second thought, tagging @Aravisian since I've seen him direct another user to this thread and if he's not still following, it's good to know, even if it's not mollifying.)