标题: 在使用N卡闭源驱动时强制让GNOME/GDM使用Wayland(副作用:暂时无法启动Wine游戏)
时间: 2020-10-31发布,2021-02-01修改
以下教程适用于以下桌面环境:
不适用以下桌面环境:
我在Arch Linux中测试成功,驱动安装的是AUR包nvidia-beta
。
在使用N卡闭源驱动时,GDM会自动禁用GNOME的Wayland支持,但是可以通过以下步骤启用:
sudo vim /etc/gdm/custom.conf
WaylandEnable=false
被注释(前面有#
),如果前面没有#
则加一个#
[daemon]
# Uncomment the line below to force the login screen to use Xorg
#WaylandEnable=false
sudo vim /usr/lib/udev/rules.d/61-gdm.rules
Driver=="nvidia" ……
前面加#
# disable Wayland when using the proprietary nvidia driver
#DRIVER=="nvidia", RUN+="/usr/libexec/gdm-disable-wayland"
如果只在Driver=="nvidia" ……
前面加#
没效果,就在所有行前面都加#
。
sudo vim /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="……"
的引号里面,末尾添加空格和nvidia-drm.modeset=1
GRUB_CMDLINE_LINUX_DEFAULT="原有的参数 nvidia-drm.modeset=1"
运行sudo update-grub
命令,或者其他适用于你的发行版的grub.cfg
更新命令,比如sudo grub-mkconfig -o /boot/grub/grub.cfg
重启以使配置生效,然后在选择用户后,点击右下角的齿轮图标。如果你看到里面有“运行于 Xorg 的 GNOME”,说明Wayland已启用,选择另外两个都是Wayland会话。如果没有和Xorg
有关的条目,则Wayland可能未启用。
登陆后,运行以下命令确认是否处于Wayland会话:
env | grep XDG
如果看到XDG_SESSION_TYPE=wayland
则处于Wayland会话。
如果是XDG_SESSION_TYPE=x11
则处于Xorg会话。
注意:由于Nvidia闭源驱动还没有支持XWayland 3D加速,并且Wine也还没有原生支持Wayland(只能使用XWayland渲染),所以目前Wine游戏助手无法在这种情况下启动3D游戏。我给出这个方案只是为了探索Wayland的支持情况。
如果想打游戏,请注销并选择运行于 Xorg 的 GNOME
。如果坚持使用Wayland会话,则很多游戏都无法启动,或者你需要使用wine-wayland。
『回复列表(0|显示机器人聊天)』