Having installed Firefox 3 RC1 and lost a few of my favourite extensions, I decided to see if I could persuade them to work. Most of the time when Firefox says an extension isn’t compatible with the current version, it’s lying. Well, not actually lying so much as taking the value of a variable called “max version” in a file called “install.rdf” a little too literally. This is a quite sensible mechanism to prevent people crashing Firefox version whatever with an extension that relies on it behaving like a much earlier version, but sometimes it’s just a wee bit annoying. Many extensions will work perfectly well, but until their developers issue new versions that admit the fact, Firefox will refuse to play with them.
Of course, there are ways around this. Back in the Dark Ages, otherwise known as November 2005, I had the same problem with Firefox 1.5, and at the time I wrote about the easy way to persuade extensions to work. Now that we’re several version on, and I’m using a different operating system, I decided to try to do much the same thing but from a slightly different angle. Rather than downloading fresh copies of the offending extensions, opening up the .xpi files, ripping out the install.rdf file, editing it, putting it back in and zipping it all back up again before installing, I went to the location where the extensions live. On Mac OS X, that’s here:
/users/username/Library/Application Support/Firefox/Profiles/cryptic profile name/extensions
You’ll need to look for your own user name inside the users folder, and there will quite likely only be one folder with a name something like q92gt4r2.default inside the Profiles folder[1].
Inside that folder, you’ll find a load of folders where your extensions live. Unfortunately, they don’t have nice friendly names, they’re all GUID-y, with names like {75CEEE46-9B64-46f8-94BF-54012DE155F0}. What you have to do is dig into each folder and have a look at the contents. Some may have files that give you a clue to which extension they are, but for most, you might as well open install.rdf in your favourite text editor and look for a line that looks something like this:
<em:maxVersion>3.0b4</em:maxVersion>
Change the number to something like 3.0.*, or even 4.0 if you’re feeling brave, then save the file. Watch out, though - some extensions work in applications other than Firefox, so make sure you increase the version number under the “Firefox” heading if there is one. Repeat this for every extension.
Now comes the mildly tricky bit. Make sure Firefox is not running, then look in this folder:
/users/username/Library/Application Support/Firefox/Profiles/cryptic profile name
where you will see some files called extensions.cache, extensions.ini and extensions.rdf. Those files are where Firefox keeps track of which extensions are installed, and which ones are active. Now it might be possible to fiddle with the files to make Firefox look at your newly edited extensions, but I went for a less subtle approach. I renamed each of them, which I thought would be enough to make Firefox reinitialise them. I suggest renaming rather than deleting, just in case something goes hideously wrong…
OK, having done that, restart Firefox. Provided none of your extensions are trying to do anything Firefox 3 doesn’t like, you should find that they’ve all loaded and are available for you to use.
The same technique works on Windows, too. In that case, the folder you’re after lives here:
C:\Documents and Settings\username\Application Data\Mozilla\Firefox\Profiles\cryptic profile name
or whatever the equivalent is on Vista - I think the first bit will be C:\users
, but I don’t have anything running Vista to check, and I can’t be bothered looking it up right now.
Linux users have probably worked all this out already, and don’t need me to tell them where to look.
All the usual caveats, warnings, and wossnames apply: keep copies of files you edit, have backups anyway and speak gently to your computer. If you don’t know how to dig into the correct folder, this may not be the best thing for you to try, so you may be happier if you wait for the final release of Firefox 3, and for your extensions to be updated.
[1] I did say it was a cryptic name…