如何在 Fedora 中使用 Wayland?

Spi*_*ine 5 fedora gnome wayland

我正在使用 Fedora 26 和 Gnome 3.24,并想尝试 Wayland。好像安装了 Wayland,我也安装了gnome-session-wayland-session. 我现在希望能够在登录屏幕上选择Wayland上的GNOME,但是我只能在GNOMEGNOME ClassicGNOME on Xorg之间进行选择。最后,Xorg 上的 GNOME绝对不使用Wayland,因为

loginctl show-session 2 -p Type
Run Code Online (Sandbox Code Playgroud)

返回Type=x11。由于 Gnome 默认使用 Wayland,GNOME应该使用 Wayland,但是在选择GNOME后登录会让我回到登录屏幕......

尝试使用 Wayland 登录后,journalctl -b仅包含一行带有单词wayland

/usr/libexec/gdm-wayland-session[1459]: test: Missing argument at index 2
Run Code Online (Sandbox Code Playgroud)

但是一些行之后出现了许多与 Gnome 相关的错误:

gnome-session[1472]: gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.Wacom.desktop' exited with code 1
gnome-session[1472]: gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.A11yKeyboard.desktop' exited with code 1
gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.Wacom.desktop' exited with code 1
gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.A11yKeyboard.desktop' exited with code 1
gnome-session[1472]: gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.Clipboard.desktop' exited with code 1
gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.Clipboard.desktop' exited with code 1
gnome-session[1472]: gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.Color.desktop' exited with code 1
gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.Color.desktop' exited with code 1
gnome-session[1472]: gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.XRANDR.desktop' exited with code 1
gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.XRANDR.desktop' exited with code 1
gnome-session[1472]: gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.XSettings.desktop' exited with code 1
gnome-session-binary[1472]: WARNING: App 'org.gnome.SettingsDaemon.XSettings.desktop' exited with code 1
Run Code Online (Sandbox Code Playgroud)

问题与硬件无关:我尝试在实时 USB 上启动,并且 Wayland 正在工作。

系统信息是

$: uname -a
Linux localhost.localdomain 4.11.11-300.fc26.x86_64 #1 SMP Mon Jul 17 16:32:11 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

我怎样才能使用 Wayland?

MAC*_*rha 6

Fedora 的最新版本默认使用 Wayland。然而,一些因素可能会阻止 Fedora 使用它,主要是驱动程序。最有可能的是,这只是一件事:NVIDIA 专有驱动程序。

要在 Fedora 中启用 Wayland for Gnome,需要执行两个主要操作,详细说明如下:

  1. TL;DR:在 GDM 配置中启用 Wayland/etc/gdm/custom.conf

    1. 打开/etc/gdm/custom.conf进行编辑(如您所知,您必须是 root 用户)。

    2. 转到如下所示的行:

      [daemon]
      WaylandEnable=false
      
      Run Code Online (Sandbox Code Playgroud)
    3. 将其更改为(即使该行已被注释):

      [daemon]
      WaylandEnable=true
      
      Run Code Online (Sandbox Code Playgroud)
    4. 保存文件并退出。

  2. TL;DR:注释掉所有 Wayland 禁用行/usr/lib/udev/rules.d/61-gdm.rules(感谢此论坛帖子

    1. 打开/usr/lib/udev/rules.d/61-gdm.rules进行编辑(再次root)。

    2. 导致 Wayland 无法启动的注释行;通常,它与专有的 NVIDIA 驱动程序有关。每行之前的注释应该对您有所帮助。例如,我评论了以下行:

      # disable Wayland when using the proprietary nvidia driver
      DRIVER=="nvidia", RUN+="/usr/libexec/gdm-disable-wayland"
      
      Run Code Online (Sandbox Code Playgroud)
    3. 保存文件并退出。

      重要提示:由于您可能使用 NVIDIA 专有驱动程序,因此此步骤应该使您能够与这些驱动程序一起使用 Wayland。请参阅egl-wayland这篇文章

      但是,您可能无法体验到最佳性能,并且还会遇到其他问题。例如,nvidia-settings仅适用于 X11Xwayland 在 3D 硬件加速方面存在问题,因此glxinfo显示llvmpipe为渲染器(也是最新版本的 Gnome 设置中的“关于”部分)。尽管如此,lspci -vnn如果您正确执行了这些步骤,您可以通过 验证正在运行的驱动程序。也看看这个。

      呃。顺便说一句,这是 NVIDIA。

      编辑1:不知何故,好消息。Xwayland 的 NVIDIA 专有驱动程序已初步支持硬件加速!

      编辑 2:期待已久的NVIDIA GBM API 支持已合并到专有驱动程序中!因此,我们应该期望这些驱动程序在 Wayland 上的可用性和性能会更好。好消息!

重新启动计算机(注销并登录应该不够)。登录之前,在日志记录选项中,您现在应该看到“Gnome”和“Gnome on Xorg”,其中第一个是 Wayland 选项。使用它,您应该能够在 Gnome 上使用 Wayland。好好享受!


rog*_*loo 3

据我所知,GNOME 选项确实已经使用了 Wayland。所以,如果你想使用 Wayland,就选择 GNOME 吧。

如果没有,也许尝试对您的硬件进行故障排除?它过时/旧了吗?或许可以尝试重装系统?