Dextrose/Getting Involved: Difference between revisions

Tch (talk | contribs)
No edit summary
No edit summary
 
(19 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<noinclude>{{GoogleTrans-en}}{{TeamHeader|Dextrose|home=Dextrose|xbgColor=ffe792|join_label=Get Involved}}</noinclude>
{{Obsolete | Moved and died at https://sugardextrose.org/projects/dextrose/wiki/Testing_and_reporting_issues }}


== F11-XO1 ==
<noinclude>
 
{{TeamHeader|Dextrose|home=Dextrose|xbgColor=ffe792|join_label=Get Involved}}
We use [http://wiki.laptop.org/go/OS_Builder olpc-os-builder], a tool
[[Category:Project]]
used by OLPC to create official and customized system images.
[[Category:SIG]]
 
</noinclude>
Our version contains local customizations specific to Paraguay and some
patches that should be upstreamed.
 
== How to create a build ==
 
We cook our builds on [[Machine/robbie]], which is Fedora 11 i386.
I could create builds also on my laptop, which runs Fedora 12 x86_64.
What the host system runs shouldn't matter much, because all the work
is being done in a chroot environment.
 
* Checkout our local tree:
 
  git clone git://git.sugarlabs.org/dextrose/mainline.git
 
* One time preparation
 
  yum upgrade
  yum install libtomcrypt-devel bitfrost make gcc mtd-utils
  make
 
* Build:
 
  time sudo ./osbuilder.py examples/f11-xo1-py.ini
 
* Wait 15 minutes
 
* Serve hot
 
== Signing ==
 
* Put the 4 signing keys somewhere in your home:


bernie@robbie:~$ ll src/olpc/keys/
== Development ==
-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
If you want to create custom images, see the documentation of the [[Dextrose/Building|Dextrose build system]].


* Edit the paths in the <tt>[signing]</tt> section of <tt>examples/f11-xo1-py.ini</tt>
== Testing ==


Feedback from the entire community is appreciated.


== Publishing the images ==
=== Reporting bugs upstream ===


I'm currently publishing selected builds in [http://oficina.paraguayeduca.org/~bernie/f11-xo1-py/ my public html folder].
If you know the specific upstream project that contains the bug, please file your report into their bug tracker:


Signed builds should be published only if they implement the OLPC anti-theft system
* Sugar and activities: http://bugs.sugarlabs.org/
([http://wiki.laptop.org/go/Antitheft_HowTo OATS]). Signing does
* Drivers and OLPC customizations: http://dev.laptop.org/
not have anything to do with quality or endorsement (i.e. signed builds are not
* Fedora OS: http://bugzilla.redhat.com/
necessarily bug-free).


* TODO: We don't have a place for publishing official images yet
When you file a bug on any component which affects Dextrose, please bring it to our
attention by marking it with the "dextrose" keyword and by Cc'ing the [[Dextrose/Contacts|Dextrose Release Manager]].


* TODO: We don't have a procedure for releasing builds to field technicians (we may use repo.paraguayeduca.org in the future)
=== Reporting bugs specific to Dextrose ===


* TODO: We don't keep release notes for our builds (we should probably use the wiki)
You can file bugs specific to Dextrose in the [http://bugs.sugarlabs.org/ Sugar Labs bug tracker] and
assign them to component "Dextrose". You can use this component when you're in doubt, the maintainers
will reassign it to the correct component.


Before you file a new bug, please check the [http://bugs.sugarlabs.org/wiki/Dextrose Summary of all bugs affecting Dextrose]
to avoid duplicates. You can comment on existing bugs to provide additional details.


== Customizing the build ==
=== Test plans ===


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 <tt>README</tt>
We currently don't have a formal test plan for Dextrose. We're looking for someone to
files contained in the [http://git.paraguayeduca.org/gitweb/users/bernie/olpc-os-builder.git/tree/HEAD:/modules modules] directory.
help us coordinate our QA effort. These are some useful starting points:


Being a Build Master involves knowledge of many workflows, including:
* [http://wiki.sugarlabs.org/go/Talk:Features/Soas_V4/ASLOxo_Activity_Test_Table SoaS V4 Activity Test Table] (2010)
 
* [http://wiki.paraguayeduca.org/index.php/Test-plan_0.88 0.88 test plan from Paraguay Educa] (incomplete, 2010)
* Building Sugar in [http://wiki.sugarlabs.org/go/Development_Team/Jhbuild sugar-jhbuild].
* OLPC 8.2.0 (aka os801): [http://wiki.laptop.org/go/Test_cases_8.2.0 Test Cases], [http://wiki.laptop.org/go/TestResults_8.2.0 Test Results] (obsolete, 2008)
 
* [http://wiki.laptop.org/go/Testing_matrix OLPC testing matrix] (obsolete, 2007)
* Dealing with yum and [http://www.rpm.org/wiki/Docs rpm].
 
* Understanding the [http://fedoraproject.org/wiki/Packaging/Guidelines Fedora packaging] workflow and conventions.
 
* Creating yum package repositories with <tt>[http://createrepo.baseurl.org/]</tt>.
 
* Uploading activities to [http://activities.sugarlabs.org].
 
* General understanding of the Linux system plumbing infrastructure: [http://www.kernel.org/ kernel],
[http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html udev], [http://www.freedesktop.org/wiki/Software/dbus dbus], [http://www.freedesktop.org/wiki/Software/DeviceKit DeviceKit], [http://www.freedesktop.org/wiki/NetworkManager NetworkManager],
[http://www.x.org/wiki/ 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
 
 
[[Category:SIG]]