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

> 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


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?


More information about the Devel mailing list