Developer key philosophy

From OLPC
Revision as of 16:48, 28 September 2008 by Drcello (talk | contribs) (A first attempt at cleaning up the page.)
Jump to: navigation, search


For a more complete 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.

There are two ways to use a developer key, once received:

  1. 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.
  2. By installing the developer key in /security/develop.sig, where it can be managed with the Security control panel (<trac>6428</trac>).

While this choice is left to the developer, the latter 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.