[Forward Content] 【翻译】更多Wayland调试工具
Tofloor
poster avatar
enforcee
deepin
2023-05-20 05:23
Author

这个是Wayland官网文章的翻译。原文链接:https://wayland.freedesktop.org/extras.html

主页(已翻译):https://bbs.deepin.org/post/256834

这是这次翻译计划中最后一篇文章。可以在帖子下面提出改进建议,感谢各位坛友的支持。


这个页面介绍了一些Wayland专用的调试工具。

合成器特性

运行 wayland-info命令会列出所有合成器公开的全局接口。他也会介绍他能知晓的其他接口信息,并且报告显示器制造商(make)和型号、wl_seat容纳设备(capabilities),wl_shm像素格式等信息。wayland-infowayland-utils(原文)工程的一部分(译注:其实这个工程现在只有他一个命令),可以使用在任何合成器上。

OpenGL特性

(译注:原文中的链接被别的组织占去了,我已经给换成正确的页面。)

OpenGL(各种改版)在Wayland中的特性都可以用 wflinfo查询。他是Waffle(原文)的一部分。用 -p wayland参数就可以了。

协议转存器(dumper)

如果说 export WAYLAND_DEBUG=1(或 WAYLAND_DEBUG=clientWAYLAND_DEBUG=server)还不够用(原文)的话,可以尝试以下工具。

· wayland-tracker(原文)

一个Wayland协议转存器,使用MIT许可证,Haskell语言编写,产出二进制、纯文本和JSON格式的文件。原理是做单个客户端的「中间人」(middle-man)(译注:这是一个网络安全上使用的术语,比如「中间人攻击」)。

· wayland-tracer(原文)

一个Wayland协议转存器,使用MIT许可证,C语言编写,产出二进制和方便人类阅读的格式。可以做单个客户端的中间人,也可以做中间人代替整个Wayland服务器。

· wlanalyzer / wldump(原文)

一个Wayland协议转存器,使用MIT许可证,C++语言编写,产出方便人类阅读的格式。做单个客户端的中间人。

· wldbg(原文)

一个Wayland连接处理器,使用MIT许可证,C语言编写。在服务器和客户端之间传递的信息上运行给定的函数,也可以使用gdb一样的模式运行。可以窃听与合成器的新连接建立并取代他们。

做单个或者多个客户端的中间人。

检视(introspection)工具

· GammaRay(原文)

GammaRay

一个为Qt应用制作的软件检视工具,包含一个为QtWayland合成器使用的模块(module)。借助libwayland-server检视API和QtWayland API,他可以观察已经连接的客户端列表、他们各自的资源和基于各种资源类型的相关信息,以及客户端和服务器之间的协议流(protocol flow)。(译注:不是专门为Wayland设计的,而是专门调试Qt应用的软件。)

· wlhax(原文)

一个终端用户界面的应用程序,原理是类似一个Wayland代理(proxy)。他监视并显示Wayland连接情况,比如当前的表面(surface)树。

Reply Favorite View the author
All Replies

No replies yet