This post certainly ended up in a different place than where it started.
Knowing that Thunderbird was going to be upgraded in Ubuntu 11.10, I took a look at the one extension I use, and found that it was not compatible. I know I could hack it, but if things went wrong down the line, I would rather understand what I was dealing with. Particularly, as my needs are meager: I simply wanted to create a button that would invoke fetchmail.
I started by going to Add-on packager, selecting Thunderbird and Toolbar button and building an extension. Much to my surprise, the extension failed to create a toolbar button. After a little of help on #addons and a little research, I got it working by placing the following in
<overlay id="rubix-thunderbird-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script src="overlay.js"/> <toolbarpalette id="MailToolbarPalette"> <toolbarbutton id="rubix-toolbar-button" class="toolbarbutton-1" label="rubix" tooltiptext="fetchmail from rubix" oncommand="rubix.onMenuItemCommand(event);" /> </toolbarpalette> </overlay>
And then adding the following to
overlay chrome://messenger/content/messenger.xul chrome://rubix/content/overlay.xul
This seemed like a reasonable blog post: i.e., something worth noting for myself for later reference, and something potentially worth sharing with others, when I found that the packager moved (the original URI was https://addons.mozilla.org/en-US/developers/tools/builder), and when you run the tool in its new home you end up at a page that says Oops! Not allowed.
The downside is that the automatically generated
install.rdf is specific to Firefox. Sure, if you know what you are doing, you can hack this, but that kinda defeats the purpose of the SDK. It looks like something that belongs in package.json, but doesn’t look like it is there yet. I’m confident that this will be fixed.
I guess I would sum things up by saying that add-on users and developers are going to find things rocky for a while. But I do like the direction it is heading: add a little jQuery and perhaps even some CoffeeScript, and you have the basis for a sweet development environment.