Subject: pkg vs. rpm
To: None <tech-pkg@netbsd.org>
From: Hubert Feyrer <feyrer@rfhs8012.fh-regensburg.de>
List: tech-pkg
Date: 12/29/1998 16:51:58
Over my holidays, I found time to read the RPM book (Edward C. Bailey:
Maximum RPM; ISBN 0-672-31105-4; also available as PostScript somewhere
Online). Here's a quick comparison of the things where it is better ("+")
or worse ("-") than NetBSD, plus other comments ("*").
- Weak build system: only a few macros for extracting & patching sources
+ strong file handling via binary pkgs
+ config file handling (does backups)
+ better integration of MD5 checking
+ general emphasize on binary packages (yes, I count this as an
advantage!), building remains as an alternative.
+ list of files belonging to a package aren't stored on a per-package
base, but rather are stored in one place, allowing mapping of a single
file back to it's package (so you can find out which package a file
belongs to)
+ ability to include (and remove :-) whole directories in pkgs' PLIST
(-equivalents)
+ Absolute paths in file lists, relocated if necessary -> allows for
packages to span more than one base-dir
+ Subpackages: generate several (binary!) packages from one (1) build,
e.g. get a pico and a pine package at the same time
+ library + API for accessing information stored in RPM DB
* Package upgrading (by first removing old package, then installind new
one; possible due to weak dependencies support)
- dependencies handling is weak due to require/provide mechanism, no
build-in, automatic installation of depending packages.
+ Flexible querying: documentation for a package, config files of a
package, packages can be named by name or by handing one of it's files;
query language (ok, this might be some sort of overkill... :-)
+ Verifying of packages (owner, permissions, file contents via MD5, ...)
- The existence of SRPMS (source packages including unmodified sources
plus patches plus build descrption) contradicts (IMHO) the "pristine
source" concept.
+ Cleaning of the building dir before/after building (we sometimes run
into this...)
* Some support for non-/-based building and non-root-building is
available, but of questionable use for general packages
* Some multi-architecture support is available to conditionalize file
lists, build instructions, ...
- Copyright.
In short, RPM's handling of binary files is very good, while it's building
system is very week, compared to the NetBSD one. We should implement some
of the concepts for handling binary pkgs.
- Hubert
--
Hubert Feyrer <hubert.feyrer@rz.uni-regensburg.de>