Heads-up: brand new RPM version about to hit rawhide

Doug Ledford dledford at redhat.com
Fri Jul 11 16:03:40 UTC 2008


On Fri, 2008-07-11 at 18:43 +0300, Panu Matilainen wrote:
> On Fri, 11 Jul 2008, Doug Ledford wrote:
> 
> > On Wed, 2008-07-09 at 13:51 +0300, Panu Matilainen wrote:
> >> At long last, we are about to get a brand new RPM version (alpha snapshot
> >> at the moment) into rawhide. The list of changes from 4.4.2.x is massive
> >> and a full summary needs a separate posting (will follow as time permits),
> >> this is just a heads-up of immediate consequences for Fedora packagers and
> >> rawhide consumers:
> >
> > [ snip ]
> >
> > This is great and all, but my first reaction was "Oh hell...what a
> > colossal waste of time" referring to the fact that I've spent the last
> > week or so pouring over rpm source code trying to see exactly what's
> > needed to implement some things.
> 
> You could've just asked :)

Yeah, I know, I just didn't know a big update like this was in the
works.

> > So, that being said, if we are going to make this change in Fedora,
> > especially one that involves all this "backup for rpmdb, rebuild your
> > rpmdb, feed your rpmdb cake" stuff, can we make it a flag day and add a
> > few new fields to the rpmdb schema and bump the rpmdb version?
> 
> What schema? :) The rpmdb isn't exactly like your average SQL database... 
> What exactly do you want there?

Something like:

SCMType: {cvs|svn|git|hg|etc.}
SCMRepo: <repo_url, complete spec for SCMs like git, would be cvs_root
for cvs>
SCMModule: <module name for repo types that need this, such as cvs>
SCMTag: <tag representing exact source matching binary package>
SCMBranch: <branch on which tag exists, allowing the installation of
later sources from the same product line branch instead of exact sources
of the installed package at the user's option>

> This is already a flag day of sorts, it's by far the biggest update to rpm 
> in several years. We don't need any more excitement right now, we want to 
> get a new non-4.4.x rpm in an settled. Then we can start looking at new 
> stuff again...

Does "then looking at new stuff again" imply F10?  Or are you saying
essentially table it until later?  And IMO it's always best to have only
a single flag day if possible.  The additional rpmdb headers above (and
subsequent new spec file tags to go along with them) are a flag day
event.  Doing one flag day instead of two would be preferable IMO.

Anyway, the above fields are the essential elements necessary in order
to be able to support exploded source repos and usage of exploded source
repos as canonical source versions of binary packages.  There's lots
more you *could* do in rpm to make that support more integrated and
nicer, but the rpmdb fields and spec fields are the absolute minimum.
And, at least once those are in place, any additional support items can
be added to rpm later at our convenience since everything beyond just
the headers can be managed via scripts, macros, makefiles, build system
changes, etc.

-- 
Doug Ledford <dledford at redhat.com>
              GPG KeyID: CFBFF194
              http://people.redhat.com/dledford

Infiniband specific RPMs available at
              http://people.redhat.com/dledford/Infiniband

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
URL: <http://listman.redhat.com/archives/fedora-devel-list/attachments/20080711/a8240cac/attachment.sig>


More information about the fedora-devel-list mailing list