Planet maemo: category "feed:c8aedd4fc8e6e1aebb347f582e7ee195"

Pierre-Luc Beaudoin

MapBuddy 0.2, libchamplain 0.4.4 and 0.5

2010-01-29 05:40 UTC  by  Pierre-Luc Beaudoin

What a big release week!

First, a quick update to MapBuddy:

  • Translations (French, Spanish, German, Swedish, Polish, Slovak)
  • A “Add to addressbook” button on merchant’s window (with the help of Jonathon Jongsma)
  • A precision circle is drawn around your position
  • Kinetic scrolling is turned on

Then, a bigger update for libchamplain 0.4.4:

  • API clean up (with API backward compatibility): champlain_view_set_size should have never existed
  • Fix to make Python bindings work out of the tarballs!
  • Use shared paths by all tiles consumers on Maemo devices to store tiles (saves bandwidth)
  • Load tiles in a spiral manner from the centre (thanks to Jason Woofenden)
  • Optimizations resulting in
    • Faster start-up
    • Smoother scrolling
    • Energy savings (by doing less computations)

Then, a huge update for libchamplain 0.5:

  • First development release with new APIs:
    • Local map rendering (Google Summer of Code of Simon Wenner)
    • New Map Source mechanism à la Pipe and Filter (Jiří Techet)
Categories: Maemo
Pierre-Luc Beaudoin

In order to help people, free and widely available maps are a good tool to rescue parties.  Many users of OpenStreetMap have organized a wiki page to manage the work that needs to be done to quickly improve OpenStreetMap for this part of the world. Thankfully, Yahoo has high resolution imagery of the region making it possible to trace the streets.  Note: remember that only Yahoo imagery can be used, as OpenStreetMap has a signed derivative work permission with Yahoo.

If you know how to edit maps, maybe you can land a hand! CrisisCommon also has other resources.

Follow-up: Mikel Maron has before and after images along with more info.

Slippy Map

Categories: Environnement
Pierre-Luc Beaudoin

One more map app for the N900

2010-01-12 20:24 UTC  by  Pierre-Luc Beaudoin

Well, I finaly got my hands on a N900 (given as a Christmas gift by Collabora to Gabriel).  This gave me the occasion to observe first hand that the Ovi Maps, while having a lot of features, is slow and that the Hildon Emerillon port is less than perfect.  It is hard to use with fingers and feels alien to the platform.

Click to read 878 more words
Categories: Gnome
Pierre-Luc Beaudoin

Can you spot what’s new?

2010-01-04 18:39 UTC  by  Pierre-Luc Beaudoin

Yes! Libchamplain now has a scale! It was long overdue. In fact, I first started to work on it way before libchamplain 0.2.2 was even released (1.25 year ago). It got impeded by more important features and bug fixes. Two or three months ago Tollef Fog Heen took over the branch and added the magic required maths to compute the scale. I then took over his work (as he was quite busy and I wanted this too) to provide the final result.

Since all the changes are backward compatible, I’ll soon release a libchamplain 0.4.3 with the scale disabled by default (to ensure the same visual behaviour as before upgrade). To display a scale, an application just has to change the show-scale property to TRUE.

g_object_set (champlain_view, "show-scale", TRUE, NULL);

The scale also supports other exotic units than the SI/metric ones. It can display miles and feet, if you’re into that. :) By the way, the scale will automatically switch from kilometres to metres when it makes more sense. That was quite more complex to do with miles and feet as they are not simply a power of 10. Set the scale-unit property to CHAMPLAIN_UNIT_MILES to get miles.

You can limit the width (in pixels) of the scale with the max-scale-width property.  If you watch closely, the scale will adjust itself right away when you move the map.

Categories: Gnome
Pierre-Luc Beaudoin

A new plugin to lead them all :)

2009-11-09 22:56 UTC  by  Pierre-Luc Beaudoin

In the last weeks I (among other things) worked on a new plugin repository (vastly inspired by EOG’s) for third party plug-ins for Emerillon.  There are currently 4 plugins being worked on and not all of them should be distributed with the base Emerillon application. Enters emerillon-plugins.

It currently has 1 plug-in.  This plugin is one that will be useful to Montréalers: it displays the status of the Bixi network.  Bixi is Montréal’s self-serve public bike system.  Apparently its design is so good — the bike system, not the plug-in :) — that it’ll be implemented in both London (UK) and Boston (USA) very soon.

So the plug-in is quite simple: you have a drop down list where you select to see available bikes in stations near you or available docking stations.  The map is updated instantly to display the new values.  The markers on the map change in size depending on the available bikes/docks.  The information is automatically updated every 5 minutes.

