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 == |