[CentOS] Selectively updating protected repos

Sun Jul 2 13:55:59 UTC 2006
Maciej Żenczykowski <maze at cela.pl>

> Per repo excludes and/or includepkgs can be used to make things work
> though ...
>
> That may be hard to do ... but that is how yum works.

I haven't read much on the topic.  However, here's a suggestion.

Group repos into groups.  When doing yum list, list the most current 
packages from _each_ repogroup.

Ie, current behaviour:

[maze at tcs ~]$ yum list php
Available Packages
php.i386                                 4.3.9-3.12             updates

[maze at tcs ~]$ yum --enablerepo=centosplus list php
Available Packages
php.i386                                 5.0.4-5.centos4        centosplus

desired behaviour (assuming centosplus and updates are in different repo 
groups):

Available Packages
php.i386                                 4.3.9-3.12             updates
php.i386                                 5.0.4-5.centos4        centosplus

This means you can choose which repo to install the given package from.
Possibly yum install php would now ask you to select a repogroup  (ie. 
The package php is available from the following repogroups:
1. centos base/addons/extras/updates
2. centosplus
Please select the repogroup to use for this package:)

Example groups:
- centos: base/addons/extras/updates
- centosplus
- dag/dries
- etc...

Next, keep a database (maybe just a text file) from which repo (or 
repogroup) each package was installed, and consider only packages from the 
same repogroup to be valid upgrade paths.  And refuse to install stuff 
that would require a cross-repogroup upgrade (or make a big fat warning 
dialog y/n default no box).

Comments?
MaZe