首页 > 其他分享 >Use Wayland with proprietary NVIDIA drivers

Use Wayland with proprietary NVIDIA drivers

时间:2024-02-15 16:33:39浏览次数:20  
标签:Use sudo proprietary etc drivers NVIDIA Wayland nvidia

Wayland does not play well with proprietary drivers. Currently the biggest issue is that NVIDIA does currently not support Xwayland properly, so apps that require it get software rendering. This includes most games, which are the most common use case for proprietary NVIDIA drivers. This is why GNOME automatically disables Wayland if you have NVIDIA.
Wayland 不能很好地与专有驱动程序配合使用。目前最大的问题是 NVIDIA 目前无法正确支持 Xwayland,因此需要它的应用程序将获得软件渲染。这包括大多数游戏,它们是专有 NVIDIA 驱动程序最常见的用例。这就是为什么如果您有 NVIDIA,GNOME 会自动禁用 Wayland。

However, if this does not deter you, you can use Wayland with NVIDIA drivers. Here is how to do it:
但是,如果这不妨碍您,您可以将 Wayland 与 NVIDIA 驱动程序一起使用。操作方法如下:

:warning: If not using GNOME, skip to DE (Desktop Environment)-agnostic instructions in Step 4 :
:warning: 如果不使用 GNOME,请跳到步骤 4 中与 DE(桌面环境)无关的说明:

  1. Edit the /etc/gdm/custom.conf file and comment out the line WaylandEnable=false. The correct file will then look something like this:
    编辑 /etc/gdm/custom.conf 文件并注释掉 WaylandEnable=false 行。正确的文件将如下所示:

    # GDM configuration storage
    daemon]
    # Uncomment the line below to force the login screen to use Xorg
    #WaylandEnable=false
    
    [security]
    
    [xdmcp]
    
    [chooser]
    
    [debug]
    # Uncomment the line below to turn on debugging
    #Enable=true
    
  2. To force-enable Wayland, disable the udev 179 rule responsible for disabling Wayland in GDM:
    要强制启用 Wayland,请禁用负责在 GDM 中禁用 Wayland 的 udev179 规则:

    sudo ln -s /dev/null /etc/udev/rules.d/61-gdm.rules
    
  3. kms-modifiers must be enabled through gsettings. This can be done with the following command:
    kms-modifiers 必须通过 gsettings 启用。这可以通过以下命令来完成:

    gsettings set org.gnome.mutter experimental-features '["kms-modifiers"]'
    

    DE(Desktop Environment)-agnostic instructions begin here DE(桌面环境)无关的指令从这里开始

  4. Enable modesetting for nvdia drivers. Follow the instructions in the Arch wiki 1.9k:
    为 nvdia 驱动程序启用模式设置。按照 Arch wiki1.9k 中的说明进行操作:

    • Add the modules nvidia , nvidia_modeset , nvidia_uvm and nvidia_drm to /etc/mkinitcpio.conf and run the command sudo mkinitcpio -P
      将模块 nvidianvidia_modesetnvidia_uvmnvidia_drm 添加到 /etc/mkinitcpio.conf 并运行命令 sudo mkinitcpio -P
    • Add the kernel parameter nvidia-drm.modeset=1 to /etc/default/grub and run the command sudo update-grub
      将内核参数 nvidia-drm.modeset=1 添加到 /etc/default/grub 中并运行命令 sudo update-grub
  5. Ensure xorg-xwayland, libxcb and egl-wayland are installed:
    确保安装了 xorg-xwaylandlibxcbegl-wayland

    sudo pacman -Syu --needed xorg-xwayland libxcb egl-wayland
    
  6. Reboot 重启

  7. Profit. Congratulations, you should now be running GNOME with Wayland despite proprietary NVIDIA drivers!
    利润。恭喜,尽管有专有的 NVIDIA 驱动程序,您现在应该可以通过 Wayland 运行 GNOME!

