Thursday, November 13, 2008

Opie datebook2

In Opie news I have been working hard on the datebook/calendar rewrite (aka datebook2). This was a project started some years ago but never finished, but if we are to have SQLite backend support for Opie PIM then it is essential, and it gives me the opportunity to add some more requested features and make the code a lot neater at the same time. Everybody wins!

The skeleton for datebook2 was already in place, and all of the data access classes in the Opie PIM libraries were there and about 98% complete. I must congratulate former Opie team members Stefan Eilers and Holger Freyther for their excellent work there - so far I have only had to make minor modifications to the Opie PIM API code in libopie2, and the original design of the datebook2 skeleton has worked very well as a base to build upon.

My aim is to make the interface almost exactly the same as the original datebook and thus a lot of code has been reused from there, with a fair bit of tidying up. The only remaining pieces from datebook1 not yet implemented are searching, beaming, keyboard shortcuts, a few other minor bits and pieces, and of course testing (!). Additional features on top of what datebook1 provided now include snoozing for alarms, and editing of location & description drop-down lists. I plan to try to improve multiple timezone support, and I may have a go at enabling the linking events together (aka irregular recurrence).

If you want any specific improvements to the datebook feel free to submit requests via the opie bug tracker or mailing list.

Handhelds aplenty

I went a bit crazy on eBay recently and purchased a whole bunch of second-hand PDAs:

* iPAQ h1910
* iPAQ h4150
* Jornada 680e
* Jornada 720
* iPAQ h3850, h3870 and an h3660 all three of which I plan to give away to prospective kernel hackers.

All of these devices were chosen not only because they are now quite cheap, but also because there are already existing working Linux ports for them. They still need someone around to support them however, and in the case of the 4150 there is some minor bugfixing work to be done in Opie (eg. the record button not working, although this could be a keymapping issue). The 1910 works almost flawlessly, hats off to aquadran for a very complete port and thanks for choosing Opie as well :)

I really like the form factor of the Jornada devices - having a usable size keyboard is excellent; however the screen in comparison to screens on other devices is absolutely awful - blurry, dimly backlit, and the colour response is somewhat patchy. It does not help that the touchscreen on the 720 is a bit worn out also. Still, it's plenty good enough for testing. I was able to run the JLime distribution on the 720 which is available with IceWM or a slightly old version of Opie (1.2.2). On that machine, some features are missing (most notably suspend/resume and sound). I haven't gotten around to trying Linux on the 680e, but from what I can tell the port is a little more complete.

As for the h3800/h3600 devices, well, they badly need bringing up-to-date (to the Linux 2.6 kernel). This needs the help of someone with kernel hacking skills - see my mailing list post for details.