agama/rust/zypp-agama
2026-05-07 13:46:41 +02:00
..
benches add working C code together with bench and example 2026-02-09 14:03:02 +01:00
examples add working C code together with bench and example 2026-02-09 14:03:02 +01:00
fixtures add unit tests 2025-12-23 11:11:03 +01:00
src try to fix build failure by always using own rpmdb to prevent permissions problems 2026-05-04 12:17:34 +02:00
tests cargo fmt 2025-12-23 11:11:23 +01:00
zypp-agama-sys Improved saving libzypp service (related to bsc#1261351) 2026-05-07 13:46:41 +02:00
Cargo.toml Clean-up unused dependencies 2026-03-03 11:40:36 +00:00
README.md reorganize a code and also apply code review suggestions 2025-11-12 21:48:42 +01:00

Zypp Agama

crate which purpose is to have thin layer to libzypp for agama purpose.

How to Add New Libzypp Call

  • at first create its C API in zypp-agama-sys/c-layer/include directory and write its implementation to cxx file.
  • generate new FFI bindings (in low level, unsafe Rust), in rust/zypp-agama-sys by running cargo build
  • write a (regular, safe) Rust wrapper, in src

Libzypp Notes

  • libzypp is not thread safe
  • for seeing how it works see yast2-pkg-bindings and zypper as some parameters in calls are ignored
  • goal is to have thin layer close to libzypp and build logic on top of it in more advanced language

Interesting Resources