[Rpm-maint] [PATCH 0/5] Add Collection Support
Steve Lawrence
slawrence at tresys.com
Thu Jun 17 19:55:22 UTC 2010
This patchset adds Collection support to rpm. Collections provide a way to
perform a common action after all members of that collection have been
installed. This removes duplicated post installation scripts that only need to
be executed once during a transaction.
For example, currently all font packages run /usr/bin/fc-cache in the %post
section. With collections, we can add all these font packages to the 'font'
collection, and remove the %post section. Once all members of the 'font'
collection are install, only then will fc-cache be run.
To perform collection actions, this patchset adds a minimal plugin system that
allows for both simple and complex collection actions. This system adds three
hooks that are executed at various stages of the RPM transaction to allow for
a wide range of control and flexibility. Included in this patchset is a generic
plugin that can be used to easily execute scripts, which should be sufficient
for the majority of collection actions.
Steve Lawrence (5):
Add new Collections preamble tag
Determine when to perform Collection actions
Add common Collection requirements
Add plugin calling support
Add a generic plugin for use by simple Collections
Makefile.am | 4 +-
build/parsePreamble.c | 4 +
collections/Makefile.am | 19 +++++
collections/collection.h | 12 +++
collections/exec.c | 31 ++++++++
configure.ac | 1 +
lib/Makefile.am | 3 +-
lib/collections.h | 27 +++++++
lib/order.c | 75 ++++++++++++------
lib/poptI.c | 4 +
lib/rpmal.c | 25 ++++++
lib/rpmal.h | 11 +++
lib/rpmtag.h | 1 +
lib/rpmte.c | 80 +++++++++++++++++++
lib/rpmte.h | 64 +++++++++++++++
lib/rpmts.h | 1 +
lib/transaction.c | 193 ++++++++++++++++++++++++++++++++++++++++++++++
macros.in | 5 +
system.h | 2 +
tests/rpmgeneral.at | 1 +
20 files changed, 535 insertions(+), 28 deletions(-)
create mode 100644 collections/Makefile.am
create mode 100644 collections/collection.h
create mode 100644 collections/exec.c
create mode 100644 lib/collections.h
More information about the Rpm-maint
mailing list