rule-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Rule-list] scripts for RPM dependencies analysis


From: Marco Fioretti
Subject: Re: [Rule-list] scripts for RPM dependencies analysis
Date: Fri, 26 Jul 2002 23:41:31 +0200
User-agent: Mutt/1.2.5.1i

On Fri, Jul 26, 2002 01:13:39 at 01:13:39AM +0200, Martin Stricker wrote:
> 
> > Another output I'd like from it is to say: you need to install this
> > RPM, but only 50% of its files are actually needed by other packages,
> > you can safely remove the rest.
> 
> While this can be very useful, there is danger in this direction. One
> problem is updating RPMs, another (and possibly very serious!) one is
> installing additional packages later - one of them might need one of the
> deleted files. So the RPM database needs to be fixed, too. But then a
> normal user (remember, one of our targets are schools and poor people!)
> would ask "where do I find /usr/local/lib/foo.so?" and gets
> "foo-1.0.0-i386.rpm", only to discover that it's already installed.

Absolutely correct.

I see two uses of this yet to be written tool. The first is to build
ISO images (i.e. *not* run *during* the installation, but before, to
create comps files and such. Of course, this creates exactly the
problems that you mention, and should have written in big letters "do
it only if you really know what you are doing, and at your risk,
otherwise stick to standard (RULE or Red Hat) images".

The second use, (the first I am interested in) is as analysis tool.
Something like that would make possible:

        to make decisions after install about what could be removed

        (even more important) "quality" checks of packages. If we
        find out that X.rpm carries on after itself 30 more megs of
        disk because (is the only package wich) requires Y.rpm,
        Z.rpm and W.rpm while actually needing only one file from
        each of them, we can contact the maintainer and ask him to
        patch the spec file of X.rpm.
        Similarly, if someBIGlib.rpm contains 100 files, but the first 50
        are only needed by gcc and the others only by Xfree, or only
        for Japanese support, we contact the maintainer and suggest
        splitting someBIGlib.rpm in two small pieces.

I have the feeling that both cases are quite frequent today. I can
personally report that the Xemacs rpm for RH 7.2 on www.rpmfind.net
gives a binary that will crash on an english system if the canna lib
for Japanese fonts are not on the system.

About how to do it, I was thinking to something like:

1) run rpm -q --requires, --whatrequires and others option on every
RPM in the three standard RH disks, dumping everything to a flat file.

2) Chew that file with Perl until it produces for every package the
information we need.

Of course I have still to figure out part 2.... OK, too late
tonight...

        Ciao,
                Marco Fioretti


-- 
They can't stop us... we're on a mission from God!
                -- The Blues Brothers



reply via email to

[Prev in Thread] Current Thread [Next in Thread]