After all the legal verifications, this plug-in is now free for everyone to share.  It should serve as a good example of what you can do with Emerillon and libchamplain.  It is the first piece of code (that I am aware of) to demonstrate ChamplainMarker sub-classing to implement unique look & feel.

Disclaimer: This plug-in has been independently developed by Novopia Solutions and is not in anyway related to or endorsed by Bixi, the operator of Montréal’s public bike system.  Bixi is a trade mark of Société de vélo en libre-service.

Categories: Gnome
Pierre-Luc Beaudoin

So I am finally back from the Boston Summit, a unique occasion to get updates on latest developments, and I am releasing Emerillon 0.1 for distributions eager to package.

Mandatory Greyhound rant

With a 3 hour delay on departure (making a total of 5 hours of wait in Boston’s 10 ℃ station), we managed to arrive 5 hours late in Montréal, due to a defective heater in the bus.  Add moving everyone at 5 AM from that defective ’70s bus to a freezing ’90s bus with actually less seats than the previous one, and the fact that there was enough people to fill 3 buses in Boston, but only 54 managed to leave on the first one and you’ve got a complete picture of the fiasco.

I am not going to run in too much details but all this could have been so easily avoided.  The delays were due to the fact that the bus that was supposed to bring us had been delayed at the US border.  Fine, shit happens.  What is not fine is that they waited until our expected departure time to get a replacement driver (since he had busted his legal driving time).  See, it takes about 5 hours from the border to Boston.  Knowing he was going to be late (and therefore busting his hours), the driver should have called his manager, which should have prepared a replacement driver for the next departure in 10 hours! But none of that happened.  And, to top it all, there were no Greyhound dispatcher to be called by the Boston station employees to inform them of a missing departure bus.  Complete utter fail.

Emerillon 0.1.0 release

Now for the fun part.  With all that time on hands, I created 2 new plugins for Emerillon (Copy a link of the current view to online maps, and display map position in statusbar) and cooked a release including all the 5 submitted translations.  Woot! Grab the release here.  This is a preview release with no guaranty on plugin API stability.  See the complete announce email.

Before anyone asks, I am using the gnome-colors Shiki-Wize theme.

For those who missed the original announcement: Emerillon is a map viewer. Aiming at simple user interface, Emerillon is a powerful, extensible application. It features OpenStreetMap based
maps. Use it to browse maps, search the map for places, placemark places for later quick access and more!

There are even packages of this release for Ubuntu Hardy from Mathieu Trudel.  See his blog of the install instructions.

Categories: Gnome
Pierre-Luc Beaudoin

Announcing Emerillon, the map viewer

2009-10-06 13:15 UTC  by  Pierre-Luc Beaudoin

Didn’t I foretell you there’d be more announcements?  Here’s one: Emerillon.  It is pronounced Ey-may-ree-yon. It is destined to be GNOME’s Map Viewer.  You will quickly recognize its sister apps: Eye of Gnome, Evince and GEdit. After all, they share a lot of design concepts.

Why another map application do you say? Simply because none of them is free AND targeted at the Gnome desktop AND has ease of use in its (visible) goals.  This project should be easy to use for anyone, not only for mapping geeks.

Emerillon is an application designed to be extended.  There is a number of small specialized map applications that were created in the last year, I have hope this one will be the catalyst of the development efforts.  Out of the box, Emerillon comes with 2 plugins: a search and a placemark plugin.  There are numerous plugins ideas : a GPX viewer, GPS integration, Telepathy integration (both to share the app and to display your friends location), a plugin to display the position under the mouse cursor, a plugin to display personal markers and I have two special ideas that I want to keep for myself to implement :) Other ideas are welcomed too!

Emerillon is a project originally started by Marco Barisione in October 2008.  Due to various reasons, it remained dormant for almost a year, until I decided to take over and push it forward.   Turns out, Marco had laid out very good UI base on which I built upon.

Visit for more screenshots and details.

Kudos to be given

Emerillon is built of code inspired by other projects and very cool libraries.  Early on, Marco borrowed Evince’s sidebar.  This sidebar is so nice and clean that it should be part of Gtk+! The problem is that this code is GPL but Gtk+ is not.

Another quite common widget in Gnome apps is Epiphany’s spinning throbber.  Again, it is GPL’d and the code has to be copied from apps to apps.

I am not going to kudo libchamplain ;) Lets say I have found API omissions that will need to be addressed for Emerillon to work perfectly. Who needs a “selected” signal after all? :) Still, libchamplain was quite necessary to build this app.

