目标和受众

我们的目标是让您从本书中了解到 Wayland 协议及其高级用法。您应该对 Wayland 核心协议中的所有内容有扎实的了解,并具有评估和实现生产中使用的各种扩展协议的必备知识。首先,这本书通过着重于 Wayland 的客户端来介绍其架构。此外,它也应该为 Wayland 混成器开发者提供一些实用的工具。

自由桌面生态系统十分复杂,并且由许多分离的部分所组成。我们将很少讨论这些部分——在这里你将不会找到关于在 Wayland 混成器中利用 libdrm 或者 libinput 处理 evdev 事件的信息。因此这本书不是构建 Wayland 混成器的综合指南。我们也不会讨论到图像绘制技术,如 Cairo、Pango、GTK+ 等,尽管它们对于 Wayland 客户端来说十分有用。因此,对于实际的 Wayland 客户端实现而言,这也不是一个可靠的指南。相反,我们只专注于 Wayland 的细节。

这本书只涵盖协议和 libwayland。如果你正在编写一个客户端,并且已经熟悉自己喜欢的 UI 渲染库,那么请带上自己的“像素”,我们将帮助您在 Wayland 上显示它们。如果你已经对操作混成器和输入设备所需的技术有所了解,那么本书将帮助您学习如何与客户端进行通信。