Instantbird 0.2 feature preview: protocols as extensions

One of the features we wanted in Instantbird 0.2 was the ability to install libpurple protocol plugins like any other addon. I’m happy to report that this is now possible with current nightly builds.

To demonstrate this feature, I compiled the Facebook Chat libpurple protocol plugin. The result is an installable xpi file of about 200kB, that people can try with nightly builds of Instantbird.

This file contains a binary module compiled for Windows, Linux and Mac OS X (universal), produced by copying the code from here into the Instantbird source tree. This is the quickest way I found to build it, we will need to figure out a better (without having to download and build the whole Instantbird source code) way later. This is the exact patch I used to build it.

The xpi file also contains a set of icons and a locale file. I will explain in another post how we replaced the usage of gettext in libpurple by a way to get localized strings from regular .properties files.

Feel free to try this facebook chat addons. I don’t know how stable it is, but I’ve used it for a few days already and haven’t encountered any serious issue. If this turns out to be crashy for you, don’t hesitate to send us crash reports, I uploaded the symbols to our symbol servers, so the reports should provide useful information.

I have other nearly-ready Instantbird 0.2 features to introduce in more details later, including: localization, emoticon themes, message styles (like Adium), …

Next time: how localization works with Instantbird and how we replaced gettext.

13 thoughts on “Instantbird 0.2 feature preview: protocols as extensions

  1. Haven’t tested it out yet, but that’s a pretty slick way to add protocols. Props.

  2. I’m really counting on you. Pidgin’s interface is boring and quite useless. You could give libpurple a new power.

    PS: If only libpurple had better support of Gadu-Gadu and more…

  3. When is the 0.2 release planned for? Where can we see (if available) some release/milestones plan?
  4. 0.2 will be released when it’s ready, we don’t know yet when that is. We will probably release an alpha or beta milestone soon so that people who don’t test nightlies can try the new features we have already added. There’s a roadmap on the wiki, but it’s not fully up to date and not very detailed.

  5. This exension does not work for me, it installs but when i sign in 2 facebook chat it dissconnets staright after commanting and says facebook chat unavilable and tries again and keeps looping round like this (no matter when i try 2 use it or which nightly i use) can you fix this becuase i really need instantbird 2 do facebook chat and also can soon add a way 2 change ur profile pic and status message, rename freinds oh and show offline freinds :)

  6. @Charlie Callow: We are aware of this issue that appears with the facebook chat protocol plugin. We will probably need to provide an update of the plugin. Thanks for your feedback!

  7. I would love to see a sample plugin updated, along with some documentation on what’s needed. I attempted to package a Meebo plugin from here: and got an XPCOM error, but I’m not well enough versed in Firefox extensions to understand what that means.

  8. @patrickjdempsey: This seems to be a Pidgin plugin, not a libpurple protocol plugin, and it uses XMPP (the page explains how an account can be created using the XMPP protocol plugin). However, I agree that we need to write some documentation for this feature.

  9. Use protocols as extension was a great idea, for sure.
    But I’m realy worried about how to implement Twitter. I think that maybe better to implement it as in Trillian.
    No Doubt that the format of the implementation of Twitter in Trillian is the best.
  10. @Wexlei Silveira: Have you seen that Instantbird 0.3 alpha 1 has twitter support by default? Could you please tell us more about what’s worrying you exactly? And maybe about what’s different in the way Trillian handles twitter?