Running Zubuntu from internal flash memory 
I finally took some time to document the steps needed to get Zubuntu running from internal flash memory. It's quite easy actually, as always, as long as you know what you're doing.

The following procedure copies most part of Zubuntu into internal memory. Unfortunately the complete distribution is too large to fit completely into the little memory available, so a part has to be made available on SD, CF or Microdrive (see the Postinstall for more info).

It is important to now that the only drawback currently is that you have to keep your SD card inserted during use of Zubuntu, since (on default) the /usr and /var directories are located there. If your model has a Microdrive, you'd better install these two directories there, in order to make this disadvantage disappear.

Disclaimer: First of all, be aware that, if you've previously had the original Sharp ROM, Cacko, pdaXrom or any other distro running from internal memory, you will lose it permanently after following these instructions. If you're not sure, be sure to make a NAND backup before continuing. How to make a NAND backup is described here (kind of).

1. Making preparations
These instructions assume you have a Zubuntu installed as described here. There are plenty of other possible installations, but I'll only cover the default here.

Download the following two files:
  • mtd-utils_1.1.0+git-r1_arm.deb
  • MD5: 01a45a3a6aa71dde9611160e943bcd1e
  • MD5: 45a629b112088394efad3aeba61dc861

    2. Start Zubuntu
    After setting up Zubuntu, you should be able to select it from the bootmenu. Select it there so Zubuntu boots and login with the root user account. Copy the downloaded files from step 1 onto the Zaurus.

    3. Installing required packages
    Install the mtd-utils package downloaded in step 1 by executing the following command:
    dpkg -i mtd-utils_1.1.0+git-r1_arm.deb

    4. Copying Zubuntu
    The rest is just a matter of copying over the base system. Since this can be tricky, I've created a small script to do the dirty work. Run the script by entering ./

    You'll be asked on which memory partition you want to install Zubuntu. Possible options are the second and third memory partition, being the Root and Home partitions of the original Sharp ROM. Default choice is the third partition since this is the largest one (about 90Mb on Spitz/Akita). After that the partition is erased (permanently!) and most of the Zubuntu system is copied from your currently running system. This also means that all adjustments, settings and configurations are preserved.

    You can safely ignore the messages 'ignored sockets' and 'implausible old time stamps'.

    5. Post install stuff
    After running the installation script there are still a couple of things to do.

    ** /etc/fstab adjustment
    Remove the mount point to the Zubuntu default installation (/dev/mmcblk0p1 on default) from the /etc/fstab file.

    ** Adjust the symbolic link to /usr and /var
    Since the complete Zubuntu distribution is too large to fit completely into internal memory, both /usr and /var have to be made available on SD, CF or Microdrive. The installation script creates two symbolic links for this purpose, pointing to /dev/mmcblk0p1, being the first partition on your SD memory card. You need to adjust it only if you've installed Zubuntu on a partition other than the first one on your SD memory card.

    ** Adjust /etc/rc.S/
    This file mounts the Zubuntu default installation early in the boot process, since files in /usr and /var are needed during boot-time. The mountpoint used in /etc/rc.S/ is /dev/mmcblk0p1 on default. You need to adjust it only if you've installed Zubuntu on a partition other than the first one on your SD memory card.

    6. Reboot from internal flash memory!
    Now reboot your Zaurus (run reboot). You'll notice that there's a new option in the bootmenu with a litte memory icon in front. Select that option, and Zubuntu boots from internal flash memory!

    7. Footnote
    Please give me your feedback, report problems, share fixes, enhancements etc.

    Last but not least I want to stress the fact that visiting the advertisements on the left or (even better) use of the Donate button is much appreciated!

    Have fun!

    [ 17 comments ] ( 1021 views )   |  permalink  |   ( 3 / 402 )
    Zubuntu 1.0 RC1 ready for take-off 
    I've uploaded Zubuntu 1.0 Release Candidate 1. Instructions on how to install this on your Zaurus can be found in the menu on the left, or here.

    I've tested this on my Zaurus SL-C1000 and SL-C3100 devices. I also succeeded in running Zubuntu from internal flash on the SL-C1000, which is pretty darn fast!

    I still have to document how to get Zubuntu running from internal flash. I'll post it here when ready.

    Use xbindkeys-config to add new keyboard shortcuts. This is how the brightness keys are controlled currently. It's possible to use xautomation (xte), so Fn-Up, Fn-Down, Fn-Left and Fn-Right now moves the mouse cursor. Quite cool!

    I'm rebuilding the kernels for all models with build-in support for sound, bluetooth, pcmcia and infrared. I'll also include modules for more (wireless) network adapters. I'll report here when they're ready!

    Important update for Spitz owners:

    Please re-download and install the bootmenu-kernel and the root-addition archive. This should solve some of the problems reported.

    Keep those advertisement clicks coming, but only if they're sincere of course. Or you can use the Donate button on the left, Feel free to do so!

    [ 64 comments ] ( 32376 views )   |  permalink  |   ( 3 / 922 )
    Zubuntu 1.0 update... 
    I'm currently finishing off the 1.0 release of Zubuntu. Zubuntu is based on Ubuntu 8.04 "Hardy Heron" using the Mojo "Hasty Hippogriff" repository on top of a Poky 2.6.26 kernel.

    There will be two versions, Zubuntu-Base and Zubuntu-Desktop.

    The Zubuntu-Base contains "just" the kernel, a working X Server and some basic applications. I leave it up to you to decide what additional packages to install. A lot of the applications can be installed directly from the Mojo repository.

    The Zubuntu-Desktop contains, apart from all the packages in Zubuntu-Base, a more complete set of standard applications. Only packages missing currently are PIM applications (Calendar & Contact).

    Both Zubuntu distro's will be targeted at the Zaurus Spitz (SL-C3x00) and Akita (SL-C1000) models first. I'm still in the process of getting an alternative boot kernel (kexecboot) working for at least the SL-C7x0 and SL-C860 models, but this will take some more time I'm afraid. I recently acquired a Tosa (SL-C6000L), but I still have to check what is needed to get Zubuntu working on this specific model.


  • Linux Kernel 2.6.26, EABI only, patched for use with Android 1.0
  • Sound: Tested and working, including volume control on the back of the device
  • Touchscreen: Tested and working
  • Network: Tested and working (tested with Linksys WCF12, Buffalo WL12-CF-S11, Billionton CFLT2-10B)
  • Rotation: Automatic rotation in X Server once the display is flipped.
  • Brightness control (Fn-3 and Fn-4): Tested and working
  • Bluetooth support: Added, but untested
  • USB Host: Added, but untested

  • Installed applications in Zubuntu-Desktop

  • Desktop:
  • LXDE
  • Launcher:
  • LXLauncher (installed, but disabled on default)
  • File manager:
  • PCManFM
  • Multimedia player:
  • Audacious
  • Web browser:
  • Firefox 3. Thinking about replacing it by Midori.

  • Network manager:
  • WICD
  • Text editor:
  • Leafpad
  • Word processor:
  • Abiword
  • Spreatsheet:
  • Gnumeric
  • Email:
  • Sylpheed
  • PDF:
  • xPDF
  • Instant Messenger:
  • Pidgin
  • Games:
  • xMahjongg

    Additional extras

  • Android 1.0. Will become available later as a seperate download

  • Help wanted

    Some of you offered help already. Thanks a lot! If you're able and willing to help in any way, please drop me a line using the "Contact Me" form, and we'll see what we can work out.

    Also, if you think I'm forgetting something important, or if you have any suggestions or improvements, let me know.

    Shameless footnote

    Once more, if you like what I'm doing here, and/or it is of any help to you, please keep pressing those advertisements. The more you press, the more it keeps me motivated.

    [ 39 comments ] ( 1642 views )   |  permalink  |   ( 3 / 283 )
    Zubuntu 1.0 coming up... 
    This is a screenshot of Zubuntu 1.0. It is currently running on my SL-C3100. It's very stable, runs a 2.6.26 Linux kernel and includes all the Android 1.0 patches.

    Based on Ubuntu 8.04 "Hardy Heron" I used the Mojo "Hasty Hippogriff" repositories. Bravo to the guys from the Mojo project. A job well done!

    I'm currently using the Xfce desktop environment. A lot of standard applications have to be added, but the hardware support like sound, touchscreen, auto rotation, network etc. seems to work.

    More on this later :-)

    [ 15 comments ] ( 828 views )   |  permalink  |   ( 3 / 330 )
    Android 1.0-rc1 working on Zaurus SL-C3100 
    As you can see, version 1.0 is working already on my Zaurus SL-C3100 (Spitz). I hope to get a full installable image up soon so you can try it for yourself. Please be patient.

    [ 7 comments ] ( 599 views )   |  permalink  |   ( 3 / 5506 )
    Android 0.9-beta for Zaurus SL-C3x00 (Spitz) 
    Sorry for the delay, but I took some time off and spent the last two weeks in beautiful Italy (Tuscany/Umbria).

    Now, plans were to combine two ongoing projects of mine, Android and Zubuntu, and make it into one distro. But I'm still having too much problems with Zubuntu (I'm working on the 8.04 release) so I switched, for the time being, to Poky. I read that OpenenedHand was recently acquired by Intel, so we might see some (more) of Poky back in Moblin in one of the next releases.

    So what you download and install here is mainly a Poky distro in the first place. It's very stable and pretty complete. Give it a try, I like it better each time I see and use it. It's based on a 2.6.26 kernel patched for Android. Although the Android SDK was based on a 2.6.25, I ported the patches needed to get it working in 2.6.26.

    Android is pretty basic I guess. I didn't test all features, and I'm sure that a some things don't work yet. Like the touchscreen for instance.

    Installing Poky & Android

    Installation on the Zaurus is done in the usual way:

    1. Download the following files and copy them to a SD card.
  • zImage.bin
  • gnu-tar
  • android-root.tar.gz

  • 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 you are asked if you want to flash the kernel, if you want the microdrive to be formatted and if you want the root filesystem to be installed. Accept all questions answering them with y

    After flashing is complete, the machine is rebooted and Poky starts. First boot takes some time because of initial configuration taking place.

    Now, before getting on to Android, play around in Poky and see if you like it. It's really worth a try!

    Starting Android

    You have to exit the Poky interface by pressing Ctrl-Alt-Backspace simultaneously. On the prompt, press Enter and login with user root. No password is needed. Now type:
    chroot /home/android /init

    Android should boot now.

    Exit Android

    I haven't found a better way, so let me know if there is one. Press Fn-Right to see the Android console, and type "reboot" to reboot the machine. Poky will be (re)started.

    Enjoy Android, and hopefully Poky. Thanks again for Speculatrix for sharing some hosting space. Much appreciated!

    By the way, if you like what I'm doing, be so kind to click on as much advertisements (on the left) as you can.


    [ 6 comments ] ( 355 views )   |  permalink  |   ( 3 / 859 )
    Anyone in for another Android experiment? 
    It has been quite a while since I last posted here. I'm busy doing all kinds of things at the same time, not able to finish any of the things I started here. I'll spare you the details.

    Anyway, since Google released a Beta of Android for us to play with two days ago, I was just thinking if this would be of any interest.

    See for yourself here. The user interface has been revamped pretty extensively. It looks great!

    So, anyone in for another Android experiment then?

    SDK download can be found here. I dusted off my developer tools already to see if I can make this work on my Zaurus again

    [ 9 comments ] ( 248 views )   |  permalink  |   ( 3 / 593 )
    Ubuntu Netbook Remix 
    A lot has happened lately. After messing around with frisky (Ubuntu 7.04) I finally got the Installer working, although I'm not satisfied with the result (too much errors during setup). Apart from that, I also managed to create a working version of grumpy (Ubuntu 7.10).

    I tried a lot of different Window Managers and setups, but in my opinion none of them fitted the Zaurus very well. That's why I only uploaded a minimal version so far.

    After reading Mark Shuttleworth's blog about the Netbook Remix AppLaucher I thought I'd give it a try, just to see if I could get it working on my Zaurus. Another proof of concept so to say.

    Unfortunately, this isn't currently possible using frisky or grumpy. The repositories simply don't contain all the right packages or package versions. So I had to make a small sidestep by creating a Debian-Lenny distribution. The Debian Lenny repositories have a huge amount of packages, and they're much more up-to-date than I thought!

    After having Lenny ready and working, I compiled the Netbook Remix packages. Using the XFCE Window Manager I set up the top panel and started the launcher. Although the launcher doesn't work (yet), I think this will become my favorite Zaurus setup. The idea behind maximus and the go-home button are great, and the launcher should fit the Zaurus very well.

    The launcher exits with an error saying that the "XServer appears to lack required GLX support". Too bad, maybe I'll try to use the xserver-xorg to see if that helps.

    Anyway, a lot has to be done. My quest for the perfect Zaurus setup hasn't finished yet. My next proof of concept could well be the mobile Firefox, Mozilla Fennec. We'll see.

    Good news by the way. I understand that work on the Ubuntu 8.04 for ARM has started. The Mojo guys hope to have a working (minimal) version within a few weeks time. Great work!

    [ 8 comments ] ( 218 views )   |  permalink  |   ( 3 / 1243 )
    Zubuntu Installer 
    I tried to build Debian-Installer (D-I) for Zubuntu. As the documentation mentions, sometimes D-I is described as a mini Linux distribution which gives an indication of its complexity. Well, they're right about that, I know it for sure now. D-I is build with a specific kernel in mind, although some people tried to hack a D-I to make it work for their situation. This never worked for me, so I figured building it from scratch is my way to go. A lot of packages are missing in the frisky repository, so I needed to build them myself. Looking at the requirements I started installing, downloading sources and building packages. I did this in Qemu, using Debian-armel as the host OS. That's where I made a mistake I guess. I now have a shipload of required packages compiled and ready, but the build system now tells me I'm having the wrong versions installed. It somehow mixed up the host and the target systems, or it was just me doing something stupid, I don't know. So now I'm back to square one again. This time I'm using the Zubuntu Qemu image as my host system, and I started building all missing packages from there... again!

    The struggle for a decent installer continues. More on this later.

    [ 3 comments ] ( 213 views )   |  permalink  |   ( 3 / 2421 )
    The birth of Zubuntu 
    I thought this little project could use a name. So, since my targeted device is a Zaurus, why not call it Zubuntu.

    Most of my spare time went into this project the last couple of weeks. I've managed to get a fairly complete system running now, although it's very difficult to get all the tiny bits and pieces fit into the right place and position.

    A lot of time is spent finding out stuff that has already been done by others. I'm not complaining, it's just that this work isn't as efficient as it could have been. But hey, since I'm far from a Linux guru I'm still learning a lot, and for me that's worth a good thing.

    I've updated the minimal image. It can be downloaded here. The version number has gone up from 0.1 to 0.3.

    Same instructions apply as before, so read all the details here. I hope to fix a few other things soon, like sound, automatic Xserver rotation, brightness adjustment, right mouse click simulation, easy wireless network configuration, the hardware clock and other things I've forgotten right now.

    One good thing is my experience with Xfce. I like it, it looks good and the performance is better than I expected.

    If you're going to use this in Qemu, make sure you rename /etc/ temporarily, since you don't want to use the Zaurus keyboard mapping in Qemu.

    [ 10 comments ] ( 395 views )   |  permalink  |   ( 3 / 312 )

    <<First <Back | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Next> Last>>