- Homepage: http://iki.fi/tjyrinki/
- Founder of Ubuntu Finland, Debian Developer, translator in Gnome, Ubuntu, Pidgin etc.
When setting up my second FreeRunner to use Debian, I took care to document how I had ended up with the Debian system I've been using. At the same time, I made some of my ugly hacks a bit less ugly. I have been also working on packaging the software I use in Debian, if they are not available there (like literki, woosh). This series of commands and configuration is aimed for people who wish to have similar setup, or simply learn potentially very useful things if the default Debian setup is too dull. The images show a running setup.
The instructions are divided in three sections, the two first (Nice and Ugly) you are probably quite interested in. The Bad thing is needed as well by the other configuration but you may choose to compile the software yourself.
These instructions use openmoko-panel-plugin, but in reality I use a heavily modified, but alas non-free(ish) mokoservices.py. One day I'll just write a simple button application to my own liking from scratch. Or use zavai.
I did a last minute change to .keylaunchrc when my Debian sid had for some reason weird bindings to the physical buttons. The "Down" binding obviously causes other problems when trying to move downwards with the keyboard... so in practice you should do some keyboard reconfiguration magic (sorry, I'm not sure what I did) and remove the Down binding from .keylaunchrc
These instructions install the default Debian FreeSmartphone.Org stack, ie. the latest one that has been packaged. I have however used older one, which is roughly the one in official Debian squeeze repositories. It has its own problems, but in the "real use Neo" I've had more problems when I've tried to upgrade, so I've stayed at one that mostly works (but not all the time). The binaries I have in use:
The Nice Part
Install Debian: http://wiki.debian.org/DebianOnFreeRunner
Boot Neo, bring up the keyboard with AUX and then:
# ctrl-alt-x to bring up terminal passwd # select your root password
Now you can connect to Neo from your desktop as root.
# Now attach the USB cable and check that connection between your desktop and Neo works. ssh firstname.lastname@example.org # Fix PATH echo export PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin:/usr/local/bin >> /root/.bashrc exit ssh email@example.com # If you installed with TASKS="ALL", the following should already be # installed: # wicd, navit, tangogps, midori, pidgin, mokomaze apt-get install wicd navit tangogps midori pidgin mokomaze # intone as E17 dependent only in sid # gnome-bluetooth did not install from testing as well at the moment apt-get install intone gnome-bluetooth # Settle down for more stable stuff sed -i '/experimental/d' /etc/apt/sources.list sed -i 's/sid/testing/' /etc/apt/sources.list apt-get update # More of my setup apt-get install fbpanel literki woosh mtpaint neon leafpad abiword gnumeric \ xserver-xorg-video-glamo synaptic gnome-games lxterminal libgtkstylus \ gnome-themes-extras keylaunch omhacks gpsd # Add gpsd device sed -i 's/DEVICES=""/DEVICES="\/dev\/ttySAC1"/' /etc/default/gpsd # Take glamo into use sed -i 's/fbdev/glamo/' /etc/X11/xorg.conf exit
The Ugly Part
The Ugly and Bad parts are about transferring and unpacking ready-made files to Neo. Please grab the files containing configuration and binaries from:
# Transfer the stuff needed in Ugly and Bad parts to Neo and SSH in # (of course, you can also wget them directly at Neo) scp custom_config.tar.gz custom_binaries.tar.gz fbpanel_5.6-1_armel.deb firstname.lastname@example.org: ssh email@example.com mv /root/.xsession /root/.xsession.debianoriginal # "Ok" changes, human-readable files and an image. My copyrighted under either # original license (if modified from upstream) or BSD. tar -C / -z -x -v -f custom_config.tar.gz
Files in custom_config.tar.gz explained:
- /etc/literki: my literki configuration which diminishes the active area to not overlap with Zhone's bottom right buttons, adds ä,ö,å letters and adds another "X" behind Fn which closes current window
- /root/.fbpanel/default: my fbpanel configuration, cat for details. Note that Debian logo menu's active area is four times the width of the actual (visible) icon.
- /root/helpers: quite a stub directory, but in reality I have loads of stuff here and have added it to path
- /root/.gtkrc-2.0: setting Darklooks theme into use
- /root/.keylaunchrc: my personal keylock application to AUX and suspend helper to Power button
- /root/.panel-pluginrc: openmoko-panel-plugin customization and disabling of the problematic buttons plugin
- /root/.xsession: this is the big one importance-wise, crude hacks to have fbpanel and literki nicely behaving among else. quite well commented.
- /root/debian-swirl.png: Debian logo
- /usr/local/bin: fbpanel, literki and lockscreen helpers
- /usr/share/themes/NeoSpecial: my matchbox theme
The Bad Part
This is the really bad stuff, binaries from random source (me)! Luckily you can compile these three pieces of software easily yourself as well, although that means you need to install development environment on the Neo as well.
# Bad changes: # - literki compiled with 02_optional_reduce_to_plain_keyboard.patch that # I've included in the Debian literki packaging sources: apt-get source literki # - neolockscreen, sources at # http://users.tkk.fi/~tajyrink/moko/neolockscreen.tar.gz tar -C / -z -x -v -f custom_binaries.tar.gz # From upstream tarball, http://fbpanel.sourceforge.net/, with checkinstall dpkg -i fbpanel_5.6-1_armel.deb
poweroff # Boot!