Installing Lightning on Thunderbird with x86_64 systems (updated)

521 words, 3 mins

Thunderbird is one excellent mail client and sometimes it would be useful to have, at least, a look up into a calendar or such like. Mostly I like programs to do one thing and do it well, so an email client would handle email and a calendar would handle dates and appointments. But Thunderbird does have a plugin that handles calendar functionality and makes use of the Sunbird calendars so giving the option of using Sunbird or of using Lightning. There is just one small problem: I run 64 bit Thunderbird on a 64 bit system, and Lightning is only packaged for 32 bit.

Trying to install the Lightning extension as is gives the error "'Lightning' could not be installed because it is not compatible with your Thunderbird build type (Linux_x86_64-gcc3). Please contact the author of this item about the problem.".
There seems to be no reason that a Thunderbird extension could not run as I assumed that the extension was a collection of XUL chrome files and Javascript to get it all running. When I peeked into the file though, I noticed that there were a couple of files with .so extensions and sure enough, they are compiled for 32 bit systems. It should be possible to get the source for these two files (libcalbasecomps.so and libwebdav.so), compile that on my system and then repackage that. But wait, there is an even easier way than that! The Mozilla calendar, Sunbird, is packaged for 64 bit systems and includes those files, so they can be copied over. So that is what I did:

  • Install the 64 bit version of Sunbird for your system. (I’m using SuSE and it’s part of the repository).
  • Download the Lightning extension from Mozilla (lightning-0.8-tb-linux.xpi at the time of writing
  • Create a directory and unpack the xpi file in that directory. Note that the .xpi file is simply a zip file with a different ending. Also note that the packaged files assume that they are in the root of the package (there is no ‘lightning/‘ at the start of the path).
  • Copy the libcalbasecomps.so and libwebdav.so from /usr/lib64/sunbird/components/ to the components directory that you’ve just unpacked.
  • Edit the file ‘install.rdf’ and change the target platform to ‘Linux_x86_64-gcc3’
  • While you are in the root of your package directory, rebuild the package with zip -r ../lightning-0.8-tb-linux.xpi
  • And install the new 64 bit extension into Thunderbird.

And that’s all, when you start up Thunderbird you can show the today with F11, and switch between email (Ctl-1), calendar (Ctl-3) and tasks (Ctl-4).
If you have problems with the display, it may be that the theme you are using doesn’t work with Lightning, in which case give it a try with the default theme.

You can also pick up the package I used here. Right click and save the target as…

03/10/2008 NOTE: I’ve updated the package above to the recent 0.9 version of lightning. Version 0.8 is here.