将Linux与Wayland一起使用?您需要知道的

Linux桌面的方面一直在变化,但是某些组件已经存在了数十年。以X窗口系统(主要称为X)为例。正在努力创建更快,更安全的替代品。替换是Wayland。

Wayland已经很长时间了,并且许多基于Linux的操作系统都将其作为默认显示服务器协议。如果您还没有,那么有机会很快。这就是将Linux与Wayland一起使用的含义。

什么是Wayland?

Wayland是一种协议,根据您的操作(例如, (例如,围绕移动窗口或单击按钮)。从技术上讲,Wayland本身并不能替代X服务器-Wayland仅定义了这种显示服务器与这些应用程序进行通信的方式。

Wayland依赖于第三方,即Wayland合成器,用作显示服务器。示例包括Mutter和KWin(分别为GNOME和KDE Plasma桌面)。 Wayland尝试简化显示服务器的通信,使未来的开发更加轻松快捷。

与许多未来的技术一样,Wayland也有很多工作要做。 X已经存在很长时间了,并且已经稳步建立。这意味着Wayland有很多工作要做(以及实现它的显示服务器)。但是目前,要使测试更加流畅还需要了解几件事。

在Wayland上避免使用GTK + 2或Qt 4应用

与您交互的大多数Linux应用每天为两个图形工具包之一编写GTK +和Qt。这些框架充当显示服务器的客户端,要求将内容绘制到屏幕上。但是,首先需要了解这些要求,这取决于工具箱。

因此,实际上只有某些类型的程序可以在Wayland台式机上运行。例如,GTK + 3程序也可以正常运行。用Qt 5(Plasma桌面基于该工具包)编写的程序也可以。

话虽如此,如果您尝试打开某个Qt 4应用程序,您将有很大的机会它正在运行。 Wayland通过在幕后运行X服务器来侦听它无法理解的应用程序。但是,这可能导致更高的内存使用率和更低的速度。另外,有些方法目前尚无法使用这种方法。

某些应用与Wayland不兼容

Wayland和X的设计方式不同,因此有些与X配合使用的应用程序根本无法在Wayland上使用。

考虑像Redshift和f.lux这样的屏幕变色应用程序。这些应用会根据一天中的时间过滤显示的蓝光。它们使用X扩展名(例如RandR)运行,RandR为程序提供了一种要求X更改屏幕显示的简单方法。

Wayland提供了某种方式来重新创建此功能的方法,但它依赖于每个Wayland合成器实际实施。这意味着尽管一个桌面环境可能支持Redshift之类的功能(例如上图所示的GNOME夜灯功能),但该功能不一定在其他地方可用。

您可能会在屏幕上遇到类似的问题录音软件。作为一项安全功能,Wayland显示服务器阻止应用程序记录屏幕。这并不是说在Wayland上根本不可能进行屏幕录制。开发人员正在以不同的方式实现该功能。

必须进行合成

合成是一种有助于防止屏幕撕裂和伪影的技术。通常是在图形卡的帮助下,将显示器的副本保存在内存中,以实现此目的。这样,即使应用停止响应,您的显示服务器仍然可以使用。合成还提供了窗口动画和阴影。

Wayland被设计为通过强制使此过程比X高效得多。 X通过称为Xcomposite的扩展将合成作为可选功能。但是由于它的实现方式,与Wayland相比,它要花更多的时间。

话说回来,合成可能会导致一些问题。合成导致程序(例如游戏)的性能略低。在X中,当应用全屏显示时,大多数台式机都会关闭合成功能。但是,许多Wayland合成器仍然需要实现这一点。如果您有兴趣在Wayland桌面上使用图形密集型程序,请记住这一点非常重要。

Nvidia Graphics可能不适用于Wayland

更具体地说,如果您使用Nvidia的专有图形驱动程序,Wayland可能对您不起作用。这与上面的合成问题有关。为了使该过程正常运行,您的图形驱动程序必须以某种方式与Wayland合成器进行通信。

Intel和AMD显卡没有此问题,因为它们使用了称为GBM(通用缓冲区)的预期标准。管理)。 Nvidia相信他们与Wayland的交流方式(称为EGL)更好,因此坚持使用。

此问题可以通过两种方式解决:Nvidia驱动程序实现GBM,或者Wayland合成器实现EGLStreams。 。当前,Nvidia似乎对追求以前的解决方案不感兴趣。

如何使用Wayland

在这一点上,大多数Linux发行版都提供了安装Wayland的选项,但大多数仍通过X运行默认。您可以在发行版的存储库中搜索Wayland,从桌面注销,然后在重新登录时选择Wayland。

Fedora是最早逆转这种趋势的发行版之一,默认情况下已运行Wayland来进行发行。几年了。 Fedora以使用Linux桌面必须提供的最新技术而著称,同时也相当有用。但是Fedora并不孤单。

  • Fedora
  • Debian
  • openSUSE Tumbleweed
  • PureOS
  • Red Hat Enterprise Linux
  • SUSE Enterprise Linux
  • 为什么没有更多发行版进行切换?许多人正在等待更多问题解决。许多人期望使用Nvidia专有的图形驱动程序来获得最佳的游戏体验。有些人想录制他们的屏幕以创建播客或在线流视频。

    鉴于显示服务器并不是我们大多数人都注意到的东西,发行商并不急于引入此类明显的问题以换取利益,虽然真实,但主要存在于幕后。而且,如果您尝试使用远程桌面修复问题,那只是在Wayland下可能会或可能无法解决的问题。

    详细了解以下内容:Display Server,Linux。

    标签: