[H-GEN] SMALL RPM PROBLEM

Tony Nugent tony at linuxworks.com.au
Thu Feb 13 01:23:18 EST 2003


[ Humbug *General* list - semi-serious discussions about Humbug and     ]
[ Unix-related topics. Posts from non-subscribed addresses will vanish. ]

On Wed Feb 12 2003 at 22:24, Jason Parker-Burlingham wrote:

> The trick here---and this is more for general edification instead of
> being addressed to Greg---is that debs are named according a pretty
> strict scheme, and as long as they don't conflict (through declared
> metadata) or try to own the same files, you're dandy.

Exactly the same situation with redhat boxes.

> For the most part it works pretty well.  I have a couple of versions
> of Python, and maybe two versions of Perl installed, and as
> many as three versions of the same kernel (same source, differenent
> .config files) installed at once.

$ rpm -qa | grep -E ^kernel-\|python | sort
kernel-2.4.18-19.7.x
kernel-2.4.18-24.7.x
kernel-2.4.18-4
kernel-2.4.18-5
kernel-doc-2.4.18-24.7.x
kernel-source-2.4.18-24.7.x
kernel-utils-2.4-7.4
python-1.5.2-43.73
python2-2.2.2-11.7.3
python2-devel-2.2.2-11.7.3
python-clap-1.0.0-3
python-docs-1.5.2-43.73
python-popt-0.8.8-7.x.2
python-xmlrpc-1.5.1-7.x.3

$ rpm -e kernel
error: "kernel" specifies multiple packages

$ rpm -e kernel-2.4.18-4
(no complaints, that kernel package has now been removed)

It obviously depends on unique namespace for the package names, and
avoidance of conflicts with the installed files.

As you pointed out, a nightmare for those who put these packages
together :)  Most of the magic is done with the .spec files that
specify how to build the packages from sources.

> Oh dear.  No need for a shell advocacy thread, people!  Stand down!

:-)

apt or rpm... there are functional differences, but they essentially
do the same things (albiet in different ways).

When I first started using redhat (5.0), some of the things rpm did
and didn't do were totally frustrating.  However, more recent
versions have vastly improved - although it won't do things like
tell you exactly what packages may be needed to supply missing
dependencies, only libraries.  (Well, not unless they are
specifically mentioned in the original .spec file as a
prerequesite).

Interestingly, more recent versions have the "rpm -ba package.spec"
(build a package from source) functionality separated into a more
specific "rpmbuild" package, rather that keep /usr/bin/rpm as a
general all-round interface to everything it can do.

Cheers
Tony

--
* This is list (humbug) general handled by majordomo at lists.humbug.org.au .
* Postings to this list are only accepted from subscribed addresses of
* lists 'general' or 'general-post'.  See http://www.humbug.org.au/



More information about the General mailing list