标签:Use,sudo,proprietary,etc,drivers,NVIDIA,Wayland,nvidia
From: https://www.cnblogs.com/deali/p/18016330

相关文章

  • Idea--解决character ‘@‘ that cannot start any token. (Do not use @ for indenta
    原文网址:​​Idea--解决character‘@‘thatcannotstartanytoken.(Donotuse@forindentation_IT利刃出鞘的博客-CSDN博客​​简介本文介绍如何解决character‘@‘thatcannotstartanytoken.(Donotuse@forindentation这个问题。分享Java技术星球(自学精灵),网......
  • Go 100 mistakes - #9: Being confused about when to use generics
    Go1.18addsgenericstothelanguage.Inanutshell,thisallowswritingcodewithtypes thatcanbespecifiedlaterandinstantiatedwhenneeded. Onelastthingtonoteabouttypeparametersisthattheycan’tbeusedwith methodarguments,onlywith......
  • Go - When to use interfaces?
    CommonbehaviorDecouplingRestrictingbehavior Commonbehavior: Decoupling:Restrictingbehavior:Thelastusecasewewilldiscusscanbeprettycounterintuitiveatfirstsight.It’sabout restrictingatypetoaspecificbehavior.Let’simagine......
  • Wicket:Refused to apply inline style because it violates the following Content S
    Content Security Policy (CSP)是一种加固Web应用的安全性的技术,通过在网站页面中设置CSPHeader来限制页面中能够执行的脚本、样式、图片等资源。CSP包...参考1:https://blog.csdn.net/qq_30436011/article/details/127485927为什么我们需要CSP?参考2:https://blog.csd......
  • CodeForces 1286C2 Madhouse (Hard version)
    洛谷传送门CF传送门可以把限制看成\(0.75n^2\)。发现\(0.75n^2=0.5n^2+2\times0.5(\frac{n}{2})^2\)。这启发我们询问一次\([1,n]\)和两次长度为\(\frac{n}{2}\)的区间。不妨问\([1,n],[1,\frac{n}{2}],[1,\frac{n}{2}+1]\)试试。注意到把\([1,\frac......
  • src.serviceImpl.UserDetailsServiceImpl
    packagecom.oep.backend.serviceImpl;importcom.baomidou.mybatisplus.core.conditions.query.QueryWrapper;importcom.oep.backend.mapper.AccountMapper;importcom.oep.backend.pojo.Account;importcom.oep.backend.serviceImpl.utils.UserDetailsImpl;importor......
  • src.backend.serviceImpl.UserDetailsServiceImpl
    packagecom.oep.backend.serviceImpl;importcom.oep.backend.pojo.Account;importlombok.AllArgsConstructor;importlombok.Data;importlombok.NoArgsConstructor;importorg.springframework.security.core.GrantedAuthority;importorg.springframework.securit......
  • CF1735E House Planning 题解
    题目大意一条直线上有\(n\)个房子和两个人,房子的坐标\(d_1,d_2,d_3\dotsd_n\),以及两个人坐标为\(p_1,p_2\)。现在会告诉你两个集合\(S_1=\{|p_1-d_i|,1\leqi\leqn\}\)以及\(S_2=\{|p_2-d_i|,1\leqi\leqn\}\)。这个写法可能不是很规范,但为了美观就写成这样了。......
  • useEffect 传入的函数,它的返回值要么是一个方法(清理函数),要么就是undefined,其他情况都
    useEffect传入的函数,它的返回值要么是一个方法(清理函数),要么就是undefined,其他情况都会报错比较常见的一个情况是,我们的useEffect需要执行一个async函数,比如://❌//Type'Promise<void>'providesnomatch//forthesignature'():void|undefined'useEffect(asyn......
  • Oracle 19c enterprise manager express username password
    *[Oracle19centerprisemanagerexpressusernamepassword-Search](https://cn.bing.com/search?q=Oracle+19c+enterprise+manager+express+username+password&qs=n&form=QBRE&sp=-1&lq=0&pq=oracle+19c+enterprise+manager+express+username+passw......