Currently, if you need to install the proprietary NVIDIA driver, you need to:
This is documented by Lenovo user support, which lists it as 9 steps.
Aside from the discoverability and labouriousness of this process, there are other issues:
I think that it's fair to say that Software isn't the best fit for a driver "management", and it's worth thinking about if the experience can be improved. Something which detects when there's hardware that requires additional drivers, and guides the user through installing them seems like the best approach.
It would also be good to identify if there are other drivers where it would be good to have this experience, or whether it's just NVIDIA. I'm not aware of other cases where there are additional drivers we can reasonably suggest to install.
Ubuntu has something similar: http://www.webupd8.org/2012/07/a-new-interface-for-handling-third.html https://packages.ubuntu.com/focal/software-properties-gtk
This was also somewhat discussed in #105, but I'll restate my comment from there about some historical information that may help:
When the GNOME Software design for third-party repositories was done, it was originally for two cases:
The former was only accessible if the metadata fetching was enabled so that the codec discovery stuff worked. We have since switched it to enabled by default so this is less of an issue.
The latter can have installation triggered by driver managers that know how to request drivers from modalias() Provides or AppStream metadata with modalias information. I packaged up linux-driver-management to allow GNOME Software to add support for actually doing this, but it never got done.
modalias()
linux-driver-management
There's a trivial code example of how this could work with DNF in the ldm repo: https://github.com/solus-project/linux-driver-management/blob/master/examples/dnf-integration.py
The idea would be that it would detect your hardware, search for the drivers in the repos, propose them, and then if the user assents, it would seamlessly install them, configure them, and then prompt to reboot once things are set up so it can take effect.
Metadata Update from @ngompa: - Issue tagged with: experience
Metadata Update from @ngompa: - Issue tagged with: meeting
Metadata Update from @ngompa: - Issue set to the milestone: Fedora 36 - Issue tagged with: nvidia
Related ticket for this: #155
We discussed this at today's meeting. Plan of action: @mclasen to invite @pjones to speak to the WG. Also to ask Jared and Richard if they have any insight from the hardware vendor side.
Metadata Update from @aday: - Issue untagged with: meeting - Issue tagged with: pending-action
Seems like this issue is a dupe of #155 ? That's where the previously mentioned action happened.
Metadata Update from @aday: - Issue untagged with: pending-action
I don't think this can be achieved in the Fedora 37 time frame.
Metadata Update from @chrismurphy: - Issue set to the milestone: Future Release (was: Fedora 36)
We discussed this issue in today's WG meeting.
Currently, installing the NVIDIA can break your system if you already have secure boot turned on. That, along with the open sourcing of the NVIDIA driver, means that we need a plan around NVIDIA driver in general, prior to investigating potential UI changes.
@otaylor has taken on the action to ask someone from the graphics side to give us an update.
Metadata Update from @aday: - Issue assigned to otaylor - Issue tagged with: pending-action
Hi @otaylor, you have the action item here
Hi @otaylor, could you please provide a status update?
In light of the new nouveau patch set, I'm closing this ticket as the going concern for Fedora will be focused on nouveau.
Metadata Update from @ngompa: - Issue close_status updated to: Won't fix - Issue status updated to: Closed (was: Open)
We should probably remove the NVIDIA binary driver from fedora-workstation-repositories if we don't expect it to work properly with secure boot, and we're going to recommend that users use nouveau instead?
Let's get the nouveau duck in place too at the same time.
Log in to comment on this ticket.