21 releases (12 breaking)
|new 0.13.0||Dec 9, 2023|
|0.12.0||Nov 11, 2023|
|0.11.0||Oct 11, 2023|
|0.8.0||Jul 24, 2023|
|0.4.0-beta.1||Mar 25, 2023|
#185 in Hardware support
397 downloads per month
Used in 4 crates
A simple Rust implementation of Wayland client library.
- Single event queue
- No interior mutability
- Support blocking, non-blocking and async IO
The project is split into multiple crates:
wayrs-client: The main crate which implements Wayland wire protocol. Provides
Connectiontype which represents open Wayland socket.
generate!macro that generates glue code from
.xmlfiles. Generated code for the core protocol is already included in
wayrs-client. Reexported as
wayrs-protocols: A collection of Wayland protocols to use with
wayrs-utils: A collection of utils and abstractions for
wayrs-client. Includes a shared memory allocator and more.
wayrs-egl: Brings OpenGL(-ES) to
wayrs. Based on
The following projects use
wayrs and may serve as additional usage examples:
i3bar-river: Port of i3bar for river.
i3status-rs: Feature-rich and resource-friendly replacement for i3status.
river-kbd-layout-watcher: Prints current keyboard layout whenever it changes.
wayidle: Waits until the compositor reports being N seconds idle.
wl-gammarelay-rs: Provides DBus interface to control display temperature and brightness without flickering.
wlr-which-key: Keymap manager for wlroots-based compositors.