There are areas where free software community fails. Not for technical reasons or lack of resources, but because of management and strategic planning incompetence.
Once I got an idea to get a Linux handheld. There were two models available at the time: Sharp Zaurus and Nokia tablet. The Nokia tablet didn’t have any keyboard so I choose Sharp Zaurus, despite its worse operating system.
The preinstalled operating system on the Zaurus was some old version of Qtopia combined with proprietary applications. It had some nice features but many problems, such as missing Czech environment, limited set of applications, no X support and obsolete development environment. Some improved versions of the system were available but the basic limitations were still present.
After some time I replaced the original system with pdaXrom, a free Linux based operating system for PDAs. It offered X Window System and more modern development environment so it was possible to port common applications to it. Nevertheless pdaXrom was no way complete and its development has deceased during the time.
Developers of several free Linux PDA operating systems decided to join their efforts in the Ångström project. So I replaced abandoned pdaXrom with Ångström. But Ångström offered only very limited set of applications and I’ve never managed to get its development environment working.
There were only two options remaining: Either to put my Zaurus to a recycling center or to install Debian on it. Fortunately I could find a Debian installation for Zaurus so after several years I got chance to run a full featured operating system on the device. Finally I could install Emacs and other basic applications easily. But there were some minor problems and I’ve later upgraded to an up-to-date Debian version. By replacing the old preconfigured kdrive X server with standard xfbdev X server I’ve lost touch screen capability. So my Zaurus remains mostly unusable until I have time to look at the problem and can get it fixed.
I really don’t understand why free software developers waste their limited resources by developing new operating systems that are unmaintained, very incomplete, missing good development environment and generally not perfectly working, when a good and complete operating system such as Debian already exists. All what was need was to customize Debian a bit for use on the particular kind of device. I could see the same mistake was repeated by Neo Freerunner developers. Instead of focusing only on important things like handling calls and SMS, they tried to maintain a complete operating system. In the final result Neo Freerunner didn’t provide reliable calls nor a complete operating system.
Community developers have painfully failed in finding a feasible way of making a good free operating system for PDAs. Nokia managers made a better decision by deciding to base Maemo on Debian, thus avoiding a lot of useless work. I don’t know whether Maemo allows easy porting Debian applications to it using a completely free SDK. If it does then it may be (the only) promising platform unless Nokia decides to stop its further development. Other platforms are either not well maintained, or are not actually free (Android with its proprietary SDK), or are based on a platform that can’t run common free applications (Android, perhaps Symbian as well).