Generated by DeepSeek V3.2| Wayland (protocol) | |
|---|---|
| Name | Wayland |
| Developer | Kristian Høgsberg and contributors |
| Released | 03 October 2008 |
| Latest release version | 1.23 |
| Latest release date | 03 October 2024 |
| Operating system | Linux, FreeBSD |
| Genre | Display server protocol |
| License | MIT License |
Wayland (protocol). It is a modern, simplified display server protocol designed as a successor to the long-established X Window System. The protocol defines the communication between a compositing window manager acting as the display server and its clients, with an emphasis on security, performance, and ease of correct implementation. Its development has been closely associated with the Linux kernel and major desktop environment projects, fundamentally changing graphics infrastructure on free and open-source software platforms.
The core philosophy centers on a streamlined architecture where the compositor is the central authority, directly managing framebuffers, input devices, and graphics rendering. This contrasts with the client–server model of its predecessor, aiming to eliminate redundant components and complex intermediary layers. Key specifications include the core protocol itself and various extension protocols, which are often developed alongside supporting libraries like libwayland. The reference implementation of the protocol is maintained as part of the Wayland (display server protocol) project, with widespread support from organizations like the Freedesktop.org community and major Linux distribution vendors.
The project was initiated in 2008 by software engineer Kristian Høgsberg while working at Red Hat. Early development was driven by frustrations with the architectural complexities and limitations of the X Window System for modern hardware, particularly with the rise of 3D graphics and advanced compositing techniques. A significant milestone was its integration as the default graphics stack for Fedora (operating system) in 2016, signaling major desktop environment support. Ongoing development is a collaborative effort involving contributors from Canonical Ltd., Intel, Collabora, and the GNOME Project, with new protocol extensions regularly standardized through the Wayland (display server protocol) process.
Architecturally, the compositor combines the roles of window manager and display server, directly interfacing with the Linux kernel via APIs like Direct Rendering Manager and evdev. Clients communicate with the compositor over Unix domain sockets using a message passing system defined by the protocol, requesting the creation of wl_surface objects to present their graphical content. Critical design tenets include direct rendering by clients using APIs such as OpenGL or Vulkan (API), explicit synchronization of buffer swaps, and a strict separation between privileged system compositors and regular application clients. This model inherently supports secure, isolated applications and modern graphical features like multi-monitor configurations with different display resolutions.
A primary distinction is the elimination of the network transparency feature intrinsic to the X Window System, which treated local and remote applications identically but added significant overhead. The protocol also removes the X server's responsibility for font rendering, window decoration, and drag-and-drop mechanics, delegating these to the compositor or client toolkits. This results in a thinner, more secure protocol with fewer potential attack vectors, as the compositor does not need to parse complex drawing commands from untrusted clients. However, this design shifts compatibility burdens, requiring tools like XWayland to host legacy X11 applications within a Wayland (display server protocol) session.
The GNOME Project's Mutter (software) compositor and the KDE Plasma's KWin were among the first major desktop environment compositors to achieve stable support. Canonical Ltd. developed its own compositor, Mir (software), before later transitioning its Ubuntu (operating system) distribution to a Wayland (display server protocol)-based stack. Other significant implementations include the wlroots library, which underpins compositors for environments like Sway (window manager) and Hyprland, and the Weston (software) reference compositor. Major Linux distributions, including Fedora (operating system), Debian, and Arch Linux, now offer it as the default session.
The security model is fundamentally stronger because clients cannot directly access shared memory or input events belonging to other applications, a common flaw in the X Window System. Input events are routed exclusively through the privileged compositor, which can implement policies like those in systemd-managed sessions. The use of Unix domain sockets and client certificate-like mechanisms for authentication prevents unauthorized applications from connecting to the display server. This architecture naturally facilitates the containment of applications using Linux namespaces and seccomp, aligning with modern security practices in distributions like Fedora (operating system) and container technologies like Flatpak.
Category:Display server protocol Category:Free software programmed in C Category:Linux display-related software