129 个版本

0.31.4 2024 年 7 月 16 日
0.31.2 2024 年 5 月 31 日
0.31.1 2024 年 1 月 29 日
0.31.0 2023 年 9 月 2 日
0.7.6 2016 年 11 月 12 日

#450GUI

Download history 3560/week @ 2024-05-05 3393/week @ 2024-05-12 3036/week @ 2024-05-19 3211/week @ 2024-05-26 3353/week @ 2024-06-02 2568/week @ 2024-06-09 2707/week @ 2024-06-16 3076/week @ 2024-06-23 3140/week @ 2024-06-30 7389/week @ 2024-07-07 8271/week @ 2024-07-14 8671/week @ 2024-07-21 5558/week @ 2024-07-28 7896/week @ 2024-08-04 6541/week @ 2024-08-11 3328/week @ 2024-08-18

24,119 每月下载量
13 个 Crates 中使用 (12 直接)

MIT 许可证

435KB
9K SLoC

crates.io docs.rs Continuous Integration codecov

wayland-server

Wayland 协议的服务器端 API。此 crate 提供操作 Wayland 对象的基础设施,以及核心 Wayland 协议的对象定义。通过结合此 crate 和 wayland-protocols,可以支持协议扩展,后者提供了大量扩展的对象定义。

注意: 此 crate 是对 Wayland 协议的低级接口。如果您正在寻找一个包含更多功能的工具包来编写 Wayland 服务器,您可以考虑 Smithay,它是一个基于此构建的 Wayland 服务器框架。

该 crate 对 Wayland 协议序列化有不同后端

  • 默认情况下,它使用纯 Rust 实现的协议,包含很少的 unsafe 代码。
  • 激活 use_system_lib 将使其绑定到系统的 libwayland-server.so。这允许您访问 Wayland 对象的 C 指针版本,这对于与其他非 Rust Wayland 相关库(如 OpenGL 支持,请参阅 wayland-egl crate)的接口是必要的。
  • 激活 dlopen 意味着 use_system_lib,但此外,该 crate 不会明确链接到 libwayland-server.so,而是尝试在运行时打开它,如果找不到它,则返回错误。这允许您构建可以在非 Wayland 环境中优雅运行的应用程序,而无需编译时开关。

依赖关系

~3–12MB
~142K SLoC