Debian Linux (Maemo) on the Nokia 770

These pages will be filled with random things related to the Nokia 770 internet tablet running the Debian Linux derivate Maemo.

Sections:

A port of Unison for the Nokia 770

About

Unison is a great tool to synchronize files between different computer systems, supporting various UNIX platforms including Linux and also Microsoft Windows.

Prerequesites

Installation

Download the attached Debian "arm" package for the older ITOS2005 operating system or the new "armel" package for the newer ITOS2006 (released end of June 2006) and install it with the Application Installer.

Usage

See the Unison manual for details.

Quick HowTo to synchronizing your $HOME on the Nokia 770

(click pictures to enlarge them)

Install Unison on the Nokia 770 and Unison with GTK support on your desktop machine. Create a directory (e.g. ~/Nokia770) on your desktop machine that will hold your sync-ed hierarchy.

Start Unison on the desktop with

unison-gtk

choose "Create new profile" and give it a whatever name you like, e.g. Nokia770.

Step 1

Double-click the new profile, select your local directory (in my case /home/spiney/Nokia770)

Step 2

for the second directory choose SSH, insert hostname or IP address in the Hosts field (and the username "user" in the User field in case you do not have a special Nokia770 configuration in ~/.ssh/config)

Step 3

Ignore the warning about first sync, because it is the first time you synchronize and enjoy!

Step 4

Note: to avoid Unison trying to synchronize it's own status directory on the Nokia770 (which will never be in sync because every update will change it), I suggest adding the following line to ~/.unison/<profilename>.prf:

ignore = Name .unison

Feel free to just synchronize the MyDocs directory by providing "MyDocs" when specifying the second directory.

Todo

Built a working GTK-enabled package, as in: find the reason why the application segfaults after a couple of seconds when built with GTK support.

Disclaimer

This package is provided without any warranties, use it on your own risk. Feedback is very welcome, feel free to use the feedback form or add comments below.

Sections:

A port of Winzig for the Nokia 770

About

Winzig is a suite of PIM style applications written in Python/GTK. It works not only on the Nokia 770 but also on desktop Linux installations and even on Windows.

Winzig Screenshot

Since my attempts to use GPE weren't very successful (well, the synchronisation drives me mad, and where's the point in using a PIM application without sync-ing to the desktop? But I'm working on that too, slowly) and the original port of Winzig for the ITOS2005 version of the Nokia 770 software didn't work any longer, I thought I'll give it a whirl and came up with the package below.

Prerequesites

Since Winzig is a Python application, you'll need to install the PyMaemo packages, see the FAQ in the Maemo Wiki.

Installation

Just download the attached package and install it with the application manager. Note: the package only works with the ITOS2006 release of the Maemo platform!

Usage

Start Winzig from the menu (extras -> Winzig) and use it, it should be pretty much self-explaining. The data will be stored in $HOME/.winzig

Changelog

  • 1.79-maemo1: new upstream version; local config file has slightly different syntax (uses "Config" instead of "LocalConfig"), if the automatic upgrade of the file fails, it is backed up in $HOME/.winzig/winziglocal.py.bak.
  • 1.78-maemo3: use osso and hildon when running the stand-alone applications
  • 1.78-maemo2: fix wrong permissions on /usr/lib/winzig/Data which results in problems with fresh installs, since the templates can't be copied properly. Thanks to Antoine Schweitzer-Chaput for pointing this out.
  • 1.78-maemo1: new upstream version with the ability to select the shown tabs in the configuration file. Since the user configuration file $HOME/.winzig/winziglocal.py is not updated when running the new version, all tabs will show up again. You have to manually integrate the necessary changes by reviewing /usr/lib/winzig/Data/winziglocal.py which is the configuration file template.

Port Status

  • Most work was done by Michael Mlivoncic already for ITOS2005, so I only had to make sure that Winzig shows up in the task navigator by adding the necessary libosso calls
  • added some hack-ish way of a local configuration file, see the winziglocal.py file in $HOME/.winzig/
  • disabled some tabs in the Winzig shell out of personal preference, but I'm gonna try to put that into the local configuration file
  • adapted the shell script written by Michael so that the disabled tabs can at least be called via xterm, so use
    • weather
    • wrgb
    • wascii
    • wdict
    to access the missing parts of the application. These "stand-alone" versions are not showing up in the task navigator, so be sure not to minimize them.
  • I added the rgb.txt file from the current X.org release so that the RGB table works when using wrgb

