Ubuntu 8.04 on Zaurus 
Version 1.0 of Zubuntu is the first major milestone in my attempts to get a stable Ubuntu for the Sharp Zaurus. You can consider Zubuntu a proof of concept, although this doesn't mean it's crippled or unusable. Far from that. Although Sharp no longer manufactures the Zaurus series, I'm again and again astonished of what these miniature laptop devices are capable of. Don't expect that all desktop applications run smoothly. A huge number of applications run without any problems on the Zaurus, but don't forget that we have to deal with a limited amount of memory and cpu capacity. So don't try to compare it to your desktop pc!

Being the proud owner of a SL-C3100, SL-C1000, SL-C6000 and previously a SL-C750 I tried to support as much devices as possible. Currently only the SL-C5x00 and the SL-C6000 models are left out. If time permits I'll try to support these models too in a future release.

As in previous releases, Zubuntu is still based on the excellent work done by the guys of the Mojo project.

In my search for the perfect user interface I tried lots and lots of different user interfaces. Among others, I tried Moblin, Ubuntu Netbook Remix, IceWM, E17, XFCE and Gnome. Some of them I simply disliked, and others were far too resource hungry for the Zaurus. I ended up using LXDE in the end. It's simple, small, fast and has a low memory footprint.

1. Making preparations for running Zubuntu


All you have to do is prepare a large memory card, I suggest at least 1Gb. I only tested SD, but CF should be fine also. Format it ext2 or ext3, and extract the zubuntu-desktop root filesystem (MD5: 17fb1d954712276cb8b314836a68656f). Note that I'm using the same root filesystem for all machines to start with. After that extract the root-addition archive for your device to the memory card. Choose the correct one from the table below. This contains the device-specific kernel and the kernel-modules.
  • SL-C3000, SL-C3100 and SL-C3200
  • MD5: c385463acb36c0a6512dbc85335c4990
  • SL-C1000
  • MD5: c6612af9425cf5e9a97833353af2ac6a
  • SL-C700, SL-C750, SL-C760, SL-C860
  • MD5: e5f7deb848fe5145ba894fb9556691c6

    These preparations can all be done from your desktop system. I prefer it this way personally because it's much easier, faster and more comfortable.

    The image below shows the partitions I use on my 2Gb SD memory card.



    2. Flashing The Multiboot Kernel


    The OpenEmbedded guys came up with kexecboot some time ago, a small kernel image used as multiboot menu. It is capable of booting all sorts of distro's. For instance, buy yourself a 4Gb SD card, split it up in, let's say 4 equally sized partitions, and install whatever you like on each partition, whether it be the original Sharp ROM, pdaXrom, Cacko, Angstrom, Debian or OpenBSD. Just make sure you install Zubuntu of course. A simple reboot lets you choose which distro to start. Because the multiboot kernel is very small, this also works for the older devices with less flash memory. Great stuff!

    So hopefully this is one of the last times you needed to flash your Zaurus. From now on, if you want to try some distro, simply extract the filesystem on a CF or SD memory card. Multiple partitions are supported, and multiple filesystems (gzip, cramfs, romfs, xfs, minix, ext3, ext2, reiserfs, jfs). Simply create a /boot directory in the root of the filesystem. Rename the the kernel image to zImage and copy it into the /boot directory. Create a file named kernel-cmdline containing the kernel startup command line and optionally add a file named image.nfo containing a description of the distro, all in the /boot directory. After rebooting the device your new distro will show up in the boot menu automatically.

    Installation of the multiboot kernel on the Zaurus is done in the usual way:

    1. Download the kernel for your device from one of the options below, and put the kernel together with the generic updater.sh onto a FAT formatted SD memory card. You can check the integrity of the downloaded files with the md5sum <filename> command. The checksum should match the hash value on the right. Make sure there isn't floating an initrd.bin file around on the SD card!
  • SL-C3000, SL-C3100 and SL-C3200
  • MD5: 7bf1d0f9c119892cb4cfd4526a880f5e
  • SL-C1000
  • MD5: 2000ec7b019750ee280150f3ad8a73c8
  • SL-C700, SL-C750, SL-C760, SL-C860
  • MD5: 6d4437c6cd6cb9335a1780ee0f0e922d

    2. Remove battery and power adapter cable
    3. Wait for 5 seconds
    4. Replace battery, close and lock battery cover
    5. Attach power adapter cable
    6. Keep OK button pressed while pressing on/off switch
    7. From the Japanese menu, choose option 4 (Update), then 2 (SD) and finally Y

    Flashing starts, and the kernel is flashed. After flashing is complete, the machine is rebooted.

    Now make sure you exchange the FAT formatted SD for the ext2/ext3 formatted SD with the Zubuntu filesystem. If you weren't quick enough, don't despair, do the exchange and reboot again.

    If you've done everything right, the bootmenu is displayed like below (with one option to start with).



    Select the distro with the cursor keys and press the "OK" key to boot.

    3. Starting Zubuntu


    After booting Zubuntu, login with root (no password). Run startx to start the window manager (LXDE).



    To keep this going


    It took me lots of hours to get this far, so now I need your help to make Zubuntu even better. Please try it and give me your feedback, report problems, share fixes, enhancements etc.

    Google recently complained to me about "invalid clicks or impressions" that have been generated on their advertisements. So please keep pressing those advertisements, but make sure they're sincere!!

    Thank you!


    Once again I want to thank Paul "speculatrix" for hosting the image files. A big thanks goes out to Andrea "Ant" Adami for helping me getting kexecboot work. Much appreciated!