From Openmoko

Jump to: navigation, search


If you want to use Freerunner with OM2008.12 and OM2009 as a usable phone and music player and internet device and gps device then there's so many things you have to install and configure before it's usable. It took me a lot of time to get everything installed and configured (and there's still some things to do). But now there's the Kustomizer, maybe this can make life a little easier. M.K@community

  • 2009-11-16 Final decision to run Kustomizer down as OM2009 was suspended months ago.
  • 2009-05-07 writing of Kustomizer for OM2009 started at Etherpad
  • 2009-04-28 Kustomizer 0.41 released with minor fixes.
  • 2009-03-15 Kustomizer 0.4 released check Changelog
  • 2009-03-11 Mailing list launched. To subscribe send a mail to [1]
  • 2009-02-20 0.35 released "I tried your version 0.35 and that is a lot better than 0.3" (Lars)
  • 2009-02-20 0.35 pre-release - give it a try, more packages should now install, the bug was finally found.. Let me know if it works for you!
  • 2009-02-19 version 0.3 released. Again many fixes and new apps included, for example agps support.
  • 2009-02-06 version 0.2 released. GSM works again. Many fixes done - now Kustomizer can give you two different configurations, see here. Changelog and test run log
  • 2009-02-02 First release. In this release GSM didn't work :(



Home view
Kustomizer is a script that converts your clean OM 2008.12 installation on Openmoko Freerunner into a usable phone/pda/toy/something.

The script is licensed with GPLv2 licence. The applications that it installs around the Net might have other licenses, check the original sites for more information.

Originally it was written to make it easy to try some apps after a clean installation for opkg.org application tests (review part one, review part two) and 'recover' easily after that but in the end it became a script that might be useful for others, too.

Send questions and comments to Risto H. Kurppa ( risto at kurppa dot fi ) or to the Community mailing list.


Screenshot of the installation screen
  • Kustomizer will not fix your WSOD / BSOD / wlan connecting only once / etc issues
  • Flashing 2008.12 will wipe your rootfs
  • Backup all your important data - just to be sure!
  • Kustomizer is more or less under development

What does it do?

You can run Kustomizer once or twice. Here's an explanation what happens:

First run

The first time you run Kustomizer, it installes opkg.org repository, Illume-theme and terminal keyboard, files for better call audio quality, xterm. Also a CPU resource bug is fixed (qpe). A restart is required for this to take effect and Kustomizer will do this for you.

   * illume-theme
   * terminal keyboard
   * wrench & qwerty buttons
   * opkg.org repository added
   * qpe eating CPU resources -bug fix
   * new gsmhandset.state for improved audio quality
   * Restart to apply the new settings

Second run

The second run will install the rest: applications, GPRS, link map direcories from µSD card, mokoservices and tap/untap etc. You don't have to make the second run if you don't want.

   * Navit repository added
   * Linking /home/root/Maps to /media/card/Maps
   * Loads of coolest applications & libraries
   * GPRS settings
   * Freerunner-optimized Navit config XML. Preconfigured to use the map or Europe in /media/card/Maps/navit/europe.navit.bin
   * Your custom script from /media/card/customscript will be run, if found. See example
   * loads of various small fixes
   * Restart to apply the new settings

After the second installation, about 150MB of the 256MB rootfs is used.


Here's a list of applications installed. All might not be included.

Applications / Internet

   * Midori
   * Minimo
   * Dillo-ssl
   * CenterIM
   * Wireshark

Applications / GPS

   * Navit
   * GPSsight
   * GPSdcontrol
   * Orrery
   * TangoGPS

Applications / Config

   * Mokoservices
   * Modified .Tap/Untap
   * ShortOM
   * Battery
   * Sortdesk

Applications / Games

   * OpenTTD
   * Duke3D
   * Numptyphysics
   * OpenMooCow
   * Pong
   * XScat
   * Liquidwar
   * Moko-eightball
   * Ko-Dice

Applications / Misc

   * Tons of required libraries
   * MokoConv
   * Openmiaocat
   * Gwaterpas
   * Neon
   * Meooem
   * Mokox48 calculator
   * Ledclock
   * Qwo -keyboard
   * Mtpaint
   * Vala-terminal
   * Fbreader
   * Openmoko-mediaplayer
   * Ffalarms

Running the script

Script is available at http://www.kurppa.fi/freerunner/kustomizer

Here's the instructions what to do on your desktop to flash to 2008.12 and then what to do on Freerunner (over SSH!) to run the script.

## ON DESKTOP COMPUTER (written for Ubuntu 8.10 and newer)

## Prepare your memory card
 Here are some things you can put on your µSD card that will be mounted to /media/card. If you don't have these, it's OK.
 * /m/c/customscript - your own script that will be run in the end. You can write here all your custom requirements, I added the Finnish keyboard and some handy scripts, see http://kurppa.fi/freerunner/config_files/customscript
 * /m/c/Maps will be symlinked from /home/root/Maps. You can put your Openstreetmap map tiles there: TangoGPS uses this
 * /m/c/Maps/navit/europe.navit.bin will be used by Navit, preconfigured to do so
 * /m/c/Maps/navit/bookmarks.txt and destinations.txt will be copied to /home/root/.navit. These are the bookmarks and destinations for Navit

# install required packages:
# a) run: sudo apt-get install dfu-util bind9 
# dfu-util is also available from http://downloads.openmoko.org/distro/releases/Om2008.9/dfu-util

# for more details, see http://wiki.openmoko.org/wiki/Flashing_the_Neo_Freerunner
# download the required image files
# b) run: wget http://downloads.openmoko.org/distro/releases/Om2008.12/Om2008.12-om-gta02.uImage.bin & wget http://downloads.openmoko.org/distro/releases/Om2008.12/Om2008.12-om-gta02.rootfs.jffs2
# c) Connect your freerunner to the computer with the USB cable
# d) start your Freerunner holding the AUX button down to get to the NOR menu
# e) run: sudo time dfu-util -a kernel -R -D Om2008.12-om-gta02.uImage.bin
# f) run: sudo time dfu-util -a rootfs -R -D Om2008.12-om-gta02.rootfs.jffs2
# g) Start & restart Freerunner to be able to log in over USB ssh
# h) Go to 'Settings' and change 'Suspend' to 'off' or Freerunner will suspend and the installation will fail.

# Connect over usb-ssh with shared internet connection
# Don't run the script on Freerunner's screen! It can be done but not recommended if you don't know what you're doing.
# Download a script to help you & change the permission
# i) run: wget http://www.kurppa.fi/freerunner/fr_bind && chmod 755 fr_bind
# j) run: ./fr_bind
# k) First it asks for your Ubuntu -password to restart the interface & bind9 - type it in
# l) After this it asks for Freerunner password - it's empty, just hit Enter 
# For more details check http://wiki.openmoko.org/wiki/Usb_networking#Ubuntu_8.10_-_Easy_Way  

# 1) Make sure you've turned 'Suspend' to 'off' in the Settings.
# 2) Make sure you can SSH in over USB so that Freerunner has Internet connection (ping google.com?)
# 3) run: wget http://www.kurppa.fi/freerunner/kustomizer_VERSION -O kustomizer && chmod 755 kustomizer
# 4) run: ./kustomizer
# On the first run it will install some stuff and then restart (to stop the qpe-bug). Then you need to repeat 2) and 4) and  it'll install the rest

Let the author ( risto at kurppa dot fi ) know how did it go! You might not receive any help but it helps to develop the script further. If possible, please attach the log.

Good to know

  • Rerunning a newer version of Kustomizer will most likely break something -> Don't try to update, only run on clean 2008.12
  • During the second run many packages will fail with segfault/md5sum mismatch/missing dependencies/package not found. No harm done but also no app installed. It's because of bad packaging and we just have to wait for someone to fix it.
  • Services -> gprs usually says 'FAILED' when you try to start GPRS but when you restart the app, it says 'GPRS ON' and shows the traffic counter.
  • Enlightenment crashes sometimes, just click 'Recover' and you're fine again.
  • For instructions how to manage icon folders and icons of apps you install later, check http://www.opkg.org/package_95.html


If you have some ideas of improvements please let the author know (see above). I'm not planning to create rootfs images or anything huge but there are some things that I'd like to see kustomizer do. Check the script for the current TODO.

If someone is interested and willing to work on this please contact Risto H. Kurppa ( risto at kurppa dot fi ). Moving to projects.openmoko is possible.


# Version 0.41 - 2009-04-28
# (new) aapotap to rotate the screen
# (new) knj repository, http://wiki.openmoko.org/wiki/Knjrepository
# (new) jdd - jack detection daemon
# (new) knjmokowifi wifi manager, see http://wiki.openmoko.org/wiki/KnjMokoWifi
# (fix) typo: dim time -> blank time
# (removed) omnewrotate - didn't work as expected.. 
# Version 0.4 - 2009-03-15
# (new) Kustomizer mailing list started: joing by mailing kustomizer+subscribe@googlegroups.com
# (new) wlan
# (new) install log stored to a file!
# (new) enter key added to the default keyboard
# (new) Finger keyboard http://lists.openmoko.org/nabble.html#nabble-td2217821
# (new) browse keyboard http://www.opkg.org/package_144.html
# (new) Voicenote http://www.opkg.org/package_140.html
# (new) qtopia calendar
# (new) Mokomodes http://users.jyu.fi/~hejajama/openmoko/mokomode_0.1_arm.ipk
# (new) pipes http://www.opkg.org/package_155.html
# (new) OMnewrotateMOD http://www.opkg.org/package_148.html
# (new) leafpad http://www.opkg.org/package_152.html
# (new) perpendicular http://www.opkg.org/package_150.html
# (new) voicenote http://www.opkg.org/package_140.html
# (new) acceleroids http://www.opkg.org/package_154.html
# (new) qtopia notes/text edit
# (new) findutils
# (new) qtopia ringtone/profile settings tool (check wrench -> profiles)
# (new) netsurf - another not-working web-browser for you to play with (http://cc.oulu.fi/~rantalai/freerunner/netsurf/)
# (new) openmoko-browser2
# (fix) changed the following to point from repositories to original url: centerim, openttd, numpty, xlogical
# (fix) Password now asked already in the first stage
# (fix) ntpclient installed & time updated in the first stage
# (fix) gpsd doesn't ask for autostart anymore -> one interaction less required during the installation
# (fix) added libexif to make tangogps 0.9.6 work
# (fix) sortdesk now installed from projects.openmoko.org to make sure it's installed
# (fix) pythm-fix by yebo gogo (=some packages from SHR & then custom pythm .tar.gz..)
# (fix) typo when installing enca - but enca still fails in md5sum mismatch..
# (fix) gwaterpas icon
# (fix) Another try with dillo-ssl
# (removed) tapuntap(aatap) - installed omnewrotatemod instead
# (removed) openmoko-mediaplayer2 - pythm does ~the same
# (removed) wireshark - not often needed..
# (removed) tangogps sample config - new yaouh version has fixed this?
# (removed) xmahjongg - it never installed..
# (removed) gpssight - installation fails
# (removed) liquidwar - package segfaults opkg..

# Version 0.35 - 2009-02-20
# (new) pymixer from http://wiki.openmoko.org/wiki/Neo_Freerunner_audio_subsystem#Alsamixer_channel_controls
# (new) Bytestore settiong builder: http://lists.openmoko.org/nabble.html#nabble-td2353361
# (new)    - Dillo SSL works!
# (new)    - Not suspending when USB connected
# (new)    - Improved Mokoservices
# (new)    - Tangogps configuration file (for yaouh)
# (new) yaouh map tile updater
# (new) AppManager package installer GUI
# (update) fbreader now installed from http://www.mikeasoft.com/~mike/openmoko/fbreader_0.8.2a-r7+elleopatches_om-gta02.ipk
# (fix) often-not-available enca package doesn't prevent any more other libraries from being installed -> more ok installs :)
# (fix) pythm icon
# (fix) more pythm fixes & required packages..
# (fix) openmoko-agps icon
# (fix) navit icon
# (removed) btgps (bluetooth-gps - not working, broken bluez-utils :(
# (removed) xskat (card game)
# (removed) moko-eightball (toy)

# Version 0.3 - 2009-02-19
# Many opkg.org packages fail to install because of bad packaging. They're still in there in case the packages are fixed at some stage.
# /dev/dsp is sometimes reserved (by speech-dispatcher?) so other apps can't use it
# GSM registration takes a long time
# (fix) all possible packages installed using default & opkg.org & navit repositories
# (new) tried to fix speech-dispatcher -bug, see http://lists.openmoko.org/nabble.html#nabble-td2175057
# (new) password required for the root user during installation
# (new) ssh-over-wlan allowed
# (new) navit repository added -> updates from svn 1793 to 2051+ :)
# (new) Backups copies of some changed files stored to /home/root/backup
# (new) ntp to set clock in time
# (new) Sortdesk icons (thanks Yoann - http://lists.openmoko.org/pipermail/community/2009-February/041915.html)
# (new) opentts -> navit speech guidance works more or less
# (new) Sample book for fbreader included: http://www.gutenberg.org/etext/24948
# (new) linball
# (new) gtick http://wiki.openmoko.org/wiki/GTick
# (new) guitartune http://www.opkg.org/package_115.html
# (new) pythm http://www.opkg.org/package_1.html
# (new) fourier - sounds work -> returned
# (new) pypennotes
# (new) openmiaocat
# (new) agps
# (new) pythm & a fix to make it work w. python 2.5.
# (removed) mofi - doesn't work :(
# (removed) pidgin - segfaults
# (removed) scummvm - useless..
# (removed) yaouh - doesn't co-operate with latest tangogps versions without some hacking :(

# Version 0.2 - 2008-02-06
# (new) two run system:
# 1st run: illume-theme, wrench, qwerty are installed, opkg.org, storage.conf/qpe-bug fixed. Then restarted
# 2nd run: user needs to start Kustomizer again (and switch suspend/dim off!!) -> the rest is installed
# Rewriting the instructions
# General cleaning
# (new) ntpclient 
# (new) http://www.opkg.org/package_121.html - MokoMaze
# (new) ttf-liberation-mono (vala-terminal uses this)
# (new) battery http://wiki.openmoko.org/wiki/Forcing_fast_charge_mode
# (new) runs /media/card/customscript - the user can add his own stuff there
# (new) automatic prevention of suspend & dimming
# (update) yaouh - version update
# (update) neon - version update
# (remove) Finnish keyboard layout & dictionary
# (remove) custom scripts from card
# (remove) cellhunter - on FSO-based only?
# (remove) Guitartune - on FSO-based only and libfft fails to install
# (remove) fourier - libfft fails to install
# (remove) zomg and appmanager - less used..
# (remove) pingus - doesn't install
# (remove) mumpot - useless for most
# (remove) usbmode - battery replaces most of this
# (fix) watch checkrate changed from 1s to 2s
# (fix) libglade-2.0 -> libglade-2.0-0
Personal tools