librpm 0.2.0

RPM Package Manager library binding with an idiomatic Rust API
docs.rs failed to build librpm-0.2.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: librpm-0.2.1

librpm.rs: RPM Package Manager binding for Rust

Crate Build Status MPL-2.0 Licensed

The librpm C library (available in the rpm-devel RPM package) exposes a programmatic interface to the RPM Package Manager, and this crate aims to provide a safe, idiomatic Rust wrapper.

Supported Platforms

librpm.rs is tested against the following distributions:

Distribution RPM Version DB Backend
CentOS Stream 9 4.16 SQLite
CentOS Stream 10 4.19 SQLite
Fedora 44 6.0 SQLite

Older distributions using BerkeleyDB (e.g. CentOS 7, RHEL 7) are no longer tested or supported. Other distros (SUSE variants, Fedora versions other than 44) should work but are not currently tested.

RHEL 8 support may be added in the future, but is not a current priority.

Status

  • Search and query RPM database by tag with exact match, glob, and regex
  • RPM database management: create database, delete database
  • Install and upgrade packages
  • Version comparison support (i.e. dependency sets)
  • RPM reader API (i.e. for .rpm files)
  • RPM builder API (i.e. librpmbuild)
  • RPM signing API (i.e. librpmsign)

License

Copyright (C) RustRPM Developers

This library is free software. For more information on free software, see https://www.gnu.org/philosophy/free-sw.en.html.

This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/.