[Rpm-maint] [PATCH v2 3/5] Add common Collection requirements
Panu Matilainen
pmatilai at laiskiainen.org
Tue Jun 22 09:12:53 UTC 2010
On Mon, 21 Jun 2010, Steve Lawrence wrote:
> This patch adds the install-time feature that if a package requires a
> package in a collection, then it also requires all other packages in
> that collection. This has the effect that collections will be roughly
> grouped together during a transaction.
>
> Although this is not absolutely necessary for the majority of
> collections, it is required for the SELinux collection. This is because
> all SELinux policies must be installed before the applications they
> secure to ensure correct labels. This means we must ensure packages in
> the selinux collection are ordered earlier in the transaction than all
> applications they protect. Adding this implicit runtime requirements
> achieves this in a general manner, without major modifications to
> dependency ordering.
It can have the effect of creating gigantic dependency loops, causing
severe ordering problems elsewhere (playing around with a quick-n-dirty
runtime hack to generate ldconfig-collection and subscribing all packages
providing sonames to it). In the library-case, the extra grouping makes
pretty much everything pre-require everything else and poor rpm ending up
ripping them apart again the best it can, with *cough* less than optimal
results :)
Of course packages with libraries are a wildly different situation from
selinux policies. It's quite possible we'll need some additional flags to
control collection behavior - some cases absolutely require some special
ordering, for others it might be not just unnecessary but actually harmful
too.
I suppose moving the collection ownership to packages would help here:
packages in a collection would then just require the collection owner
instead to accomplish rough grouping in ordering without adding too many
extra dependency loops. Packages belonging to several collections might
prove "interesting" here though...
- Panu -
More information about the Rpm-maint
mailing list