[oclug] Extracting and verifying RPM dependency information
Gilles J. Seguin
segg at infonet.ca
Thu Apr 28 04:56:58 EDT 2005
On Wed, 2005-04-27 at 15:15, Walt Sullivan wrote:
> I'm trying to set up MythTV for a friend who is at the end of a slow
> dialup. Therefore, I want to use my DSL connection to download the
> necessary, burn it to CD, and sneakernet it out to the boondocks.
>
> However, I'm finding it difficult to find out what's "necessary".
>
> I've fetched some .rpms:
>
> libmyth-0.18-104.rhfc2.at.i386.rpm mythtv-backend-0.18-104.rhfc2.at.i386.rpm
> libmyth-devel-0.18-104.rhfc2.at.i386.rpm mythtv-frontend-0.18-104.rhfc2.at.i386.rpm
> mythtv-0.18-104.rhfc2.at.i386.rpm mythtv-setup-0.18-104.rhfc2.at.i386.rpm
> mythtv-0.18-104.rhfc2.at.src.rpm mythtv-themes-0.18-104.rhfc2.at.i386.rpm
>
> and used "pm --query --requires --package xxxxxxx" to see what the
> .rpms depend on.
>
> How can I check this dependency information on a remote system?
>
> That is, I'd like to e-mail my friend a script/program he can run on
> his system (Fedora Core 2, I think, but I didn't install it, and I'm
> not sure what really got installed) to evaluate the dependencies
> there. His system (probably FC2) is not the same as mine, so my
> dependencies don't apply.
>
> Also, given that the dependencies for (the "rpm --query --requires
> --package ..." output), say libmyth-devel-0.18-104.rhfc2.at.i386.rpm,
> look like this:
>
> alsa-lib-devel
> arts-devel
> freetype-devel >= 2
> lame-devel
> libiec61883-devel >= 0.1.0svn49
> libmyth = 0.18
> lirc-lib-devel
> mysql-devel
> nvidia-graphics-devel
> qt-devel >= 3
> rpmlib(CompressedFileNames) <= 3.0.4-1
> rpmlib(PayloadFilesHavePrefix) <= 4.0-1
>
> how can I check them without using rpm?
>
> Is there a function I can invoke from Perl (or something) on the
> target system that will give a correct, valid. yes-or-no answer to
> "rpmlib(CompressedFileNames) <= 3.0.4-1"?
in following lines "needs rpmdb-redhat package"
==========================
--redhatprovides find package name that contains a provided
capability (needs rpmdb-redhat package
installed)
--redhatrequires find package name that contains a required
capability (needs rpmdb-redhat package
installed)
More information about the OCLUG
mailing list