php8.5
Home/ Manual/ rpminfo / functions/ rpmdefine

rpmdefine

PHP function Edit on GitHub ✎

(PECL rpminfo >= 1.2.0)

Define or change a RPM macro value

Description

rpmdefine(string $text): bool

Define or change a RPM macro value.

This can be used to select the database path and backend to use instead of system default one.

Parameters

text

Macro name, options, body.

Return Values

Success

Examples

A rpmdefine() example

php
<?php
// use an old database (bdb) from an EL-8 chroot
rpmdefine("_dbpath /var/lib/mock/almalinux-8-x86_64/root/var/lib/rpm");
rpmdefine("_db_backend bdb_ro");
print_r(rpmdbinfo("almalinux-release")[0]["Summary"]);

// use a new database (sqlite) from a Fedora-41 chroot
rpmdefine("_dbpath /var/lib/mock/fedora-41-x86_64/root/usr/lib/sysimage/rpm");
rpmdefine("_db_backend sqlite");
print_r(rpmdbinfo("fedora-release")[0]["Summary"]);
?>

The above example will output:

output
AlmaLinux release file
Fedora release files

See Also

Source: reference/rpminfo/functions/rpmdefine.xml · from the official PHP manual (php/doc-en)