Summary: | x11-drivers/nvidia-drivers-390.132-r1 - add support for libglvnd | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Nikolay Kichukov <hjckr> |
Component: | Current packages | Assignee: | Jeroen Roovers (RETIRED) <jer> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | arcctgx, iordanov, john.blbec, jstein, kroemmelbein, mike, NathanZachary, soap, thomas |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | A proposal of ebuild |
Description
Nikolay Kichukov
2020-03-09 10:34:21 UTC
(In reply to Nikolay Kichukov from comment #0) > Recent upgrades of mesa and xorg-server include defaulting to +libglvnd, > which breaks upgrades for those who are stuck to nvidia-drivers v390 due to > having obsolete video cards. > > Can we have libglvnd enabled for nvidia-drivers-390.132-r1.ebuild? It was > already enabled for: > nvidia-drivers-440.59.ebuild > nvidia-drivers-435.21-r1.ebuild > > According to nvidia devtalk: > https://devtalk.nvidia.com/default/topic/915640/multiple-glx-client- > libraries-in-the-nvidia-linux-driver-installer-package/ > > libglvnd is supported in 361.xx and onwards. > Thanks! > > Reproducible: Always > > Steps to Reproduce: > 1. Upgrade a system that has to use nvidia-drivers 390.xx series of the > driver > 2. Notice a block: > [blocks B ] app-eselect/eselect-opengl ("app-eselect/eselect-opengl" is > blocking x11-base/xorg-server-1.20.7, media-libs/mesa-19.3.4-r1) > [blocks B ] x11-drivers/nvidia-drivers[-libglvnd(-)] > ("x11-drivers/nvidia-drivers[-libglvnd(-)]" is hard blocking > x11-base/xorg-server-1.20.7) > > (xorg-server and mesa enabled libglvnd by default) I confirm I'm having the same issue. In the meanwhile, you could add the USE="-libglvnd" in your make.conf, at least until this issue is resolved. Created attachment 619032 [details]
A proposal of ebuild
I created this modified ebuild and tested it using a custom overlay. It provides the libglvnd support. Tried here and working.
If you're using Nvidia Optimus with Bumblebee and Primus, you may do some tweak to make it work.
For 340 (which can't support this), maybe some warning could be added instead? Then again 340 is no longer supported by nvidia and will likely end up too broken to be usable soon'ish (390 still has 2 years of support). I would appreciate if something is done about these soon (430.64 too), users are doing multiple support requests everyday because they do not understand what is causing the blocker. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e83944ea39f816e1aeb5fee5f3414b379e9594f4 commit e83944ea39f816e1aeb5fee5f3414b379e9594f4 Author: Jeroen Roovers <jer@gentoo.org> AuthorDate: 2020-03-15 20:33:33 +0000 Commit: Jeroen Roovers <jer@gentoo.org> CommitDate: 2020-03-15 20:35:29 +0000 x11-drivers/nvidia-drivers: Update 390 branch - Add USE=libglvnd - Raise kernel version compatibility Package-Manager: Portage-2.3.94, Repoman-2.3.21 Closes: https://bugs.gentoo.org/show_bug.cgi?id=709930 Closes: https://bugs.gentoo.org/show_bug.cgi?id=711942 Signed-off-by: Jeroen Roovers <jer@gentoo.org> .../nvidia-drivers-390.132-r2.ebuild | 583 +++++++++++++++++++++ 1 file changed, 583 insertions(+) Though the ebuild was modified to add support for libglvnd, was it actually tested using an nvidia card and the 390.132 driver? The driver builds properly, but the nvidia GLX module doesn't initialise, so GLX falls back to llvmpipe: # glxinfo | grep -i render direct rendering: Yes GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer, Extended renderer info (GLX_MESA_query_renderer): OpenGL renderer string: llvmpipe (LLVM 9.0.1, 128 bits) GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_MESA_ycbcr_texture, GL_NV_conditional_render, GL_NV_depth_clamp, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_NV_conditional_render, GL_NV_depth_clamp, GL_NV_fog_distance, GL_EXT_polygon_offset_clamp, GL_EXT_read_format_bgra, GL_EXT_render_snorm, GL_MESA_shader_integer_functions, GL_NV_conditional_render, GL_OES_element_index_uint, GL_OES_fbo_render_mipmap, # glxinfo | grep -i opengl OpenGL vendor string: VMware, Inc. OpenGL renderer string: llvmpipe (LLVM 9.0.1, 128 bits) OpenGL core profile version string: 3.3 (Core Profile) Mesa 20.0.1 OpenGL core profile shading language version string: 3.30 OpenGL core profile context flags: (none) OpenGL core profile profile mask: core profile OpenGL core profile extensions: OpenGL version string: 3.1 Mesa 20.0.1 OpenGL shading language version string: 1.40 OpenGL context flags: (none) OpenGL extensions: OpenGL ES profile version string: OpenGL ES 3.1 Mesa 20.0.1 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10 OpenGL ES profile extensions: # glxinfo | grep -i nvidia # When starting X, I see the following error in the log: [ 91296.570] (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X [ 91296.570] (EE) NVIDIA(0): log file that the GLX module has been loaded in your X [ 91296.570] (EE) NVIDIA(0): server, and that the module is the NVIDIA GLX module. If [ 91296.570] (EE) NVIDIA(0): you continue to encounter problems, Please try [ 91296.570] (EE) NVIDIA(0): reinstalling the NVIDIA driver. If there needs to be a separate bug for this problem, please let me know and I will file one accordingly. Cheers, Nathan Zachary (In reply to Nathan Zachary from comment #5) > Though the ebuild was modified to add support for libglvnd, was it actually > tested using an nvidia card and the 390.132 driver? Of course it was. > If there needs to be a separate bug for this problem, please let me know and > I will file one accordingly. Then why did you reopen this one? @Jeroen Roovers, I apologise for reopening the bug. I didn't know your preferred workflow. Some developers prefer that bugs be reopened in order to audit any related changes, and some prefer new bugs. I have opened bug 713546 for further tracking. Thank you for taking the time to respond. Thanks for taking the time to discuss that, I feel strongly about this and so really like getting to know more on this kind of field. https://bit.ly/36qpM9b This online website is really cool with great facts , best work you have done here https://bit.ly/3wjNQFm |