#gtk #gnome #graphene #ffi

sys graphene-sys

libgraphene-1.0的FFI绑定

16个不稳定版本 (7个破坏性版本)

0.20.1 2024年8月12日
0.20.0 2024年7月10日
0.19.8 2024年6月19日
0.19.0 2024年2月4日
0.14.0 2021年6月22日

#921 in GUI

Download history 13043/week @ 2024-04-23 13868/week @ 2024-04-30 11489/week @ 2024-05-07 10460/week @ 2024-05-14 10040/week @ 2024-05-21 11221/week @ 2024-05-28 11983/week @ 2024-06-04 13543/week @ 2024-06-11 13010/week @ 2024-06-18 11701/week @ 2024-06-25 9873/week @ 2024-07-02 11636/week @ 2024-07-09 13849/week @ 2024-07-16 15213/week @ 2024-07-23 14193/week @ 2024-07-30 13670/week @ 2024-08-06

58,654 每月下载量
用于 129 个Crates(3个直接使用)

MIT 许可证

385KB
9K SLoC

gtk-rs-core CI

gtk-rs 组织旨在提供基于 GObject 的库的安全 Rust 绑定。您可以在 https://gtk-rs.org 上了解更多信息。

此存储库包含 gtk-rs 组织的所有“核心”Crates。有关每个Crates的更多信息,请参阅它们目录中的 README.md 文件。

最低支持的Rust版本

目前,最低支持的Rust版本是 1.70.0

文档

生态系统

gtk-rs-core 存储库包含基于 GObject 的基础库的 Rust Crates。但是,有一个庞大的 GObject 库生态系统,其中许多库基于 gtk-rs 中包含的工具进行 Rust 绑定。特别值得一提的是

此外,各种库的 Rust 绑定托管在 GNOME 的 GitLab 实例 上,可在 https://gitlab.gnome.org/World/Rust 上找到。

当使用不属于 gtk-rs 存储库的 Crates 时,您需要小心,并确保它们不会引入与核心 Crates(如 glib-rs)不兼容的版本。

重新生成

要使用 gir 重新生成存储库,请按照以下方式使用 generator.py 文件

$ python3 generator.py

如果您尚未这样做,请在通过以下方式检查所有子模块之前

$ git submodule update --checkout

开发

此存储库主要分为两个分支:mastercratemaster 包含尚未发布的代码,是新发展发生的地方。 crate 包含最后发布的源代码,不应该更新。

此存储库的结构如下

- crate/
   |
   |-- README.md
   |-- Gir.toml
   |-- Cargo.toml
   |-- src/
   |-- sys/

crate 是一个“顶级”目录(例如这里的“atk”或“gdk”)。每个存储库包含以下内容

  • README.md:关于存储库本身的说明以及一些细节。
  • Cargo.toml:存储库的描述符,由 cargoRust 使用。
  • Gir.toml:由 gir 使用的配置,用于生成大多数存储库的代码。
  • src:存储库的源代码。
  • sys:C API 的 1:1 绑定。

girgir-files 顶级文件夹不是存储库,而是包含 gir 工具和由生成器使用的 gir 文件 的 git 子模块。

运行 generator.py 时,工具将自动更新这些 git 子模块,并在 gir 文件 上运行 gir 工具以重新生成代码。

在开发过程中,使用不同的 gir 工具或 gir 文件 版本执行生成器非常有用,例如在提交更新子模块的拉取请求之前测试代码生成是否成功。这可以通过指定生成器脚本的参数来完成,例如,在本地 gir 文件的副本上运行生成器

$ python3 generator.py --gir-files-directory ../gir-files/

有关详细信息,请参阅 python3 generator.py --help

依赖关系

~0.4–360KB