1

I'm trying to make a Thunderbird addon that will call external code to produce a lump of data to attach to an outbound email, labelled as some custom type so a recipient mailer can just be told to use our app to handle such inbound attachments. Regardless of implementation detail, I'm falling at the first hurdle.

Having briefly tried and given up with XPCOM components in C, I've found this page which tells me to go here from where I downloaded and installed the Add-on SDK. That uses a command cfx to create skeleton addins and test them. It has an experimental parameter --app which allows you to load Thunderbird instead of the default Firefox. However, it doesn't seem to load the addin. From the docs, I see that pretty much the simplest possible case is for main.js to simply contain

console.log("Hello World"); 

Firing this up using cfx run --app=thunderbird gives no "Hello World" anywhere that I can see, though Thunderbird does open using a temporary test profile. Running it in firefox opens firefox and outputs

 reference to undefined property exn.stackconsole.log: cfxtest1: Hello World

Which is outputting what I want it to output but in a rather suspicious way!

So two questions; is the AddOn-SDK the way to go for Thunderbird extensions, and why even in Firefox is it looking like it's not actually working?

Versions; Firefox is 25.0.1, Thunderbird is 24.1.1, the AddOn-SDK is 1.14 and Python is 2.6.6 (after 3.3 and then 2.7 turned out to be incompatible). Platform is Windows 7.

Craig Graham
  • 1,161
  • 11
  • 35
  • As of today, I still cannot find a definitive answer to this question too. – superjos Sep 17 '14 at 17:43
  • Add-on SDK is mainly made of cfx + the actual SDK ([see Comparing Extension Techniques](https://developer.mozilla.org/en-US/Add-ons/Comparing_Extension_Toolchains)). The same reference says that *the SDK only formally supports Firefox for Desktop and Firefox for Android, and no other Gecko applications.* – superjos Sep 18 '14 at 22:51

0 Answers0