olpc fedora build source code

Michael Stone michael at laptop.org
Tue May 20 16:10:35 EDT 2008


On Tue, May 20, 2008 at 02:59:59PM -0400, Paul Fox wrote:
> it's not clear (to me) from the Build_system page linked above
> where the final contents of a give release is determined.  

The determination is usually made by yum as it is run from pilgrim on
either xs-dev.laptop.org or pilgrim.laptop.org. We sometimes attempt to
influence yum's decision by controlling what RPMs it sees.

> it's clearly not just a concatenation of all of the dropboxes (or is
> it?).  i.e., where's the final master list -- is that pilgrim?

The 'master list' is stored in the git repository I pointed you to on
mock.laptop.org.

> also, how would one find the tree representing the source of an
> arbitrary SRPM?  

I don't think I understand your question - the SRPMs contain the
"complete" sources for the RPMs they generate. You extract the contents
of RPMs with a suitable "rpm2cpio -> cpio" pipeline (nicely wrapped up
in rpmdev-extract from rpmdevtools in Fedora).

> i suspect i can figure it out for the fedora
> packages, but for the local packages, is there any sort of
> backlink from the dropboxes to the development trees that they
> come from?

The dropbox system produces ChangeLogs which are captured in the mock
repo. See

  http://mock.laptop.org/gitweb/?p=repos;a=blob;f=ChangeLog;hb=local.update1

for a simple example. There is no explicit link backward from
dropbox-supplied SRPMs to development trees.

> (i've answered the specific question i had today, regarding
> whether a certain fix was in the x11 evdev code, but unpacking
> the SRPM seemed like more work than it should have been to find
> something simple.)

Mitch made a related comment to me a few days ago. Here's the rough idea
he inspired:

  1. We can unpack every SRPM once into a common directory.
     See http://dev.laptop.org/~mstone/sources/scripts/extract-source
     for some rough unpacking logic.

  2. We can make a dir for each build and fill it with symlinks to the
     source code that went into it. We'll probably need to parse the
     build-logs for that. Code welcome.

  3. We can stick a navigation overlay on top of it. See
     http://dev.laptop.org/~daf/sources/sources.py for the sketch of the
     idea. (Alternately, we can give out accounts on the hosting machine
     and rely on grep.)

Would this help?

Michael



More information about the Devel mailing list