Maintain, optimize and troubleshoot your NLE
Professional cloud workflow platform
Simplified media management
< Blog Home

Hacking Firefox extensions to work on beta versions

This is a little off-topic but some people might find it useful. For the past three months or so, I have been using the Firefox 3.5 betas as my main browser. Why? Well, it is considerably faster than the previous version, renders pages more accurately (much less difference between Firefox and Safari now) and has some features I now cannot live without, such as the ability to restore closed windows as well as tabs.

But the trouble with using a bleeding-edge browser is that third-party developers take time to update their extensions to make them compatible. This can be frustrating, as often no code changes are necessary and all that needs to be done is a simple modification of the maximum version string.

There are two things you can do here - switch off compatibility checking or modify the maximum version of the extension.

Switch off compatibility checking

1. In Firefox, type about:config into the address bar.

2. Select "I'll be careful, I promise" if a warning appears.

3. Ctrl-click anywhere and select New > Boolean.

4. Enter extensions.checkCompatibility (note the capital C) as the name.

5. Select false as the value.

I have heard people report problems with this so if you want to specify exactly which extensions you want to make compatible, read on.

If the extension is already installed

1. Make sure Firefox is closed.

2. Navigate to ~/Library/Application Support/Firefox/Profiles.

3. You should see a folder with a gobbledegook name ending in ".default". Open this folder.

4. Delete or rename the file extensions.cache.

5. Open the extensions folder.

6. You will see more gobbledegook folder names. The only way to tell which one is the extension you are looking for is to open each folder one at a time and look at the contents of the folder's install.rdf file in TextEdit. The file's contents include the name of the extension, a description and compatibility information.

7. In the install.rdf file, look for the tag <em:maxVersion> and change the tag value to your current version (at the time of writing this is 3.5b4).

8. Save the file (you may need to change permissions on the file so you can write to it).

9. Launch Firefox and go to Tools > Add-Ons to verify that the extensions are now recognized by Firefox.

If the extension is not already installed

1. The Mozilla add-ons site won't let you download the extension if you have an incompatible version of Firefox. The easiest way to get around this is to fire up Safari, navigate to the add-ons page for the extension in question and download it manually (this works in Safari 4 - I don't have version 3 to test with).

2. Change the file extension of the .xpi file that is downloaded to .zip and unzip it. This will create a new folder on disk with the contents of the archive inside it.

3. Open install.rdf inside the folder and follow steps 7-8 above.

4. Select all files inside the folder, ctrl-click and click Compress X Items. You must compress the files inside the folder - do not compress the folder itself.

5. Rename the Archive.zip file to have an xpi extension.

6. Drag the XPI file into Firefox or go to File > Open File and navigate to it.

7. Firefox will now install it as if it was compatible.

Note - the extensions I modified were compatible with 3.1b3 (the previous version) so it was not much of a jump and I didn't experience any issues. I would not advise major version jumps (e.g. 2.x to 3.x) as this is likely to cause problems.
Posted by Jon Chappell on May 2 2009 to Off-Topic