#pacman #alpm #arch-linux #arch

sys alpm-sys-ll

libalpm的原始绑定

1个稳定版本

3.0.0 2022年8月26日

#11 in #archlinux


2个crate中使用了(通过alpm-ll

GPL-3.0许可协议

295KB
7.5K SLoC

alpm.rs - libalpm的Rust绑定

Latest version Documentation

alpm.rs提供了对libalpm API的完整、安全、易用的绑定,这是pacman和其他工具使用的包管理库。

特性

  • mtree - 启用alpm_pkg_mtree_*函数
  • generate - 在构建时生成原始的alpm-sys绑定
  • checkver - 检查安装的libalpm版本与alpm.rs兼容
  • git - 定位到git master API
  • static - 静态链接到libalpm

注意:checkver与git特性不兼容。您可以使用generate特性以确保alpm.rs针对兼容的libalpm版本进行构建。

libalpm兼容性

alpm.rs始终针对libalpm的最新版本。如果没有更改API,它也可能支持之前的版本。

alpm.rs还通过git特性支持pacman的git master。

目前alpm.rs支持libalpm v13.x.x。

注意:当使用git特性时,alpm.rs会随着libalpm git master的提交更新。由于git版本不被视为稳定软件,因此不会增加主版本号。

文档

这个crate仅提供libalpm的绑定,因此没有提供libalpm的文档。您可以在libalpm (3)手册页或alpm.h中找到libalpm的文档。

alpm/examples中还有如何使用alpm crate的示例。

alpm-sys

此仓库还包含alpm-sys crate,提供libalpm的原始绑定。尽管您可能只想使用alpm crate。

我的更改

我将这个库改为完全依赖于在运行时通过libloading加载libalpm。这使得它可以在运行时作为可选依赖项使用。这对于可能需要使用libalpm但可能由于系统限制而无法使用的实用程序很有用。

签名,Noah Shanaberger。

依赖项

~93–390KB