Devel/Builds

De Paraguay Educa

This information is OBSOLETE. We moved all our documentation to the Dextrose page on the Sugar Labs wiki.

Tabla de contenidos

F11-XO1

We use olpc-os-builder, a tool used by OLPC to create official and customized system images.

Our version contains local customizations specific to Paraguay and some patches that should be upstreamed.

AIAFCT you've covered all the bases with this answer!

Signing

  • Put the 4 signing keys somewhere in your home:
bernie@robbie:~$ ll src/olpc/keys/
-rw-------. 1 bernie bernie 1,2K Feb  5  2009 pyo1.private
-rw-------. 1 bernie bernie  270 Feb  5  2009 pyo1.public
-rw-------. 1 bernie bernie 1,2K Feb  5  2009 pys1.private
-rw-------. 1 bernie bernie  270 Feb  5  2009 pys1.public
-rw-------. 1 bernie bernie 1,2K Feb  5  2009 pyw1.private
-rw-------. 1 bernie bernie  270 Feb  5  2009 pyw1.public
  • Make sure the keys are NOT world-readable
  • Edit the paths in the [signing] section of examples/f11-xo1-py.ini


Publishing the images

I'm currently publishing selected builds in my public html folder.

Signed builds should be published only if they implement the OLPC anti-theft system (OATS). Signing does not have anything to do with quality or endorsement (i.e. signed builds are not necessarily bug-free).

  • TODO: We don't have a place for publishing official images yet
  • TODO: We don't have a procedure for releasing builds to field technicians (we may use repo.paraguayeduca.org in the future)
  • TODO: We don't keep release notes for our builds (we should probably use the wiki)


Customizing the build

The topic of is too vast to discuss in detail here. Start by reading http://git.paraguayeduca.org/gitweb/users/bernie/olpc-os-builder.git/blob_plain/HEAD:/doc/README README] in the olpc-os-builder tree. Then, as needed, read the various README files contained in the modules directory.

Being a Build Master involves knowledge of many workflows, including:

  • Dealing with yum and rpm.
  • Creating yum package repositories with [1].
  • Uploading activities to [2].
  • General understanding of the Linux system plumbing infrastructure: kernel,

udev, dbus, DeviceKit, NetworkManager, Xorg...

  • Flashing laptops and debugging any problems
  • Interaction with the Sugar and OLPC community to solve issues and minimize our divergence from the official builds.

Upstream

Our upstream code comes from dev.laptop.org:

git remote add olpc git://dev.laptop.org/projects/olpc-os-builder
git fetch olpc
git log olpc/master

Building custom kernels

$ git clone git://git.paraguayeduca.org/users/bernie/olpc-2.6
$ cd olpc-2.6
$ setarch i386 make ARCH=i386 xo_1-kernel-rpm
Herramientas personales