Emerillon’s plugin system was faster to implement than I expected when I got this idea.  But thanks to Ethos, it was a simpler task.  Ethos is a complete (Gedit/EOG alike) plugin architecture in a library.  It even provides UI widgets to manage the plugins.

Emerillon’s search plugin uses librest to fetch its data from  Rob Bradford was right: it is now fun again to parse XML.  I mean really.  This library makes fetching web service data an easy task.

Fetch Emerillon from Gnome’s git today and give it a try!

Categories: Gnome
Pierre-Luc Beaudoin

New beginnings

2009-10-02 12:00 UTC  by  Pierre-Luc Beaudoin

About a month ago, I left Collabora in order to bring new, different challenges in my life.  Today, I am announcing publicly that I have founded Novopia Solutions, a new player in free software.  Novopia’s long term goal will be to bring free and open source solutions to market that have yet to be penetrated by free software solutions.

While this is a field where there are plenty of FOSS solutions, the primary focus in the upcoming weeks will be on improving the geolocation solutions in GNOME.  Commercial support for libchamplain is of course on the list.

More to be announced later. :)

Categories: Gnome
Pierre-Luc Beaudoin

libchamplain hits 0.4

2009-09-14 20:03 UTC  by  Pierre-Luc Beaudoin

Click to read 1224 more words
Categories: Gnome
Pierre-Luc Beaudoin

libchamplain’s development was not blocked by the never ending delays in Clutter 1.0’s release. But we were waiting for 1.0 with eager.  And now the results are in.  Clutter 1.0 introduces many changes that simplified libchamplain’s code and solved some of our long standing issues at the same time.

Taking opportunity of the new introduced animations in Clutter, I added new marker animations in libchamplain:

If you are viewing through a planet, or a non HTML5 capable browser, here’s the file.

Since porting to Clutter 1.0 was the only condition set by the Gnome release team for libchamplain’s inclusion in Gnome 2.28, we can consider it a done deal!

See the complete announcement.

In other news, libchamplain 0.3.5 was also released last Saturday. It is the last release to use Clutter 0.8, but it also has very good Perl and Python bindings. Since Clutter 1.0’s bindings are not ready yet, libchamplain 0.3.5 is the last release to have bindings until Clutter gets some!

Categories: Gnome
Pierre-Luc Beaudoin

Introducing geoclue-properties

2009-06-09 03:26 UTC  by  Pierre-Luc Beaudoin

While deploying Geoclue with friends, I came to the conclusion that we need a GUI tool for end users to setup Geoclue.  Geoclue-properties was born.  gstreamer-properties was an inspiration (for the name, and part of the visual aspect).

I started the project only last Monday night, but you can already do this with it:

  • See your current address and postion according to Geoclue
  • List installed providers and their provided services
  • Set an address on the Manual provider
  • Set the address for the current network on the Localnet provider
  • List previously configured addresses in the Localnet provider

Just the last items save the user of having to use dbus-send incantations.   For the screenshot lovers, here’s your dose.

The project is still quite embryonic.  It is my first attempt at using Python for such a task and I lack knowledge (and quite frankly time) on how to create the project’s infrastructure (almost as if I am missing autotools — scary!).  If someone is willing to contribute that or point me the doc I’d appreciate!

Try it!

Categories: Gnome
Pierre-Luc Beaudoin

I’d like to make people aware of something my colleague Daf pointed out to me: one cannot use Python’s SSL code (this also applies to other Python projects such as M2Crypto) in a GPL licensed application because it uses OpenSSL.

The problem resides in OpenSSL’s license which requires :

3. All advertising materials mentioning features or use of this software
must display the following acknowledgement:
“This product includes cryptographic software written by
Eric Young (”
The word ‘cryptographic’ can be left out if the routines from the library
being used are not cryptographic related :-).

and (because of its dual license)

3. All advertising materials mentioning features or use of this
software must display the following acknowledgment:
“This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit. (”

This requirement as been marked as GPL incompatible.  Therefore, any GPL application using it is in license violation. While the OpenSSL FAQ stipulates that you can use it with GPL applications, this opinion is not shared by everyone. This is a quite big unadvertised licensing problem.

Now, I am not a lawyer but I can point to some existing solutions to this problem:

  1. Fix Python to not use such a poisonous (to GPL) licensed library.
  2. Do not use Python’s SSL code and use other implementations such as python-gnutls.  This solution less appealing as replacement libraries often don’t completely cover python’s API.
  3. Relicense your GPL application to “GNU GPL  with the OpenSSL special
    exemption.” (as wget did) and add mentions to OpenSSL in your advertising materials. This solution is sometimes hard to implement as you have to contact all past contributors.
Categories: Gnome