Developer key philosophy

From OLPC
Revision as of 22:22, 28 September 2008 by Skierpage (talk | contribs) (Reverted edits by Page blanker (Talk); changed back to last version by Drcello)
Jump to navigation Jump to search


This page explains the basic functions and uses of a developer key. For a more complete, technical description of developer keys, see Activation and developer keys.

The XO contains hardware and software theft deterrence features, which can get in the way of a prospective hardware or software developer. A 'developer key' allows a developer to bypass these theft deterrence features if needed, so the first step in joining the developer community is requesting a key.

While there are many things a developer can edit without a developer key, a request can take up to two weeks, so it is important to put in a request as soon as possible--that way when a developer key is needed it is available. See Activation and developer keys for instructions on requesting and installing a developer key.

Using a Developer Key

Once it is received, there are two ways to use a developer key:

  1. By installing the developer key in /security/develop.sig, where it can be managed with the Security control panel (<trac>6428</trac>).
  2. By invoking 'disable-security' from the Open Firmware prompt to skip all key checking (until you invoke 'enable-security' again). This also turns off "pretty boot," allowing you to see all the start up messages when you boot.

While this choice is left to the developer, the former option is recommended, because it exercises the key-checking and "pretty boot" code. This ensures that developers are regularly testing this code, so that any bugs can be quickly discovered and fixed--instead of making it to the machine of some poor six year old in Peru.

Using the Security control panel also allows developers to easily enable and disable the theft deterrence features. This way, a developer can test code with theft deterrence enabled when necessary. While this is also possible with 'enable-security' from the Open Firmware prompt, this will perform fewer safety checks, making it easier for a developer to inadvertently lock himself out of his machine.