VirtualBox

From OLPC
Revision as of 21:39, 25 August 2007 by Mcfletch (talk | contribs) (Add page describing how to emulate with VirtualBox)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Emulation with VirtualBox

VirtualBox is an emulator released under dual-license as either GPL or commercial software. It runs on either Win32 or Linux host machines, allowing you to run OLPC images within the virtual machine.

Compatibility

  • Official OLPC build 557 is known to work under VirtualBox with both sound and networking (tested on Linux AMD64 host).

Caveats

  • TamTam's CSound library does not appear to be working with build 557.
  • For OLPC work you will likely need to use the GPL VirtualBox release or a purchased copy, as OLPC work does not qualify as either evaluation or personal use. The GPL version does not support the "shared folders" feature. You will need to use ssh, rsync, or another standard Unix mechanism to share files with the image.

Setup

  • Download an official devel-ext3 image (<thefile>.img.bz2)
  • bunzip2 <thefile>.img.bz2
  • vboxmanage convertdd <thefile>.img <thefile>.vdi
  • vboxmanage registerimage disk /full/path/to/directory/<thefile>.vdi

Now create a new VirtualBox "Machine":

  • OS Type Linux 2.6
  • Base Memory 512 (recommended for development work, 256 more closely simulates an XO)
  • Boot disk, "Existing", choose <thfile>.vdi

Edit "Machine" Settings:

  • Choose "Audio", "Enable Audio", "ALSA Audio Driver" (for linux hosts)

Configure

Once you have booted the machine, you will need to specify a name for yourself and choose an XO colour. You will then need to configure the collaboration server. To do this, pull up the developer's console, and use the "vi" editor to change the configuration file ~/.sugar/default/config to change the "server=" line to "server=olpc.collabora.co.uk".

When this is done, reboot. The virtual XO should now have networking and sound support and should show you a network view with other XOs logged on.