#wayland #libei #libeis

reis

Pure Rust implementation of libei/libeis protocol

7 releases (breaking)

0.6.1 Feb 17, 2026
0.6.0 Feb 12, 2026
0.5.0 Mar 31, 2025
0.4.1 Mar 31, 2025
0.1.0 Aug 13, 2023

#114 in Hardware support

Download history 1133/week @ 2026-02-12 941/week @ 2026-02-19 763/week @ 2026-02-26 1146/week @ 2026-03-05 1155/week @ 2026-03-12 1516/week @ 2026-03-19 1073/week @ 2026-03-26 966/week @ 2026-04-02 999/week @ 2026-04-09 1060/week @ 2026-04-16 1445/week @ 2026-04-23 1406/week @ 2026-04-30 1292/week @ 2026-05-07 1461/week @ 2026-05-14 1127/week @ 2026-05-21 1119/week @ 2026-05-28

5,395 downloads per month
Used in 13 crates (11 directly)

MIT license

450KB
7.5K SLoC

Reis 🍚 provides a Rust version of EI 🥚 and EIS 🍨 for emulated input on Wayland.

See the upstream project libei for more information.

This library is currently incomplete and subject to change. It should probably do more to provide a more high level API that handles the things a client/server needs to deal with.

Setting the env var REIS_DEBUG will make the library print ei messages it sends and receives.

Features

reis has the following Cargo features:

  • tokio: Enables tokio support for clients.
  • calloop: Enables calloop sources for EIS implementations. Somewhat experimental and incomplete.

Reis 🍚 provides a Rust version of EI 🥚 and EIS 🍦 for emulated input on Wayland.

See the upstream project libei for more information.

This library should be usable for both clients and servers, but the API is subject to change, and it still lacks some checks that libei does.

Setting the env var REIS_DEBUG will make the library print ei messages it sends and receives.

Dependencies

~1.6–8MB
~158K SLoC