#wayland #client #server #protocol #extension

wayland-protocols

Generated API for the officials wayland protocol extensions

51 releases (9 breaking)

0.21.0-alpha1 Jul 18, 2018
0.20.12 Aug 15, 2018
0.20.11 Jul 17, 2018
0.14.1 Mar 9, 2018
0.7.6 Nov 12, 2016

#5 in GUI

Download history 2248/week @ 2018-06-10 2327/week @ 2018-06-17 2277/week @ 2018-06-24 2746/week @ 2018-07-01 2225/week @ 2018-07-08 2448/week @ 2018-07-15 3332/week @ 2018-07-22 2490/week @ 2018-07-29 3265/week @ 2018-08-05 2908/week @ 2018-08-12 2788/week @ 2018-08-19 2898/week @ 2018-08-26 2699/week @ 2018-09-02

11,550 downloads per month
Used in 162 crates (3 directly)

MIT license

235KB
3.5K SLoC

crates.io Build Status codecov

Wayland client

These are bindings to the reference implementation of the wayland protocol. This is not a pure rust implementation of the wayland protocol, and thus requires libwayland-client.so to be available.

This repository actually hosts 6 crates. The 4 main crates you'll likely want to use:

  • wayland-client and wayland-server are the main crates for client and server side bindings
  • wayland-protocols regroups bindings on the official protocol extentions available
  • wayland-commons contains various definitions that are used by the other crates. It is re-exported in both wayland-client and wayland-server.

And 2 internal crates, that you'll need only for integrating a custom protocol extension:

  • wayland-sys is the actual C bindings, on which the crates are built
  • wayland-scanner is the crate used to convert the XML protocol specifications into rust code

Documentation

The documentation for the master branch is available online.

The documentation for the releases can be found on docs.rs:

Requirements

Requires at least rust 1.20 to be used (using bitflags 1.0 for associated constants), and version 1.12 of the wayland system libraries.

Dependencies

~2MB
~27K SLoC