This is a list of software on the Nokia N810 or available for it. I haven't actually used every program yet; I'll update this section gradually as I get to the various programs. [D] means that the software is pre-installed in the distro; the rest was downloaded, mostly from the Maemo Download Area.
While Maemo-2.x (and I believe 3.x) used Opera as the web browser, 4.0 uses Mozilla. So far it has been fairly well behaved and better than Minimo (Mozilla for embedded devices, an early version) on Maemo-2.x. However, I found the keyboard integration of Opera to be more to my liking, and I should investigate whether I can install Opera from an old Maemo version.
Mozilla uses a memory cache, so when you follow a link to another
page and then return, the first page can be displayed instantly
.
However, it is not too bright about recycling the memory, and after
not too many pages are viewed it will be necessary at least to close
and restart Mozilla, though I've found that rebooting gives better
results. The symptom is that applications get very slow (because they
can't keep all needed program code in memory), and a dialog box eventually
appears suggesting applications to be closed.
RSS is not a big part of my life, but I located some RSS feeds and tried out the reader. It looks serviceable.
It does reasonably well on text-only PDFs. However, in Maemo-1.1 I found that PDFs containing graphics took an outrageous amount of time to be rendered. I blame this on the need for floating-point operations -- the CPU does not have floating point and it has to be emulated in software by integer operations, slowly.
Gnu multi-format document reader. It is
available for Maemo-3.0 Bora
but it depends on libraries which
are unavailable (probably renamed) in Maemo-4.0. In Maemo-1.1 I liked
it somewhat better than the Maemo PDF viewer, but it also was slow on
graphics due to the lack of hardware floating point.
It's for use on the UNIX command line. It's
like more
but better -- it uses ncurses and can go back to
previously viewed parts of the file. I prefer it to more
,
particularly the version of more
in the distro which comes from
Busybox.
This is the Gnu multi-protocol instant message
client, formerly called Gaim. I also installed Additional Pidgin
Preferences
and Pidgin Default Smiley Theme
. Connecting to my
own XMPP/Jabber server first from the local net and then
from a remote location, I was able to successfully conduct an instant
message dialog. Pidgin (and Gaim) can do a variety of protocols, and on
the 770 with Gaim I used MSN
successfully.
It does have a plugin for generic XMPP/Jabber, but in account setup it insists on remembering the password and will not record the account without one. My Jabber server coordinates with the host OS for authentication, and my security rules forbid having my password saved anywhere without cryptographic protection. That's the end of osso-chat.
Mail reader, ncurses based. This is my
preferred mail reader. But it has one nasty feature on Maemo: it sends
mail from
the executing user, whose loginID is user
.
There are workarounds and I'll have to set these up. [Work on later]
The e-mail client from Maemo-1.0 was universally despised. I need to check if it's any better in Maemo-4.0.
This is a VOIP service using SIP and STUN. It gives free calls plus instant message services between subscribers, and very inexpensive bridging to PSTN (landlines and voice cellphones), including internationally. In 2006 I tried out Gizmo, but had a lot of trouble with codec mismatch to the PSTN provider (Verizon) that I really wanted to connect to, so I gave it up. This will have to be checked out again. The installer for Gizmo is in the distro, not the full program, which in 2006 took about 13 Mbytes.
This is a VOIP service using a proprietary protocol. It includes a peer-to-peer feature in which users who are directly on the Internet act sort of like STUN servers for those using NAT. Other than that, it is closely competitive with Gizmo. The Skype user interface normally uses the Qt widget set, and in 2006 with Maemo-2.0 Skype declined to make a GTK version available for use on the Nokia 770, whereas Gizmo took that opportunity. Evidently Skype have now seen the error of their ways. But I personally dislike proprietary protocols and also dislike the user STUN service, so I won't be putting much effort into Skype. The installer is in the distro, not the full program.
This should be investigated.
With Maemo-4.0 Chinook
the package can be
installed by the Application Manager. (On the 770 you need to use
apt-get.) The software itself behaves like a normal SSH daemon and client.
I was not able to install the meta-package that drags in the server and
the client at once, but I had no problem to install them separately.
During server installation it requires you to create a password for root.
Be patient while it creates your host keys.
The provided configuration file does not enable publickey authentication,
so I needed to copy from my Nokia 770 /etc/ssh/sshd_config
(with publickey enabled) and /root/.ssh/authorized_keys
,
giving the root password on each transaction. After that, the program
performed completely normally, executing for me authenticated by my
RSA key.
A very good VPN endpoint, which I use on my work machine. The normal configuration that I use on my laptop also works on the N810 and 770. It asks for the passphrase for the private key when starting up.
Client for Cisco 3000 VPN portal; believed to use IPSEC. I'll be curious how generic the IPSEC is. [Investigate later.]
Client to interact with a remote host running Microsoft Windows. The effect is as if the keyboard, mouse and monitor were on your local machine. See also VNC. [Investigate later.]
Client to interact with a remote host running Microsoft Windows or Linux. The effect is as if the keyboard, mouse and monitor were on your local machine. It is most useful for interacting with Microsoft Windows from your Linux box. See also rdesktop.
On the 770 this works well. On the N810 the version for Maemo-2.0 will
install but not execute because it depends on old library versions (which
are not properly in the dependency list). Unfortunately there doesn't
seem to be a version for N810/Maemo-4.0 [yet]. The version for Maemo-3.x
Bora
also depends on Bora libraries, which are recognized
if you attempt to install it.
This program, an editor for flat files, was written for Maemo-1.0 as a demo, but I found it very useful within its limitations. In particular, beware that if you alter the file and then exit, it does not ask if you want to save your changes; it just loses them. Also, it uses a proportional font, so tabs are hit and miss. Several releases ago maemopad+ made an appearance; this appears to be for sketching and for making sticky notes, and it is useless for my purposes.
From http://khertan.net (requires prerequisites, see his page). This is an editor for flat files that can be launched from the menu system. Except for the microscopic default font, it is pretty good. It has syntax highlighting for program languages.
A flat file editor. The version in my cache does not install due to version skew in libraries, and I can't find a version for Maemo-4.0.
Improved vi editor. I couldn't get a current version, but the one I cached for Maemo-2.x still installs and works. Vim imitates vi completely, while the Busybox version is annoyingly limited.
I didn't find this note-taking application
to be useful, but other people might like it. It is not useful as an
editor for flat files, since it uses a rich text
format.
I rarely need to make sketches on my machine, but when I did, this program was serviceable on Maemo-2.0. In blogs I've seen other people's artwork which was well done; in other words, in skilled hands the program can produce a nice drawing.
This is the first time I've had a GPS receiver, and I was curious to see what it did.
In forums a number of people have complained that the map program is
slow to initially locate the satellites. I power cycled
it several
times, and the time from starting the daemon to delivering the first
location ranged from 15 seconds to 2 minutes, except for two times when it
reported nonzero signals from several satellites but never delivered a
result. I guess my advice is to give the program a little time to acquire
signals, but to restart it if no data is forthcoming.
Without a subscription, the program comes preloaded with several sets of maps and a list of points of interest. I believe it will do more for you, including driving directions, if you pay it. The maps and software come from Navicore.
This is another GPS map program. It is mature, being one of the first add-on applications for the 770. It uses open source map images and point of interest lists. I've been concentrating on Maemo Mapper because maps are available of territory outside the USA. A little more detail on Maemo Mapper is given here.
Since all the map software uses the same GPS daemon, all have the same weaknesses when initially locating the satellites.
This is another GPS map program. It may have some advantages over maemo-mapper, but I had trouble to learn to use it and reverted to concentrating on maemo-mapper. It is described in more detail here.
Sound bite recorder. [Investigate later.]
Program for recording webcam images. The help writeup describes the webcam on the N800. The N810 has a webcam of 640x480 pixels facing the user, i.e. good for video conferences but poor for taking photos of scenes and events. The N800's camera could be rotated front or back.
The camera program displays the webcam image continuously. In limited light, i.e. artificial light at night, the image is scaled to have a normal brightness, even though the pixellation of the image is obvious. As far as I can tell, none of the keys triggers saving an image, but you can do so from the page menu. The result is in JPEG format with rather low aggressivenes in compression, 39% of full size based on 24-bit color (it's really 16-bit). The picture goes into /home/user/MyDocs/.images/camera under a non-obvious filename.
There is also a mode for viewing the photos in this directory.
I don't plan on using either the camera, or this application, for actual photography, although I will be testing video conferencing.
One of the chips in the N800 includes a FM radio as a kind of unsupported freebie; this program turns it on. However, the N810 does not have this hardware, so there's no point installing the software either.
All the media players use a shared framework for loading a codec into the DSP if available and piping the results to the speakers, wired headphone, or bluetooth headphone. The differences are in the user interface.
This is an Ogg Vorbis codec that runs in the DSP. Configuration files or tweaks are provided so media players can recognize Ogg Vorbis files and use this codec to play them: specifically Osso Media Player and Kagu. However, the Mozilla browser does not recognize the .ogg extension and I have not discovered any standard way to get it to do so.
This program is available only as a home desktop applet. It connects to a streaming audio source and plays it. The user interface is convenient and small.
Using the Vorbis codec it can play such files. However, the MIME mechanism, or whatever is used, is not modified so local files with the .ogg extension play automatically. Also, when the web browser encounters a remote M3U file it runs Osso Media Player which does read the file, but thinks that an audio stream is not available at the referent location, even with MP3 tracks.
This is for playing local files. It needs first to scan your machine for music files. It recognizes M3U playlists on the device but does not recognize URLs in them as valid tracks. (I think it wants to see plain filenames.) But you can play tracks individually out of the index. It will play Ogg Vorbis. It automatically detects the presence of a Bluetooth headphone and uses it, over HSP (8000 Hz mono, i.e. suitable for telephony, not music). If you have the a2dp daemon from mplayer, Kagu will use it. I believe, but am not sure, that the headphone usage is handled by the central service, not specifically by Kagu.
Another music player. [Not installed, investigate later.]
Yet another media player. [Not installed, investigate later.]
Sounds generated on your N810, e.g. internet radio, can be streamed to a playback node, and/or sounds from a mediastreamer source can be played back on the N810. I wonder if this might be useful for me? I wonder how commercial it is, i.e. if you need a continuing license. [Not installed, investigate later.]
It's a simple four function calculator with memory add and subtract; it keeps a record of results like a printing calculator. This is all you need for bookkeeping.
This is an emulation of the Hewlett-Packard HP42C calculator, which uses Reverse Polish Notation. This calculator is essential if you are doing scientific calculation or if you appreciate the advantages of RPN. You can even create a simple program, save it to a file, and reload it later.
The Gnu spreadsheet. The version in my cache does not install due to version skew in libraries. I found an updated instance in http://people.debian.org/~tschmidt/maemo/chinook/gnumeric/; it requires libraries which also can be found on his site. When travelling I found this spreadsheet program to be very useful for keeping track of items that had to be declared for customs, including their valuation.
This is the native clock application. You can
set your home timezone (keyed by a city in that zone) and a
destination
timezone; when the application is open the present civil
time in both places is displayed. There is also a desktop applet that
shows just the home city's civil time.
This is also the control interface for the alarm clock. In Maemo-2.x when you set an alarm the previous time would be preset, but in this version you can set multiple alarms and choose daily, weekly or no repetition, and in the latter case the alarm vanishes after ringing. A workaround is to specify weekly repetition, and alter the date on days when you want the alarm, remembering also to advance the date if an entire week passes alarm-free.
Puts a tiny clock in the statusbar. This was
formerly named panelclock. For my first try I downloaded version 0.6 from
the Maemo
Garage; it seems to be for Maemo-3.0 Bora
. On Bora you need to
look in Control Panel - Navigation - Statusbar and mark the checkbox for
statusbarclock. The equivalent titles for Maemo-4.0 are Control Panel -
Panels - Statusbar, but even so the plugin does not execute.
For the second try I obtained statusbarclock version 0.0.3 dated
2008-02-15 specifically for Maemo-4.0. This is described as the
large
status bar clock, because it uses two adjacent slots. You
need to look in Control Panel - Panels - Statusbar and mark the boxes for
both the hour and minute displays, and reorder them so minutes come just
before (i.e. to the right of) hours.
This plugin now works, and I'm glad to have it back. since I consult it often. I have read that many people have given up on wristwatches and use their personal electronic devices for that function.
It shows a time-of-day clock or a timer that
counts up or down, with a large font, making it useful when setting clocks
at the timezone shift for daylight saving time. I found a current version
in the OS2007 (Bora
) section of Maemo Downloads
. However, it
is not CPU-friendly, redisplaying the current time as quick as it can. I
hacked it to fix that misfeature, and will be sending in the fix.
One-player Mahjongg game: the pieces, two or four of each kind and 144 total, are randomly ordered and stacked in piles of various difficulty. The object is to remove pairs of pieces, giving access to those below or surrounded, in an intelligent order that allows all pieces to be removed.
The Doom game. [Investigate later.]
Chess game against the computer. It can beat me, which is more a comment on the quality of my play than on the intelligence of the game engine. A good chess player should be evaluating this game.
I won the initial (easiest?) game once, but I have never been able to figure out the strategy for this game.
A Tetris clone. It seems like a nice implementation, if you like Tetris.
This is a fairly standard X terminal, i.e. a program that displays using the X Window System (the graphics system that all the other programs use) and provides interactive input and output to a command shell, or any other program that uses a serial terminal. Unlike in previous Maemo versions it is pre-installed with the distro, greatly easing the procedure for a geek to set up his machine.
For copying files between hosts, e.g. for making backups. It works reliably.
The Busybox shell, which they identify as ash,
offers POSIX features and nothing more. For both interactive and scripting
use it is annoyingly limited in features. The bash-m package is Jimc's
compilation of Bash for Maemo-2.0 Mistral
. It still installs.
Do not install the available bash package because it conflicts with
Busybox (duh) and will therefore cause every package depending on Busybox
to be tossed, i.e. most of the distro. The packages should depend on
/bin/sh, not on Busybox by name.
Includes things like ping and traceroute. Use Busybox-Net instead. [Investigate later.]
The horrid Busybox implementation of these programs is almost useless. But I haven't yet been able to find recent versions of these packages. I successfully installed the copy from Maemo-2.x.
Sets the system clock from a remote NTP server. The version that jimc compiled for Maemo-2.x still installs and works.
NTP daemon. [Investigate later.]
Top-of-the-line C
language compiler. Also
depends on cpp and binutils; recommended to have libc6-dev to get the
header files, and make
.
This is a framework to deal with all known audio/video conferencing protocols. See the farsight home page.
This is a library for SIP (voice over IP and related protocols) per RFC 3261, to be used by a user agent, which in our case is maemo-chavo.
This is Festival Lite
, a text to speech
converter, which according to web postings may or may not be usable by
Maemo Mapper to announce where you are. (I didn't install it.)
Use as a remote control for a TV or VCR. The N810 does not have an IrDA transmitter so transport would have to be by Bluetooth (AVRCP?). (Not installed.)
The gstreamer codec framework is used, and esd is used for sound multiplexing, i.e. all sound-producing apps connect to esd, which combines the streams and sends them to the (one) output device. The distro supplies codecs for ADPCM, Theora, Vorbis (as in Ogg), FFMPEG, MPEG4 from Hantro, the Helix engine from RealMedia, Macromedia (Adobe) Flash Player, and Speex. (I may have missed some.) ADPCM is presumably the G.726 ITU-T speech codec.
Languages supported out of the box: Danish (da_DK), German (de_DE), English (en_GB and en_US), Spanish (es_ES and es_MX), Finnish (fi_FI), French (fr_FR and fr_CA), Italian (it_IT), Dutch (nl_NL), Norwegian (identified as no_NO), Portuguese (pt_PT and pt_BR), Russian (ru_RU), and Swedish (sv_SE).