Test setup for Update.1 builds: Difference between revisions

From OLPC
Jump to navigation Jump to search
mNo edit summary
(added link text)
 
(One intermediate revision by one other user not shown)
Line 3: Line 3:
Next, a warning: as of build update.1-699, '''activities are no longer bundled with the core build''' -- they must be installed separately. This choice was made because OLPC found itself unable to maintain separate builds for each large installation of its laptops - primarily due to lack of skilled labor. In effect, OLPC has created a "core build" without activities that can be easily customized with a [[customization key]] to suit the needs of each deployment.
Next, a warning: as of build update.1-699, '''activities are no longer bundled with the core build''' -- they must be installed separately. This choice was made because OLPC found itself unable to maintain separate builds for each large installation of its laptops - primarily due to lack of skilled labor. In effect, OLPC has created a "core build" without activities that can be easily customized with a [[customization key]] to suit the needs of each deployment.


; Which laptops are "locked" and why does it matter?
; How are laptops are "locked" and why does it matter?
: XOs currently implement three software locks: a '''firmware modification lock''', a '''boot lock''', and a '''build installation lock'''.
: XOs currently implement three software locks: a '''firmware modification lock''', a '''boot lock''', and a '''build installation lock'''.
: These locks can be temporarily opened by lock-specific or lock/machine-specific messages encoded in "developer keys", "activation leases", and "signed builds". (Developer keys can also permanently "unlock" a machine.)
: These locks can be temporarily opened by lock-specific or lock/machine-specific messages encoded in "developer keys", "activation leases", and "signed builds". (Developer keys can also permanently "unlock" a machine.)
Line 10: Line 10:


; Which builds are signed, and why does it matter?
; Which builds are signed, and why does it matter?
: There are three streams for update.1 builds -- [http://download.laptop.org/xo-1/os/official official], [http://download.laptop.org/xo-1/os/candidate], [http://pilgrim.laptop.org/~pilgrim/xo-1/streams/update.1 update.1]. The first two are signed, the last isn't. The workflow is:
: There are three streams for update.1 builds -- [http://download.laptop.org/xo-1/os/official official], [http://download.laptop.org/xo-1/os/candidate candidate], [http://pilgrim.laptop.org/~pilgrim/xo-1/streams/update.1 update.1]. The first two are signed, the last isn't. The workflow is:
:* Update.1 builds are created (for example, "update.1-699"), and if they pass testing such that they're an improvement over previous candidates, they may become a signed "candidate" build.
:* Update.1 builds are created (for example, "update.1-699"), and if they pass testing such that they're an improvement over previous candidates, they may become a signed "candidate" build.
:* Candidate builds are represented in the form "candidate-699", and are our latest proposed final build for a release.
:* Candidate builds are represented in the form "candidate-699", and are our latest proposed final build for a release.

Latest revision as of 02:37, 3 April 2008

This page discusses the several ways that update.1-series and derived builds can be installed for testing.

Next, a warning: as of build update.1-699, activities are no longer bundled with the core build -- they must be installed separately. This choice was made because OLPC found itself unable to maintain separate builds for each large installation of its laptops - primarily due to lack of skilled labor. In effect, OLPC has created a "core build" without activities that can be easily customized with a customization key to suit the needs of each deployment.

How are laptops are "locked" and why does it matter?
XOs currently implement three software locks: a firmware modification lock, a boot lock, and a build installation lock.
These locks can be temporarily opened by lock-specific or lock/machine-specific messages encoded in "developer keys", "activation leases", and "signed builds". (Developer keys can also permanently "unlock" a machine.)
All mass-produced machines (e.g. G1G1 and recent deployments) were "firmware modification locked" ("write protected", "placed into secure mode") at creation.
Several locks may need to be opened in order install an update.1-series build.
Which builds are signed, and why does it matter?
There are three streams for update.1 builds -- official, candidate, update.1. The first two are signed, the last isn't. The workflow is:
  • Update.1 builds are created (for example, "update.1-699"), and if they pass testing such that they're an improvement over previous candidates, they may become a signed "candidate" build.
  • Candidate builds are represented in the form "candidate-699", and are our latest proposed final build for a release.
  • Official builds are builds that have been passed to Quanta for installation on new laptops. Notwithstanding an Unscheduled software release, we expect only one of these builds per release cycle.
I olpc-update'd to an update.1 build; booted, and now I have no activities! How do I get my activities back?
You can download the G1G1_Activity_Pack, unzip it onto a USB key, and reboot.
On write-protected machines, the customization will be automatically installed.
On unprotected machines, you need to hold the x game-pad key as the machine comes on. (See Cheat codes for more details.)
What's the recommended way to
with a Reflash/Customization USB key prepared according to the instructions at Customization key.
Upgrading an machine
"Secure" machines without developer keys will reflash and customize from a properly prepared Customization key without any intervention. "Insecure" machines with a developer key installed require all four game keys to be held at boot to boot a customization key.
Creating your own activity pack
The create-customization-key Python script will create a customization key for G1G1 (or Mexico, or Peru, or "all"). You should first prepare a USB customization key with your desired activities; then, in the root of the USB disk, run:
python ./create-customization-key G1G1









At present, the simplest, most robust instructions for studying build update.1-702 are:

By copy-nand

  1. Procure an XO & developer key or a non-secure XO.
  2. Prepare a USB key to
    • install build update.1-702 via your favorite mechanism via copy-nand (see [[1]] for files),
    • host the Customization key, and
    • install an activity pack such as [2] (cjb: update this link at will)
  3. Use the USB key to perform the installation and customization steps.

By olpc-update

  1. Procure an XO & developer key or a non-secure XO.
  2. Prepare a USB key to
    • host the Customization key, and
    • install an activity pack such as [3] (cjb: update this link at will)
  3. Use olpc-update to update to update.1-702
  4. Use the customization key to install an activity pack.