Can't add or remove packages in FC4

BRUCE STANLEY bruce.stanley at prodigy.net
Wed Jul 20 18:09:40 UTC 2005



--- Robert Locke <lists at ralii.com> wrote:

> On Wed, 2005-07-20 at 10:21 -0700, BRUCE STANLEY
> wrote:
> > <snip> 
> > Thanks James!  That does clear it up a bit.
> > The man page on rpm is not clear on this.
> > I have even read 'threads' where 'PACKAGE-FILE'
> > and 'PACKAGE-NAME' seem to be used
> interchangeably.
> > 
> > At what point on a rpm FILE name does the package
> > name end?  
> >   examples: 
> >               prodproductABC1.4.i386.rpm
> >               prodproductABC1.4.noarnoarch
> >              
> prodproductABCelopment.1.01.4.i686.rpm
> > 
> > In other words,  is the PACKAGE-NAME always the
> > string just prior to the '.i386, .i686,
> .noarnoarchc'?
> > 
> > 
> >  
> 
> Allow me to try another form....
> 
> Generally the "package filename" is constructed from
> a few
> components....
> 
> package-version-release.arch.rpm
> 
> Now, internally, what I have labeled "release" is
> also referred to as
> "EXTRAVERSION", but I like to differentiate it as a
> separator between
> what the upstream developer created and what the
> "packager/RedHat" has
> done.
> 
> In general, version will match up with a base
> version of the software as
> delivered from the "developer" which in many cases
> is done by an
> individual or group outside of RedHat.  RedHat then
> takes that base code
> and "patches" it to allow it to a) work on the
> RedHat distribution, b)
> fix a compatibility issue with some other package on
> the distribution,
> or c) backport a security fix so the fundamental
> version stays
> "stable"...  The "patching" that the
> "packager/RedHat" does is reflected
> in the incrementing value of what I labeled
> "release".  You can find out
> what the packager has done to a particular rpm by
> investigating it's
> "changelog":  rpm -qp --changelog
> package-version-release.arch.rpm, or
> if the package is already installed: rpm -q
> --changelog package
> 
> When using rpm, it is more a question of where it is
> looking up
> information.  When installing software (rpm -i, -U,
> or -F), you need to
> specify the location of the "package filename".  By
> the way, once the
> software is "installed" we no longer need the
> "package filename".  When
> removing software or querying, you are accessing the
> database.  The
> database tracks the package, using a few different
> forms.  You and I
> need to ensure that the form we choose to use is
> specific enough to
> uniquely identify the package we mean inside the
> database....
> Consequently I can use:
> 
> package
> package-version-release
> package-version-release.arch
> package.arch
> 
> when utilizing rpm with -e, -q, -V type options
> since they all generally
> point to the database.
> 
> HTH,
> 
> --Rob
> 

Thanks for the clarity Rob.
I will play with this a little more when
I get home tonight.

I's assuming I could do the following to clean
up the rpm database (since I removed gnuchess by
hand):

    rpm -iv  --force   gnuchess-*.rpm
    rpm -ev            gnuchess





More information about the fedora-list mailing list