N810 announced!

N810 Internet Tablet

As other Nokians have already announced, the N810 was officialy announced! Some highlights from the Hildon side:

From my “user experience” with this device, I think the keyboard improves a lot the messaging and web browsing experience, the GPS is an excelent addition and the general UI polishing brings a smoother interaction with the device.

Last but not least, this is a device full of hacking possibilities! Yay!

Spinning off Hildon

As pointed out by Carlos in GNOME Mobile mailing list and Quim in his presentation at LinuxTag, Hildon will become an upstream project. The idea from now on is to make Hildon a more independent and community-driven project as it’s going to be used in different contexts other than Maemo (i.e. Ubuntu Mobile). This means that Hildon won’t be a Maemo-specific project anymore and will have its own release schedule, roadmap and community.

As a consequence, we decided to move the full Hildon stack to GNOME infrastructure. This way we can stay closer to GNOME community and stimulate collaboration between both projects. We’ve started the migration process already but it will take some time because we need to first re-organize our internal way of working to make sure everything is fine after the migration. Big thanks to Olav for the great and quick help!

For those who don’t know: what is Hildon?

Hildon introduces a new desktop for handheld devices. It comprises a lightweight desktop, a set of widgets optimized for handheld devices, a set of theming tools and other complementary libraries and applications.

We’ve created a page GNOME wiki. There you can find a brainstorming space for the release schedule and roadmap, a status page for our migration to GNOME, and how to get involved in Hildon. We already have a mailing list in GNOME servers. If you are interested in Hildon development, don’t hesitate to subscribe!

Hildon Desktop Plugin Howto

For those brave developers who are using Sardine to use/test/develop the bleeding edge Maemo stuff, this post is for you. :-)

Well, I’ve already shown before how to write Python plugins for Hildon Desktop. This time, I wrote a howto for writing C plugins for Hildon Desktop with the new GTypeModule-based API. All plugin types (Task Navigator, Status Bar and Home) are covered.

For those other super-brave developers who are building Hildon Desktop outside Scratchbox, it’s a good oportunity for you to test our plugin system and give some feedback, send patches, and report bugs.

The howto is available at:

  http://maemo.org/maemowiki/HildonDesktopPluginHowto

Go Go Go!

Writing a cool Python plugin for Hildon Desktop

Ok, now that I’ve shown how easy is to have the basic code for a Python plugin running in Hildon Desktop, I’d like to demonstrate something more useful and cool. I did this screencast presenting how to write a plugin which randomly shows images from your “Images” directory in your Home area. Cool hun?


Click on the image to watch/download the screencast (10 minutes, 8 MB).

Some (obvious) improvements for this plugin would be:

  • A configuration dialog where you can define the images directory and the delay for image switching.
  • Disable image switching when the device idle or when the Home area is not visible
  • Switch to next random image when clicking on the plugin.
  • What else do you want? :-P

Enjoy!

——–

Sidenote 1: yes, the screencast shows Hildon Desktop running on a 800×600 resolution. :-)
Sidenote 2: some people have been asking if Hildon Desktop is available in N800 already. The answer is no. Hildon Desktop is a major rewrite of maemo-af-desktop and will be shipped in the next major releases of Maemo. Of course you could run it on your N800 at your own risk. :-P

Building Hildon Desktop outside Maemo/Scratchbox environment

I wrote a step-by-step guide to have Hildon Desktop running outside the Maemo/Scratchbox environment. Our major goal here is to make it easy for distributons to package Hildon Desktop so that developers can have a quick-to-setup environment for the development of plugins which doesn’t need to be built against ARM such as Python plugins. For now, this guide only applies to Ubuntu (If you can point out the changes needed to work on another distribution, please let me know). This is a call for testers and brave developers to follow the guide and report the missing/problematic bits.

  http://maemo.org/maemowiki/HildonDesktopPortability

There are some issues that still block us from getting Hildon Desktop in a distribution but we’re working on that.

Writing a "Hello World" Python plugin for Hildon Desktop

As I told you before, Hildon Desktop now has a new plugin system and one of the cool things about it is the Python support. Just for the sake of demonstration, I recorded a screencast with the step by step process of writing a “Hello World” Python plugin for the Home area of Hildon Desktop.


Yes, it’s really simple. Of course, this is a useless plugin but I just wanted to demonstrate how easy and simple is to have the basic infrastruture done.

Enjoy!

Update 1: the GIF image is too heavy and people are having problems to watch the screencast. I’ll upload a new (and better) file tomorrow as soon as possible. Sorry for the inconvenience. :-/
Update 2: I removed the link to the screencast for now just to avoid other people to have the same problem and complain about the same thing.
Update 3 The link is updated with a new/more-complete version of the screencast.

Shouldn’t we talk?

The number of GNOME-Platform-based user interfaces (or “Desktop environments” if you prefer) for embedded devices is growing. AFAIK, those are the guys in the field:


We have different focuses: OLPC (Sugar) on education, ACCESS on PDAs, Maemo (Hildon Desktop) on Internet Tablets and OpenMoko on cellphones. However, I’m sure we have a lot to share and learn with each other in terms of architecture, UI framework, plugin systems, standards, code, ideas, and so forth.

I saw that (probably) there will be some talks related to those projects in GUADEC. This means that we will all be at the same place, at the same time, It’s a good oportunity for us to get together and talk! So, what do you think?

Update 1: It seems that some very interesting discussion among OLPC, Maemo and OpenEmbedded guys already took place during Bossa Conference. Good to know we’re already talking. :-)
Update 2: Someone commented that I should add LiMo Foundation to the list. Does anyone know if there will be anyone from LiMo at GUADEC?

Hildon Desktop + FreeDesktop.Org

We’ve been trying to put some effort on making Hildon Desktop more compliant with FreeDesktop.Org standards. We have some nice news on this direction.

Desktop Notifications

I added a service that implements the Desktop Notifications draft standard. It’s not complete yet, I still need do some changes on one of our widgets, but it’s working like a charm. Also, support for multiple notifications at the same time is pending. In practice, this means that applications using libnotify (or any other compliant client library) will have their notifications shown on Hildon Desktop! Here is the result:


Hildon Desktop showing a notification using libnotify.

Notification area (aka system tray)

Moises rocked our world by adding support for system tray standard in Statusbar. This means that if you use GtkIconStatus (or any other compliant implementation of the client-side) it will appear in Statusbar. Of course, still the usual Statusbar plugins can be loaded in Statusbar too. There are some pending issues with the theming of systray items (as you can see in the screenshot) but we expect to have it fixed soon. Here is a (mandatory) screenshot of Hildon Desktop running inside Scratchbox:


Statubar showing Gossip and Network Manager systray icons.

Update: Moises has just fixed the theming problem. Yay!