OLPC Software Testing

From OLPC
Revision as of 21:43, 20 July 2006 by Quozl (talk | contribs) (Overview)
Jump to: navigation, search

Overview

Right now we have images that are generated twice a day for testing. They are automatically built and do not go through any kind of regression testing before they are placed on the download site. We'll shortly have binary deltas between daily images and some scripts to make it easy to move from one day to the next instead of having to download a huge image.

You will notice that we have space several "streams" of development. Since we're in the middle of developing the initial operating system we only have the initial stream. Once we do alpha and beta and point releases, we'll have more than one stream for development.

Testing

There are two ways to test the images. You can either run them in a simulator, or you can attempt to run them on the OLPC hardware or your laptop.

Simulator

The easiest way to test the images is to use qemu or some similar emulator. On Fedora Core 5, QEMU is included in extras and is very easy to install. As root just type

yum install qemu

and it should be installed. You may have to start the service for it. As root run:

service qemu start

You can download the OLPC images from http://olpc.download.redhat.com/olpc/streams/development/

Once you have it downloaded it, it's very easy to use qemu to launch the OLPC environment:

qemu -hda olpc-stream-development-7-20060609_1600-ext3.img

The simulator will start up at this point. When the screen turns green saying One Laptop Per Child at the bottom, press the spacebar to get the grub menu. It's important that you choose the OLPC Simulator option. The default for these images is to boot for the OLPC Hardware, not the Simulator.

We have heard multiple people say that QEMU doesn't work with these images on the debian-derived distributions. We also haven't heard of any solutions to these problems. The symptom is that the kernel hangs during boot.

Marcin: On Ubuntu Dapper it hangs with qemu 0.8.0 (from distro), but works with 0.8.1 from i386 binary tarball.

Vedran: It also hangs on Debian unstable with qemu 0.8.1-1 (from distro), but works with 0.8.1 from i386 binary tarball.

Windows

I have successfully run a June 11th build on Windows using QEMU 0.8.1 and TAP-win32 taken from OpenVPN for Windows. It is slow, but useable. You should also install KQEMU acceleration. The Windows version is in the tar archive along with the source. After unpacking the tar archive, right-click KQEMU.INF and select install. Start it with net start kqemu before you run Qemu. Unload it with net stop kqemu.

I didn't do much more than load the Google homepage and Ctrl-Alt-F1 to log in to root (no password) and snoop around a bit. Try "ps ax" and "ls /usr/lib/python2.4/site-packages" Also, in the web browser application, click Open and enter the URL file: to get a browseable listing of the hard drive. --Memracom 14:04, 12 June 2006 (EDT)

OLPC Hardware or Laptop

The images that you can download are set up to run on 512MB of flash. The internal flash included on the OLPC Hardware is 512MB. You can also use a USB Key or USB Hard Drive that is at least 512MB. You can use drives that are larger than 512MB as well, but you won't be able to use more than the 512MB.

Once you've downloaded the image and decompressed it write it to the head of the drive. This will overwrite any data that's on the drive. We're not kidding.

How to write the data to the stick is best described in the Installing Fedora Core page. The only difference is that instead of using the diskboot.img file you will end up executing a command like this:

dd if=olpc-stream-development-7-20060609_1600-ext3.img of=/dev/sdX

Once you're done that and your BIOS supports booting off of a USB Flash stick or Drive, you should be able to boot directly into the OLPC environment.

Windows

I've managed to do this on Windows using this dd program. I also tried cygwin's dd but was not able to get it to work. Using the dd for Windows, first find out the device name for the physical device of your USB thumb drive. Look up the drive letter in the list displayed by dd. Then copy the image.

dd --list
dd if=olpc-stream-development-7-20060609_1600-ext3.img of=\\?\Device\Harddisk#\DP(#)#-#+#

After booting Qemu using the USB drive, dmesg shows that hda hs 9 trillion megabytes on it. Strange, but it does run and load the Sugar gui. --Memracom 09:43, 13 June 2006 (EDT)

Shell Prompt

You can't do much with the Sugar GUI until the apps are more fully developed. However you can get a shell with Ctrl-Alt-F1 and log in as root to get full access to the system. Since there is currently no Sugar menu you will need to write use the Chat app or Browser app as a model for your own work if you want to run something inside the Sugar environment.