Dextrose/Building: Difference between revisions

Dfarning (talk | contribs)
m remove signing instruction
No edit summary
Line 6: Line 6:
== Build host requirements ==
== Build host requirements ==


The olpc-os-builder machinery has been used successfully with systems running Fedora 11 i386 through Fedora 13 x86_64.
The olpc-os-builder machinery has been used successfully with systems running '''Fedora 11 i386''' through '''Fedora 13 x86_64'''. What the host system runs shouldn't matter much, because all the work is being done in a chroot environment, but olpc-os-builder is known to fail on Ubuntu due to a missing dependency.


What the host system runs shouldn't matter much, because all the work is being done in a chroot environment, but olpc-os-builder is known to fail on Ubuntu due to a missing dependency.
You will also need a lot of bandwidth to download about '''700MB''' of rpm packages and Sugar activity bundles.




Line 17: Line 17:
   git clone git://git.sugarlabs.org/dextrose/mainline.git
   git clone git://git.sugarlabs.org/dextrose/mainline.git


* One time preparation
* One time preparation:


   yum upgrade
   yum upgrade
   yum install libtomcrypt-devel bitfrost make gcc mtd-utils python-imgcreate
   yum install libtomcrypt-devel bitfrost make gcc mtd-utils python-imgcreate zip unzip
   make
   make


* Build:
* Build:


   time sudo ./osbuilder.py examples/f11-0.88-xo1-py.ini
   time sudo ./osbuilder.py examples/dextrose2-xo1.ini


* Wait 15 minutes
* Wait 15 minutes
Line 70: Line 70:
  git fetch olpc
  git fetch olpc
  git log olpc/master
  git log olpc/master
== Building custom RPMs ==
* Go to the <tt>rpms/PACKAGENAME</tt> in the dextrose tree
* Edit the spec file (remember to bump the revision)
* <tt>make i586</tt>
* Wait for rpmbuild to do its job
* Now upload this rpm to a yum repository and add it to the ini file used by the OLPC OS builder.
* To automate this step, we have a rule <tt>make uploadrpm</tt> which points at the Dextrose repository.
Edit <tt>rpms/common/Makefile.common</tt> or <tt>rpms/common/uploadrpm</tt> to retarget this rule to your
repository.


== Building custom OLPC kernels ==
== Building custom OLPC kernels ==