Why manjaro ditches nvidia drivers upon global update?

Today I had to update the system. 250+ packages. Ok, no problem. I remembered I currently ran linux513 kernel.
But when pamac upgrade presented me a full list I noticed something odd:

It listed linux513-nvidia package for removal.

Ok, I thought for myself. I bet it will cause the system to not boot properly when I decide to reboot and sure thing I was right: lightdm failed to start and xorg showed (EE) error. I.e. cannot find displays.
What I did next is to install linux516 kernel, along with linux516-nvidia drivers. After that everything is working.

But the question still stands - why on earth does it think it’s a good idea to remove nvidia drivers for currently running and booting kernel? Do I miss something?
And I must add it happened multiple times before as well. I even started to fear global updates because of this very thing - fearing to see the message that “lightdm yet again failed to start” and xorg failing to find screens because for some reason drivers are no longer available.

Because kernel 5.13 is EOL. Do your research before posting :slight_smile:

1 Like

Sure, but why not update kernel as well?

And also it doesn’t warn or anything. And the internet is flooded with “why lightdm failed to start”, “why xorg blahblahblah after update” etc. I bet for this very reason.
So yeah - it is EOL, whatever. Why then it doesn’t get upgraded? And it just brings new pain to the users upon upgrade.

1 Like

It’s up to the user to change to a newer kernel version. If you had installed 5.15 (for example) before rebooting, this fault probably would not have occured.

1 Like

I understand your frustration but if you aren’t going to read the announcement threads before you update and don’t want to keep updating your kernel then it’s probably better to switch to a LTS kernel as these will not be dropped or removed for a couple of years at least and its one less thing to worry about

2 Likes

Manjaro does update the kernel, but only in the sense that the kernel version you’re using would be updated to a newer kernel of the same version.

So for instance ─ I’m going to use abstract numbers here ─ say that you’ve got 5.10.35 installed, and that 5.10.x has in the meantime received security updates and bug fixes and is now at 5.10.45, then your 5.10.35 will be replaced by 5.10.45, but it’ll still be a 5.10 kernel.

This way, the newer kernel will remain compatible with your hardware. If Manjaro were to replace your 5.13 kernel by 5.15 or 5.16, then that compatibility is not guaranteed anymore, and especially not for people who run proprietary network drivers or video drivers.

The update process does however warn you when a particular kernel branch becomes EOL and will urge you to update to a newer kernel version, or perhaps to fall back onto an LTS (“long-term-support”) kernel. 5.4, 5.10 and 5.15 are LTS kernels. 5.16 is not, but it is the current mainline kernel.

5 Likes

That’s not Linux’s nor Manjaro’s philosophy. You are master of your machine.

  • Want to keep old unsupported kernels? Fine!
  • Want LTS kernels only just like me? Also fine!
  • Want Experimental RC kernels and file bugs to the kernel team yourself? Also great!
  • Want kernels deleted automatically? Big no no because some people here are still running on 5.9 EOL because they want / need to, and that’s their choice!

Conclusion - Stick to a LTS kernel and forget about it (only for 2-3 years! though :wink:).

There was also a discussion to add a feature to automatically remove EOL kernels but it was declined:

4 Likes

The update process does however warn you when a particular kernel branch becomes EOL

Never seen it. Ofc. maybe because I miss it, but still.

Well then, I think another suggestion must be brought to the list. Clearly warning user that the kernel is out of support and he must upgrade to a newer one or switch to LTS.
With prompt dialog if possible, because yeah - this silent drivers removal for your current kernel while retaining the kernel running doesn’t seem like the way to go.

if you aren’t going to read the announcement threads before you update

I must point out that not all the users are gonna read the announcement thread just because they don’t know about. I will read it from now on ofc. but still.

and don’t want to keep updating your kernel

I’m ok about kernel updates.

There is indeed such a warning, but you probably missed it ─ it does scroll by pretty quickly.

In addition to that ─ I really do recommend this ─ it is also best to subscribe to notifications for the update announcements category. @philm always posts a warning there regarding when a kernel reaches EOL, and the second post of each announcement thread also highlights the gotchas and potential issues, together with how to work around them.

:arrow_down:

Here’s the second post from the most recent update announcement for Manjaro Stable. :arrow_down:

2 Likes

Sure thing. But yeah, this warning must be more clear then. With prompt dialogue if possible.

Best is to always wait with updating until the announcement has been posted. It does happen that the updates are already on the mirrors and you get an update warning in the system tray before the thread was posted.

We’re only human, and all that… I think. (:alien: )

So then it is best to wait a while longer. :wink:

If you think that this is important and can help a lot of people then create a issue-cum-feature-request here:

1 Like

Quick question a bit off topic. Apologies if I have this wrong.

Lets assume 5.15 isn’t the LTS and 5.16 is going to be. If we’re on 5.15 and it becomes end of life shouldn’t Manjaro be upgrading us to 5.16?

No, because the upgrade from 5.15 to 5.16 may break things, even if 5.16 were the LTS kernel. Such breakage has already been reported by people switching to the 5.15 LTS kernel from an older EOL kernel, and then we have to advise them to switch to 5.10 or 5.4, or possibly even to hold onto the EOL kernel in question for as long as they can, even though it won’t be receiving updates anymore ─ which in the event of people with Nvidia hardware is of course not possible, except maybe by blocking the Nvidia driver updates in /etc/pacman.conf.

Manjaro leaves it up to the user to decide which kernel they’ll use in place of the EOL kernel. This, together with a notification ─ both during the update process and by way of the announcement thread ─ is the safest option.

You can never please everyone all of the time. All you can do is find the option that works best for the majority of the people, and that imparts the least amount of risk. :man_shrugging:

5 Likes

I’m assuming some of this is why the mess with the 5.13 kernel to the 5.14. Where a fresh install of the OS and attempting to do the first up date could break the system cause couldn’t update the nVidia drivers in order to update to the 5.14 kernel without breaking 5.13. I myself like to be on the latest stable kernel(5.15), have the previous kernel to that, and at least one other LTS kernel just incase.

1 Like

Err … does not the ‘in the desktop’ ‘not in package manager text’ ‘naggy’ warning thing get accomplished by msm-notifier ?

I certainly dont use it … but it does this, has options to set for your needs, and should be installed by default.

(though its verbage is still needing of some small but important tweaks … but thats been true for years … and I digress …)

1 Like