Synchronisation and desktop usage

After using Winzig on the Nokia 770 once, copy the $HOME/.winzig directory to your desktop machine, e.g. by using Unison to sync it to $HOME/Nokia770/.winzig. Download the Winzig tarball and extract it wherever you like, e.g. to /usr/local/lib/Winzig. Then put the following script (stripped down version of the one in the Maemo package, adjust the directories to your needs) somewhere into your PATH, e.g. /usr/local/bin/winzig:

#!/bin/sh
WINZIG_DIR=/usr/local/lib/Winzig
# beware the trailing slash, it's needed
WINZIG_DATA_PATH="$HOME"/Nokia770/.winzig/

export WINZIG_DATA_PATH

exec $WINZIG_DIR/winzig.py

Run winzig and enjoy. After that it's just a matter of sync-ing on a regular basis, e.g. before leaving your office/home and when coming back. :)

Todo

  • make categories editable, at least via the local configuration file, but I guess I'd rather talk to the upstream author about this
  • use Hildon/Osso for stand-alone apps as well
  • create a Debian package for desktop usage

Disclaimer

This package is provided without any warranties, use it on your own risk. Feedback is very welcome, feel free to use the feedback form or add comments below.

Sections:

A port of otpCalc for the Nokia 770

About

otpCalc is an RFC2289 and RFC1760 compliant OTP and S/Key calculator, usable for example to generate one time passwords to authenticate against services running OPIE (English mini-HowTo #1 and #2, German HowTo).

Until now I was using otpgen on my mobile phone (which is great, btw), but typing is easier on the Nokia 770, hence I present the port of otpCalc to the Maemo platform.

Prerequesites

None, if you're not trying to access an OPIE-running service from the Nokia 770. If you're using the dropbear client to access a SSH server using pam_opie.so, be aware of a problem with dbclient's way to show the login prompt, see Debian Bug #394996.

Installation

Just download the attached package and install it with the application manager. Note: the package only works with the ITOS2006 release of the Maemo platform!

Usage

Start otpCalc from the menu (extras -> otpCalc) and use it, it should be pretty much self-explaining. You can change the algorithm which is used to create the one time passwords via the application's menu.

Port status

  • ported to GTK2 (easy, because there was very little to do)
  • partly ported to D-BUS and Maemo/Hildon

Disclaimer

This package is provided without any warranties, use it on your own risk. Feedback is very welcome, feel free to use the feedback form or add comments below.

AttachmentSize
File otpcalc_0.97-maemo1_armel.deb17.49 KB

Sections:

Finding the right StartupWMClass for .desktop files (outdated, ITOS2005 only)

If an application doesn't show up in the Nokia 770's task navigator, the reason is usually it's missing or wrong StartupWMClass setting in the .desktop file, usually found somewhere in

/var/lib/install/etc/others-menu/extra_applications/<application>.desktop

Luckily, finding the proper setting is usually rather easy:

  • Launch the same application on some Linux machine (not the Nokia 770 itself!)
  • run the xprop command (which is available on probably all Linux distributions, Debian ships it in the xbase-clients package; unfortunately it is missing on the Nokia tablet itself) and look for the line containing WM_CLASS(STRING)
  • use the exact string that is written right after the equal sign for the StartupWMClass setting

E.g. for Gnumeric (thanks to Eduardo de Barros Lima for the Maemo port!) xprop returned

WM_CLASS(STRING) = Gnumeric

hence setting

StartupWMClass=Gnumeric

in gnumeric.desktop solved the problem of Gnumeric not showing up in the task navigator.

Sections:

Application Icon for ScummVM (outdated, ITOS2005 only)

Note: the information on this page is obsolete, the latest and greatest version (0.8.0 final, as of Jan 21st 2006) of the ScummVM port fixes the described problem (among others).

Playing old Lucasfilm Games (or Lucasarts) classics like Monkey Island or Zak McKracken on the Nokia 770 was my favorite over the holidays, thanks to the great ScummVM port by Tomas Junnonen.

The only thing that was a bit annoying was the missing application icon in the task navigator, so accidentally minimizing ScummVM meant that you had to kill the game since there was no way of getting it back onto the screen. Luckily, the solution to that problem was easy (notified Tomas about this and it's going to be in the next release AFAIK), just add the following line to /var/lib/install/etc/others-menu/extra_applications/scummvm.desktop:

StartupWMClass=SDL_App

After that, ScummVM registers in the task navigator.

Sections: