Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 624958

Summary: GNOME nvidia wayland support
Product: Gentoo Linux Reporter: Mart Raudsepp <leio>
Component: Current packagesAssignee: Gentoo Linux Gnome Desktop Team <gnome>
Status: RESOLVED FIXED    
Severity: normal CC: axl, fin.christensen, gentoo, harrisl, josef64, marek.bartosiewicz, me, rich, ua_gentoo_bugzilla, xxoo
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 717146, 665348    

Description Mart Raudsepp gentoo-dev 2017-07-14 09:03:05 UTC
We currently don't support GNOME nvidia wayland on top of EGLStreams, but it would be nice to figure it out and support it to some capacity. Sadly (actually fortunately) I don't have nvidia hardware, thus input from others highly sought here.

What I do know:

* mutter has a default disabled --enable-egl-device knob, which is required for nvidia EGLDevice/EGLStreams support to be turned on. The mutter ebuild currently does not pass that. Note that configure.ac is broken - if --disable-egl-device is passed, it'll get enabled instead, so be careful about use_enable there (not sure there's any point fixing it over just conditionally passing only --enable, as things are moving over to meson instead soon)

* I don't think we have a good glvnd story for the hybrid graphics aspects of overall nvidia, which isn't that much wayland related, and improvements here could be useful for pure Xorg as well (but related via Xwayland and GL support under Wayland)

* I believe OpenGL in Xwayland doesn't work with nvidia-wayland yet, Red Hat and NV are still working on that
Comment 2 Maciej Piechotka 2017-08-07 14:36:51 UTC
(In reply to Mart Raudsepp from comment #0)
> We currently don't support GNOME nvidia wayland on top of EGLStreams, but it
> would be nice to figure it out and support it to some capacity. Sadly
> (actually fortunately) I don't have nvidia hardware, thus input from others
> highly sought here.
> 
> What I do know:
> 
> * mutter has a default disabled --enable-egl-device knob, which is required
> for nvidia EGLDevice/EGLStreams support to be turned on. The mutter ebuild
> currently does not pass that. Note that configure.ac is broken - if
> --disable-egl-device is passed, it'll get enabled instead, so be careful
> about use_enable there (not sure there's any point fixing it over just
> conditionally passing only --enable, as things are moving over to meson
> instead soon)
> 
> * I don't think we have a good glvnd story for the hybrid graphics aspects
> of overall nvidia, which isn't that much wayland related, and improvements
> here could be useful for pure Xorg as well (but related via Xwayland and GL
> support under Wayland)
> 
> * I believe OpenGL in Xwayland doesn't work with nvidia-wayland yet, Red Hat
> and NV are still working on that

I tried to enable EGLDevice but clutter backends fail to initialize. Even when building with USE=debug it does not produce a useful info (as a side note eselect opengl does not replace libEGL).
Comment 3 Gilles Dartiguelongue (RETIRED) gentoo-dev 2017-08-14 16:44:20 UTC
For the eselect opengl part you might want to ask input from X11 team.
Comment 4 Mart Raudsepp gentoo-dev 2017-09-21 16:19:31 UTC
Deferring to 3.26, maybe by the time we get further along with 3.26 there are better news about GL in NV Xwayland too.
Comment 5 Mart Raudsepp gentoo-dev 2018-12-13 22:41:28 UTC
Targeting for 3.30 (3.30 itself is more important than wayland for nvidia); but help on this matter welcome from others earlier, of course
Comment 6 nE0sIghT 2019-05-19 06:07:43 UTC
> I don't have nvidia hardware, thus input from others highly sought here.

Both GDM and GNOME wayland session works with proper setup (disabling nvidia udev rule and enabling EGLDevice) and Gentoo-stable GNOME 3.30.
However I didn't tested overall experience, but got some glvnd error from Steam client and some minor header glitches from Thunderbird under kdocker.

> Note that configure.ac is broken - if --disable-egl-device is passed, it'll get enabled instead

Passing "--disable-egl-device" is not enough. configure.ac should be patched
Comment 7 Mart Raudsepp gentoo-dev 2019-09-01 10:22:38 UTC
This can't proceed until someone packages https://github.com/NVIDIA/egl-wayland or whatever else provides wayland-eglstream-protocols.pc
Comment 8 Matt Turner gentoo-dev 2022-04-09 06:03:13 UTC
I think this all works now.