GNOME Bugzilla – Bug 781075
GDM won't load Wayland session with latest Nvidia proprietary drivers, even though Wayland is now supported by Nvidia
Last modified: 2017-06-12 08:56:36 UTC
Created attachment 349537 [details] Screenshot of issue -- there's no "GNOME on Wayland" login option. After I installed the latest Nvidia 381.09 proprietary drivers, I was told I could log into a Wayland session on GNOME 3.24.0, even with non-open-source drivers. I rebooted, but there was only an option for "GNOME" and "GNOME Classic". I asked the GNOME community on Google+ about it, but they said file a bug. Bug discovered while using: Ubuntu GNOME 17.04 (beta) amd64 GNOME 3.24.0 Nvidia 381.09 proprietary drivers via ppa:graphics-drivers/ppa Nvidia GTX 1080 graphics card Linux kernel 4.10.0-19-generic
See https://launchpad.net/bugs/1672033
(In reply to Jesse from comment #0) > Created attachment 349537 [details] > Screenshot of issue -- there's no "GNOME on Wayland" login option. > > After I installed the latest Nvidia 381.09 proprietary drivers, I was told I > could log into a Wayland session on GNOME 3.24.0, even with non-open-source > drivers. I rebooted, but there was only an option for "GNOME" and "GNOME > Classic". I asked the GNOME community on Google+ about it, but they said > file a bug. > > Bug discovered while using: > Ubuntu GNOME 17.04 (beta) amd64 > GNOME 3.24.0 > Nvidia 381.09 proprietary drivers via ppa:graphics-drivers/ppa > Nvidia GTX 1080 graphics card > Linux kernel 4.10.0-19-generic This is how it supposed to work. GDM detects, that your system does not support Wayland and does not show Wayland session. Most likely the problem is, that mode setting is disabled for your drivers (mode setting is disabled by default on ubuntu for nvidia drivers), check: /etc/modprobe.d/nvidia-graphics-drivers.conf: options nvidia_381_drm modeset=0 Try enabling mode setting and you should be able to login in wayland session. However, be warned, that this will render your Xorg session unusable because of the bug Jeremy linked here.
> Try enabling mode setting and you should be able to login in wayland session. I encountered the same issue as OP, both with the 17.04 version of nvidia-375, as well as the nvidia-381 from the aforementioned ppa. In both cases, I tried it with the original modeset value (modeset=0) and with your suggested modeset value (modeset=1). In none of these combinations was I shown the "Gnome on Wayland" option. > This is how it supposed to work. GDM detects, that your system does not > support Wayland and does not show Wayland session. How might I go about debugging the logic taken in determining whether wayland is supported? > However, be warned, that this will render your Xorg session unusable I suspect that somehow changing the modeset value in the indicated configuration file is insufficient to actually enable modesetting, because my Xorg session continues to work fine.
(In reply to Will Page from comment #3) > In none of these combinations was I shown the "Gnome on Wayland" option. Just to be clear: did you reboot after changing that setting?
(In reply to Jeremy Bicha from comment #4) > (In reply to Will Page from comment #3) > > In none of these combinations was I shown the "Gnome on Wayland" option. > > Just to be clear: did you reboot after changing that setting? Yes - sorry for not being more specific. I rebooted between each of the four combinations I tried.
You not only need to reboot, but also make sure to update initramfs: sudo update-initramfs -u
> How might I go about debugging the logic taken in determining whether > wayland is supported? Search the log for messages from gnome-shell and gdm processes. Usually, As far as I remember, gnome-shell says, that KMS is not available. > I suspect that somehow changing the modeset value in the indicated > configuration file is insufficient to actually enable modesetting, because > my Xorg session continues to work fine. I presume your change didn't take an effect because you didn't updated initramfs. (look prevous comment).
Thanks, Igor. That seemed to be the missing piece. The required steps seem to be: * Edit "/etc/modprobe.d/nvidia-graphics-drivers.conf" * Change "options nvidia_381_drm modeset=0" to "options nvidia_381_drm modeset=1" * Run "sudo update-initramfs -u" * Reboot And I'll reiterate the word of warning voiced elsewhere - this will break Xorg sessions. If your system is configured to auto-login a user, this could cause some difficulty - open a virtual terminal and edit /etc/gdm3/custom.conf and comment out the "AutomaticLogin*" entries, and reboot.
this report confuses me because there's no "GNOME on Wayland" session, only "GNOME" that dynamically picks Wayland or X11 depending on detection logic, and "GNOME on Xorg" that forces Xorg. We did have "GNOME on Wayland" a long time ago, so maybe the distro held back? not sure. anyway, issue seems to be resolved, so closing.
Ray, the default user session on both Debian stretch and Ubuntu is GNOME which is still X. There is a GNOME on Wayland session option. (GDM is Wayland by default.) I think Debian will switch to Wayland by default after stretch. We haven't decided in Ubuntu yet whether we will switch before or after 18.04 LTS.
You know I knew that and forgot! i'll blame it on being monday after a long weekend...
Ray, my terms might have been dated. I agree that the "GNOME on Wayland" doesn't seem to be there, anymore. My bad. The information exchanged in the comments doesn't really resolve the issue I'm having. My expected behavior for GDM during login is this: 1) To have the three ("normal") options under the gear button during login, with or without the latest Nvidia proprietary drivers installed: GNOME, GNOME Classic and GNOME on Xorg 2) If GNOME is selected under the gear icon, it would run GNOME under Wayland when possible, even with Nvidia proprietary drivers. (typing this under the assumption that Wayland is still considered the intended default session for future GNOME releases, yeah?) 3) The user would not have to do any special configurations after installing the Nvidia driver to get GNOME to detect and run a Wayland session. Being that this bug was changed to "Resolved not GNOME", which software product should I redirect my attention towards in order to attempt to reach the expected behaviors I mentioned above?
I'm re-opening this bug because I feel that my expected behaviored mentioned in Comment 12 are exactly what many end-users are going to be expecting from a GNOME experience. With Canonical now re-adopting GNOME as the default desktop for Ubuntu, the GNOME userbase is going to increase greatly. Most are agreeing now that Wayland is going to be the future display server that replaces X. Providing user-friendly means to run Wayland on the (now) supported Nvidia proprietary drivers, I think, is an important matter.
Jesse, I think the problem here is that the Nvidia proprietary drivers provided for Ubuntu 17.04 do not support Wayland. This is not something that GNOME can fix. You should probably ask Ubuntu or Nvidia instead.
fwiw, I think nvidia and gnome-shell/mutter do work together now with wayland, so it may just need a distro driver update?
Jeremy, gotcha I'll reach out on Launchpad and see what can be done from there. Thank you sir. :) Ray, thanks for the info'. I'm told that Nvidia 381.xx and up support Wayland, so I agree -- could be a distro thing with Ubuntu. Thanks guys!
I reported the bug on Nvidia's devtalk forums (https://devtalk.nvidia.com/default/topic/1010548/linux/bug-gnome-won-t-load-wayland-session-with-latest-nvidia-381-22-drivers-ubuntu-gnome-17-04/?offset=2#5155263). Hopefully they'll be able to direct me or resolve the issue, there.
I had it working well on Arch Linux with Gnome 3.24.0 and Nvidia 378 drivers but I cannot get it working that good on Ubuntu (GLX errors, many programs aren't starting, random crashes).