2004.02
mickeyl April 21st, 2005
OpenEmbedded / OpenZaurus / Opie
Introduction
Welcome to the 2nd OOO newsletter - keeping you up to date, straight from the horse’s mouth! :)
OpenEmbedded
OpenEmbedded is our next generation build system - a set of tools and metadata to build Linux distributions for embedded devices.
OpenEmbedded has received a real boost in the last months - although unfortunately not due to the participation of new volunteers but solely due to the work of our few core workers. We now have metadata for around 400 packages in the new build system - minus a few duplicates.
Mickey added a lot of SDL games (by browsing libsdl.org) and various Qtopia/Opie applications (by browsing killefiz and a few Japanese sites.). Adding a Qtopia/Opie application usually takes around 10 minutes thanks to the use of the OpenEmbedded build classes. Don’t just believe me - see for yourself.
OpenEmbedded/Zaurus
OpenEmbedded/Zaurus is our alternative Linux distribution for the Sharp Zaurus family of PDA devices. It has been ported to other architectures, e.g. the HP iPAQ, the SIEMENS SIMpad, and the M&N Ramses, to name a few.
Our coworker treke reports to having booted the first OpenEmbedded/Zaurus image on a C760. Although it’s ‘only’ a command line login, it means we’re getting nearer to being in release mode again. There are around 50 packages still to be converted from the old OpenZaurus buildroot - also pending are a few more deviceisms (device-specific functionalities).
Not much has happened in kernel-oz-land. A few people have been interested in doing kernel work, but we haven’t received any patches yet. As mentioned in the last OOO newsletter, this is still one of our most important development areas - so if you don’t know how to contribute to OpenZaurus, start doing kernel work!
OpenEmbedded/iPAQ and OpenEmbedded/SIMpad
Nothing to report here other than that a new bootloader (based on the handhelds.org bootldr) for OpenSIMpad is approaching. In general, work on OpeniPAQ and OpenSIMpad haltet and will be resumed after the build system migration.
Opie
Opie is a graphical environment for PDAs, WebPads and other (embedded) devices. It contains applications such as PIM, Networking, Graphics, Settings, etc. Specific device supported has been integrated for all available Zaurus models, most IPAQs, the SIMpad, and the YopY.
The development tree Opie 1.1 is shaping up nicely. Besides fixing bugs and improving applications all over (see below for some examples), we have started doing some important library restructuration work. We have split up libopie1 into a set of smaller libraries and are now migrating the functionality of the big libopie1 into smaller libopie2*. Some additional details about the proposed library roadmap are outlined in the following excerpt from a post which recently has been sent to opie-devel@handhelds.org:
- Step 1: Merge current libopie1 stuff into libopie2, use that chance to cleanup names, code, and layout and split it up into the appropriate library (e.g. OTabWidget will go into libopieui2, while ODevice ends up in libopiecore2).
- Step 2: Meanwhile and later on, start deriving classes from the libqpe-classes we have known to “love” (e.g. OApplication, OConfig, OGlobal, OStorageInfo, OResource, …) and migrate existing source code to use these new classes instead of those from libqpe. This is required for gradually(!) getting to the most interesting step - step 3.
- Step 3: Sanely reimplement the functionality which is currently provided by libqpe. Throw away and substitute if applicable. Stuff it gradually into libopie2 and this will get what is known since months under the name Opie Development Platform 1.0 (ODP).
As for the roadmap, I expect Step 1 to be completed with the release of Opie 1.2. Step 2 and Step 3 will take the best part of 2004. I expect Step 3 to be completed with the release of Opie 2.0. I’m not even guessing if and when this will ever happen :D
One of the most wanted Opie applications has always been a decent mail client and until recently, we didn’t have one. This has now changed as Alwin, Harlekin and jgf have started working on opie-mail3, a mail client based on libetpan, supporting IMAP and POP3 utilizing both secure and insecure transport layers. NNTP support is also planned.
Mouse reworked the multikeyboard input method and improved its support for multiple keyboard layouts by adding a layout switching applet and a russian keymap. Our translators also did a good job in improving and completing the Opie i18n all over the place.
Treke and I improved Opie’s support for the Sharp C7×0/C8×0 - features such as autorotation and actions on closing the hinge (suspend and lights-off) (should) work now.
Last but not least our coworker Zecke added a few examples to help new people learn how to develop Opie applications. He is also working on an Opie SDK, which we expect to be completed soon. One of highlights of this SDK is a set of application wizards for the KDevelop IDE.
Despite all these improvements, the list of currently unmaintained Opie applications is still pretty large. If you want to adopt an application or help to improve Opie in other aspects, then please send us patches or get in touch with us via opie-devel@handhelds.org.
Epilogue
I hope you enjoyed reading the 2nd edition of the OpenEmbedded/OpenZaurus/Opie newsletter. Feel free to provide feedback or send in questions. Questions of general interest will be answered in the next newsletter.
Thanks, Michael ‘Mickey’ Lauer.