Wayland logo

The Wayland Protocol Drew DeVault

Wayland is the next-generation display server for Linux, BSD, and Unix-like systems, designed and built by the alumni of the venerable Xorg server for desktops, mobile, embedded systems, and more. Wayland is the best way to get your application displayed on your user's screen. Readers who have worked with X11 in the past will be pleasantly surprised by Wayland's improvements, and those who are new to graphics on Unix will find it a flexible and powerful system for building graphical applications and desktops.

This book will help you establish a firm understanding of the concepts, design, and implementation of Wayland, and equip you with the tools to build your own Wayland client and server applications. Over the course of your reading, we'll build a mental model of Wayland and establish the rationale that went into its design. Within these pages you should find many "aha!" moments as the intuitive design choices of Wayland become clear. Welcome to the future of open source graphics!

Read the drafts

This book is incomplete, but for a discounted price you can get access to the drafts now. By purchasing the book, you'll also be able to send links to specific chapters for your friends to reference, and will have access to the full book upon its release. The book is provided in digital form in your web browser.

Want to try before you buy? Read the first 2 chapters free.

or access your purchase here

Your payment details are transmitted securely to Stripe and are never handled directly on our servers.

Working on an open-source project and can't pay the fee? Send me an email for free access.

About the author

In the words of Preston Carpenter, a close collaborator of Drew's and author of the "Way Cooler" Wayland compositor:
Drew Devault got his start in the Wayland world by building sway, a clone of the popular tiling window manager i3. It is now the most popular tiling Wayland compositor by any measure: users, commit count, and influence. Following its success, Drew gave back to the Wayland community by starting wlroots: unopinionated, composable modules for building a Wayland compositor. Today it has bindings for 7 programming languages and is the foundation for dozens of independent compositors.