RPM-Query
view release on metacpan or search on metacpan
# NAME
RPM::Query - Perl object overlay of the RPM query command
# SYNOPSIS
use RPM::Query;
my $rpm = RPM::Query->new;
my $pkg = $rpm->query('perl');
my $requires = $pkg->requires;
foreach my $capability (@$requires) {
printf "Capability: %s\n", $capability->name;
my $whatprovides = $capability->whatprovides;
foreach my $package (@$whatprovides) { #could be zero or more but normally one
printf " Package: %s\n", $package->package_name;
}
}
# DESCRIPTION
# METHODS
## query
Returns an the last object of the passed in package name or undef if not installed.
my $package_obj = $rpm->query("my_package") or die("my_package is not installed");
my $long_name = $package_obj->package_name;
Wrapper around
$ rpm --query | tail -n 1
perl-5.16.3-299.el7_9.x86_64
## query\_list
my $packages_aref = $rpm->query("kernel");
Wrapper around
$ rpm -q kernel
kernel-3.10.0-1160.76.1.el7.x86_64
kernel-3.10.0-1160.80.1.el7.x86_64
kernel-3.10.0-1160.81.1.el7.x86_64
kernel-3.10.0-1160.83.1.el7.x86_64
kernel-3.10.0-1160.88.1.el7.x86_64
## details
Returns a HASH data structure of the details of the passed in package name.
my $hash = $rpm->details("my_package");
my $version = $hash->{'version'};
Wrapper around
$ rpm --query perl --queryformat '%{name} %{version} ...'
perl 5.16.3 ...
## verify
Returns true if verify is clean
( run in 0.466 second using v1.01-cache-2.11-cpan-39bf76dae61 )