(photo by wiki.laptop.org)

Solution Grove is in the process of testing an installation of the XO School Server (XS) of the OLPC project.  Since I don't have an XO laptop, I needed to emulate one.  I'm already running several virtual machines using VirtualBox so it makes sense that I go that route for an emulated XO.

I've outlined below the steps I did to emulate XO on VirtualBox.  The steps here will most likely work with VMWare as well just by changing VirtualBox specific steps to their VMWare counterparts.  These were researched and accumulated on the wiki.laptop.org and sugarlabs.org wiki pages. Some parts are copied verbatim and attribution go to their original authors.

My host OS is Fedora Core 9 on an AMD64 platform and the packages are all fully updated as of the time of this writing.  The steps are:

  1. Download the ext3 image of  XO OLPC Build 708 here. As far as I know, this will be the highest version you can install on VirtualBox since the later builds require the 3DNow hardware extensions and it's not supported on VirtualBox.  I believe VMWare and Parallels don't have them as well.
  2. Launch a console prompt
  3. bunzip2 the file
  4. convert the file to a VirtualBox disk using the command
    • VBoxManage convertdd <thefile>.img <thefile>.vdi
  5. register the new disk to VirtualBox using the command
    • VBoxManage registerimage disk /full/path/to/directory/<thefile>.vdi
  6. Launch VirtualBox
    • Create a new machine
    • OS Type Linux 2.6
    • Memory 256MB
    • On boot disk screen, click "existing" and choose your vdi file from step 5
    • When finished, edit the machine settings and set audio to ALSA (linux hosts) or Direct Sound Driver (win hosts). NOTE: I tried disabling this on an earlier build and it hung during the boot process.  I'm not sure if that's still the case for this particular build.
    • Start the machine
  7. At this point you'll be asked to enter your name and choose your color, just fill them up.
  8. You will then have a blank screen with no activities, this is expected for this build and you'll need to download your activities using a script.
  9. To download the activities do the following
    • Start the console by pressing "Ctrl-Alt-F1", on VirtualBox you can emulate this by pressing "Right Ctrl-F1" as pressing it directly will drop you to a terminal on a linux host
      -bash-3.2# su - olpc
      [olpc@xo-F3-7E-38 ~]$ wget dev.laptop.org/~bert/update-activities.py
      [olpc@xo-F3-7E-38 ~]$ python update-activities.py
    • wait for the activities to download then when it's done press "Ctrl-Alt-F3", or "Right Ctrl-F3" on VirtualBox to get back to the GUI
  10. You will now see the activities on the bottom panel, look for the "Console" activity and launch it. You now need to connect to an XS.  For example purposes, we'll use schoolserver.solutiongrove.com.
  11. In the console issue a "sugar-control-panel -s jabber schoolserver.solutiongrove.com"
  12. It will then prompt you to press "Ctrl-Alt-Erase", emulate this by pressing "Right Ctrl-Backspace" on VirtualBox
  13. That's it.  You should now be registered to the schoolserver.solutiongrove.com XS and be able to browse the neighborhood.  If you can't see anyone then that means nobody is connected.  You can try to repeat steps 11-12 but replace schoolserver.solutiongrove.com  with any of the community jabber servers and browse the neighborhood.  If you're in luck then there will be other XO users logged in as well.  When you've tested that you can join an XS, then you can revert back to schoolserver.solutiongrove.com using the same steps.
  14. Enjoy your new emulated XO.

Reference pages:

posted in
Add comment