#wayland-client #wayland-protocol #wayland #client

wayrs-protocols

用于与 wayrs-client 一起使用的 Wayland 协议集合

23 个不稳定版本

0.14.2 2024 年 8 月 9 日
0.14.1 2024 年 5 月 3 日
0.14.0 2024 年 4 月 19 日
0.13.2 2024 年 3 月 7 日
0.5.0 2023 年 3 月 25 日

#9 in #wayland-protocol

Download history 822/week @ 2024-04-23 693/week @ 2024-04-30 452/week @ 2024-05-07 420/week @ 2024-05-14 397/week @ 2024-05-21 395/week @ 2024-05-28 360/week @ 2024-06-04 460/week @ 2024-06-11 424/week @ 2024-06-18 363/week @ 2024-06-25 352/week @ 2024-07-02 489/week @ 2024-07-09 561/week @ 2024-07-16 421/week @ 2024-07-23 437/week @ 2024-07-30 496/week @ 2024-08-06

2,001 每月下载量
7 crates 中使用

MIT 许可证

230KB
1.5K SLoC

wayrs

Wayland 客户端库的简单 Rust 实现。

设计决策

  • 单事件队列
  • 无内部可变性
  • libwayland 兼容性
  • 支持阻塞、非阻塞和异步 IO

项目状态

  • 主crate,wayrs-client,功能完整且稳定。

项目结构

项目分为多个 crate

  • wayrs-client:主crate,实现 Wayland 线协议。提供表示打开的 Wayland 套接字的 Connection 类型,管理对象和处理回调。
  • wayrs-protocols:用于与 wayrs-client 一起使用的 Wayland 协议集合。
  • wayrs-utils:用于 wayrs-client 的实用工具和抽象。包括共享内存分配器等。
  • wayrs-egl:将 OpenGL(-ES) 带到 wayrs。基于 EGL_KHR_platform_gbm
  • wayrs-scanner:实现从 .xml 文件生成粘合代码的 .wayrs_client.generate! 宏。核心协议的生成代码已包含在 wayrs-client::protocol 中。请不要直接使用此 crate。
  • wayrs-proto-parser:解析 wayland .xml 文件。由 wayrs-scanner 使用。
  • wayrs-core:核心类型、序列化和反序列化实现。可供客户端和服务器使用。

使用 wayrs 的项目

以下项目使用 wayrs,可以作为额外的使用示例

MSRV

1.72

依赖项

~3.5MB
~64K SLoC