Making installation easier for newcomers with dual GPU laptops with Nvidia

Hello!

I have a dual GPU laptop with an Nvidia card. On first boot after install, I had a black screen, so I used nomodeset to get in and install the Nvidia open kernel module. A lot of Linux newcomers would be very confused by their screen not working. I trust there are reasons for why Nvidia drivers aren’t offered at install. But it can make things confusing for new users (like my past self, 4 years ago). So I wanted to ask for ideas as well as give one of my own.

My idea is to detect nvidia graphics in the installer and add a page explaining:

  • Different driver options
  • How to install them
  • Why one might need nomodeset on first boot
  • Why Fedora does not install Nvidia drivers itself
  • Possibly mention other distros that can be easier to install

Thanks!

Nvidia graphics are already detected and fedora contains the (FOSS, reverse engineered) nouveau driver to support them in a limited fashion.

There are lots of threads related to your issue, and during install if the desktop fails to load properly it is suggested to use the troubleshooting mode for installation which then uses basic graphics to manage the gpu.
If the installation completes with the normal install steps then your fix with nomodesset is the second suggestion to move forward.
Some hardware also seems to require removing the rhgb from the kernel command line to boot properly.

Since there are so many variations in hardware and the hardware is being updated constantly it would seem nearly impossible to do as you suggest since the solution does not only depend upon the hardware but also upon the current state of the drivers, kernel, etc., all of which have an impact on the graphics display. Your solution may be feasible for the software and hardware as it is today, yet would fail as soon as one of the inter-related pieces gets updated/replaced.

This would be counter productive to the goal of having users select fedora as their distro of choice (and also would need to change constantly).

So perhaps include what is certain?

  • One may need to set nomodeset
  • One may need to unset rhgb

Also, on people using Fedora being the goal… I don’t know… Is it? I do suppose it is dificult to point. Maybe to forks. Even then, it risks a mini culture war. “No! They should point them this way!” “That distro is terrible!”

I still do think a brief mention of nomodeset and rhgb could be worth it.

Having to use nomodeset is a bug and it should be fixed soon.

The reason Nvidia closed drivers are not supported is that they are proprietary, and can’t be included under Fedora and licencing rules.

RPM Fusion in France does host the drivers though, and it is eaasy to add that repo to get them.

The KDE installer gives the option of installing the RPM Fusion repos during set up. I dont know if Workstation version does.

Nvidia is one of the biggest problems in Fedora, however Nvidia is slowly developing an open driver set that will oneday be able to be included.

Yes and even the “open kernel” drivers depend on closed-source userspace components, so Fedora doesn’t ship them.

During first boot setup Workstation provides the option to enable 3rd party repos. One of those enabled is rpmfusion-nonfree-nvidia-drivers which makes it simple to use dnf and install the drivers.

When installing the nvidia drivers, however, it is left up to the user to 1) disable secure boot so the driver can be loaded, or 2) sign the modules and enroll the key into bios so the driver can be loaded with secure boot enabled.

This repo has been merged with the normal rpmfusion-nonfree repo, and no longer exists.

Heres the instructions for other readers RPM Fusion How To Nvidia

It does exist, though I believe what it contains is a subset of rpmfusion-nonfree.

For example, on my fresh VM install of F44 KDE, here’s an excerpt of the repos that Discover offers me:

I believe the reason it exists is precisely because we offer it to users on initial setup - whereas it’s deemed unacceptable to offer the whole of RPMFusion at that point because of the patent issues.

A downside of this separate repo (and especially of the corresponding Steam one) is that they don’t provide Appstream metadata, so they don’t make the apps they contain properly discover[1]able in the software stores. See for example this recent thread.


  1. pun not really intended ↩︎

Gosh you’re good at looking things up.
Can you enable the Nvidia Driver one and look in /etc/yum.repos.d to see the actual name of the repo?

I stand corrected Jeff, my apologies.

It’s rpmfusion-nonfree-nvidia-driver.repo.

Similarly there’s rpmfusion-nonfree-steam.repo.

You don’t need either of those, you’d get the same packages just by adding rpmfusion-nonfree. But we don’t offer that at initial setup.

This one was fresh in my mind :grinning_face: The penny only really dropped for me about this last week, when trying to help the user on the thread I linked.

Not quite true. See the post by @pg-tips above.

That repo is offered at first boot setup on Workstation as one of the enabled 3rd party repos, as is the rpmfusion-nonfree-steam repo.

The nvidia drivers in the subject repo (version at release date for the matching fedora release version) are matched in the rpmfusion-nonfree repo. Updates to the nvidia drivers become available in both the rpmfusion-nonfree-nvidia-drivers repo and in the rpmfusion-nonfree-updates repo while the version in the rpmfusion-nonfree repo does not change with updates.

That is interesting, thanks for fully outlining it.

Your Discover pun had me laughing so hard I ran out of Oxygen… heh… heh…

Gnome Software even have a procedure to install the nvidia drivers

It may not be very well tested or perhaps not even known about.

Could Need testers for copr project be helpful for the OP?