Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 741556 - x11-drivers/nvidia-drivers-340.108 - Release -r2 dropping eselect-opengl and eselect-opencl dependencies
Summary: x11-drivers/nvidia-drivers-340.108 - Release -r2 dropping eselect-opengl and ...
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Jeroen Roovers (RETIRED)
Depends on:
Reported: 2020-09-10 19:43 UTC by Shiba
Modified: 2021-03-14 10:22 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---

nvidia-drivers-340.108-r2.ebuild (nvidia-drivers-340.108-r2.ebuild,13.13 KB, text/plain)
2020-09-10 19:43 UTC, Shiba
nvidia-drivers-340.108-r3 ebuild bundle (nvidia-drivers-340.108-r3_ebuild_bundle.tar.bz2,61.49 KB, application/x-bzip)
2020-10-14 22:07 UTC, Markus Meier
Updated package to build with kernel 5.9.1 (nvidia-drivers.tar.gz,69.42 KB, application/gzip)
2020-10-30 08:41 UTC, Florian Dittmer
Updated package to build with kernel 5.10.1 (nvidia-drivers-340.108-r5-bundle.tar.bz2,73.50 KB, application/x-bzip)
2020-12-17 22:54 UTC, Florian Dittmer
Updated ebuild to build with kernel 5.11.x (nvidia-drivers-340.108-r7-bundle.tar.bz2,75.67 KB, application/x-bzip)
2021-03-14 10:22 UTC, Florian Dittmer

Note You need to log in before you can comment on or make changes to this bug.
Description Shiba 2020-09-10 19:43:37 UTC
Created attachment 659436 [details]

I modified the x11-drivers/nvidia-drivers-340.108-r1 ebuild to ditch eselect-{opengl,opencl} and instead do internally the very minimal configuration required. There are only 2 caveats:

1) I added a phony USE=libglvnd. Its only purpose is to fool the strong blocker in x11-base/xorg-server. The correct solution would be to restrict that blocker to the nvidia-drivers versions using libglvnd.

2) The Xorg configuration probably depends on "xorg-server-1.18-support-multiple-Files-sections.patch" for x11-base/xorg-server, which I don't know if it will be dropped after eselect-opengl is removed. If that's the case, I can replace the newins with elog messages providing instructions (although I'd rather avoid that).

If there is anything you want me to test feel free to ask me since I have the hardware.
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2020-09-10 20:25:55 UTC

*** This bug has been marked as a duplicate of bug 728290 ***
Comment 2 Shiba 2020-09-12 21:24:30 UTC
Quoting Matt Turner on 728290#c7 :

> Keeping a binary driver in the distribution isn't the issue.
> It's that it requires keeping a lot of *other* infrastructure in
> the distribution (eselect-opengl and eselect-opencl specifically)
> and those are full of bugs.

As I've already said it doesn't necessarily require them and I've submitted an ebuild to solve this issue. However so far I've simply been ignored and this driver has been removed without providing a valid reason.

So until someone bothers to give a proper explanation this bug is not solved for me and sure as hell it is not a duplicate of 728290.
Comment 3 Shiba 2020-09-13 12:31:51 UTC
Thanks for the thorough explanation, as usual it's a fucking pleasure contributing to Gentoo.
Comment 4 Jarryd Beck 2020-09-20 23:30:24 UTC
Your patch works for me. I don't care about glvnd because I only have one card and one driver, and I just want it work. Thanks!
Comment 5 Bartek 2020-09-22 06:53:59 UTC
Works for me as well, you saved me a lot of troubles. Thanks a lot! Luckily our community is better than devs...
Comment 6 Markus Meier 2020-10-14 22:07:39 UTC
Created attachment 665672 [details]
nvidia-drivers-340.108-r3 ebuild bundle

Full nvidia-drivers-340.108-r3 ebuild bundle. In the hope will be useful for someone else.
Comment 7 Markus Meier 2020-10-14 22:13:06 UTC
Thanks, Shiba. You just extended the life of your old 3D-stereo graphics workstations. We still have a couple of these around to build our protein models into electron density maps and the Nvidia Quadro FX 4600 graphics card is still perfect for that purpose.

Best regards,
Comment 8 Florian Dittmer 2020-10-30 08:41:45 UTC
Created attachment 669290 [details]
Updated package to build with kernel 5.9.1

I updated the package and included the patches from
Now the driver builds against kernel 5.9.1 - however, I did not test it yet.
Comment 9 Ray 2020-11-14 23:40:49 UTC
Thanks works great for me. I understand the desire to support libglvnd which seems to be a wrapper around opengl to abstract the actual driver but I think there should be some provision to support legacy hardware as long as X supports that version of opengl.
Comment 10 Florian Dittmer 2020-12-17 22:54:19 UTC
Created attachment 678649 [details]
Updated package to build with kernel 5.10.1

New ebuild package to build against Kernel 5.10.1. Included new patch from
Comment 11 Zdenek Sojka 2020-12-21 13:56:26 UTC
(In reply to Florian Dittmer from comment #10)
> Created attachment 678649 [details]
> Updated package to build with kernel 5.10.1
> New ebuild package to build against Kernel 5.10.1. Included new patch from
> files

Thank you all for the ebuilds!

Is there a place (overlay) where this ebuild is maintained and discussed? I don't know if it's appropriate to discuss it here.

Could be the fix from also included? (I need this on my system)

Trying to rebuild world shows a possibly broken dependency:

WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict:


  (x11-libs/gdk-pixbuf-2.42.2:2/2::gentoo, ebuild scheduled for merge) USE="introspection jpeg tiff -gtk-doc" ABI_X86="32 (64) (-x32)" conflicts with
    x11-libs/gdk-pixbuf[X] required by (x11-drivers/nvidia-drivers-340.108-r5:0/340::extra, ebuild scheduled for merge) USE="X driver (libglvnd) multilib tools -static-libs" ABI_X86="32 (64) (-x32)"
Comment 12 Florian Dittmer 2021-03-14 10:22:45 UTC
Created attachment 691335 [details]
Updated ebuild to build with kernel 5.11.x

- Changed x11-libs/gdk-pixbuf[X] dependency to x11-libs/gdk-pixbuf
- Included latest patch to build with kernel 5.11.x from 
- however i was not able to test yet if this is actually working
- I am sorry I cannot provide more support than this. I am just trying to keep teh driver alive/compiling with minimal efforts in order to keep my 10yr old laptop useable. I am compiling/updating the system in a chroot on my powerful main desktop and occasionally transfer the whole build to the laptop. so I can confirm it's compiling, but not if it is actually working on the hardware until I copy over the build the next time...