Uninstalling add-ons

From MozillaZine Knowledge Base
Revision as of 13:45, 7 July 2006 by Mozcerize (talk | contribs)
Jump to navigationJump to search

The Extension Manager

Extensions and themes can be uninstalled using the Extension Manager. It can be accessed via "Tools -> Extensions" and "Tools -> Themes".

If you can't uninstall an extension, then one of the following has occured:

  • You did not completely close the application and restart it. To completely close an application, use its File menu to ensure that it closes all its windows. Check your system tray and task list to ensure that no part of the application is still running. (See kill application for some more details.)
  • The uninstall button and menu item are disabled. This means that the extension is locked. (For example, the default theme is locked.) To uninstall a locked extension, you'll first have to unlock it via Safe Mode.
  • The extension is listed with a red "generic" icon, or is not listed at all. Older versions of Firefox (0.9 and below) and Thunderbird (0.7 and below) used an older version of the Extension Manager; the problematic extension was not packaged for the new Extension Manager. You'll have to uninstall it manually or use an extension uninstaller (see below). The general recommendation is to create a new profile for Firefox or Thunderbird and only install repackaged extensions in it.
  • The extension repeatedly shows "This item will be uninstalled after you restart Firefox" even after restarting. In this case, do not use the uninstaller extensions. Either create a new profile or try uninstalling manually (see below).

Note:  Uninstalling an extension might not completely remove all of the extension's data, even if you remove the extension manually. For example, if you reinstall the extension, then you might find that it still uses its previous settings. There is no general way to remove all of an extension's data. This is because it might store data in a variety of places. If this causes you a problem, try contacting the extension's author or other users of the extension.

Using Safe Mode

If you have a broken extension that makes it impossible to access the Extension Manager, you can start the application in Safe Mode. Once there, you can mark the offending extensions for uninstall, exit the application, and restart in normal mode to complete the uninstall.

Uninstaller extensions

These extensions are useful for Firefox (pre-0.9), Thunderbird (pre-0.7), and Mozilla Suite users.

Do not use these extensions if you have the "This item will be uninstalled after you restart Firefox" message in the extension manager! Either create a new profile or see the section below on performing a manual uninstall.

Uninstalling manually

You can uninstall extensions manually, but the procedures are different in recent and in older versions of Mozilla applications.

Recent versions are: Firefox 1.5, Thunderbird 1.5, Sunbird 0.3 (including alphas, betas and later releases)

Older versions are: Firefox 1.0.x, Thundrbird 1.0.x, Sunbird 0.2, Mozilla Suite, SeaMonkey

Uninstalling from recent versions

Exit your Mozilla application, go to your profile folder and open the extensions directory. Each directory there is an extension. Remove the directory that corresponds to the extension you want to uninstall. (To uninstall ALL extensions, remove the entire extensions directory)

If an extension directory there does not have a meaningful name, look inside it for its install.rdf file. Open that file in a text editor (such as Notepad) to see which extension the directory contains. Alternatively, in the parent folder extensions.rdf contains a list of extensions, their names and corresponding extension GUIDs.

Close the Mozilla application using its File menu, to ensure that it closes all its windows. Then restart it. It normally cleans up its Extensions window automatically.

Global extensions

In rare cases, extensions are installed outside your profile so that they can be used from any profile. To find these extensions, go to the Profiles directory containing the default profile folder. (The default profile might not be the profile that you actually use.)

Go to the directory that contains the Profiles directory. If there is an extensions directory there, then it might contain global extensions. You can identify and remove them as described in the previous section.

Problems uninstalling

In rare cases, an extension does not completely uninstall when you remove its directory.

First check that you really closed the Mozilla application completely. Check your system tray and task list to ensure that no part of the application is still running. (See kill application for some more details.) Then restart the application.

If that does not work, close your Mozilla application and go to your profile folder. Delete the files:

extensions.cache
extensions.ini
extensions.rdf

Note: If you are just trying to remove a non-functioning "xxxxxxxx.xpi" entry from the Extension Manager, you can also delete these three files, or simply delete the file extensions.rdf from the profile folder [3] (bug 319022).

Restart your Mozilla application. It should rebuild the files that you deleted.

If you continue to have problems, go to your profile folder, make a backup copy of the prefs.js file (as a precaution) and then use about:config to search for and reset any preferences that may be related to the uninstalled extension.

If even that does not work, use the Profile Manager to create a new profile.

Uninstalling from older versions

In older versions, it is strongly recommended that you create a new profile instead of uninstalling manually due to the risks and tedium involved in the manual procedure.

It's a good idea to make backups of your profile folder before deleting or changing anything in case something goes wrong.

Removing profile-installed extensions

You'll need to know the internal "short name" of the extension you're uninstalling. You can find it by searching for the full name in the chrome.rdf file (see below). These instructions do not apply to Firefox 1.5 and Thunderbird 1.5.

  1. Exit the application (Firefox, Thunderbird, or Mozilla Suite) and make sure it is not listed in your process list.
  2. Browse to your profile folder.
  3. Mozilla Suite users: Remove the <profile folder>/chrome/[shortname].jar file.
    All other users: Remove the <profile folder>/extensions/{extension-GUID} folder. You can find the GUID by looking in extensions.rdf file or by searching for [shortname].jar file in your extensions folder. Make note of the GUID as it will be needed later in this process.
  4. Delete compreg.dat and xul.mfl (it may be called something slightly different, eg. XUL.mfasl) files. They will be recreated on next browser start.
  5. Edit files in <profile folder>/chrome/overlayinfo. Find those that contain [shortname] inside them and remove entries, that look like this:
    <RDF:li>chrome://[shortname]/[path to file]</RDF:li>
  6. Edit the <profile folder>/chrome/chrome.rdf file. Remove all entries referencing the extension. See the list of possible entries.
  7. Firefox and Thunderbird users: Edit <profile folder>/extensions/extensions.rdf. Remove the entry that looks like this:
    <RDF:Description RDF:about="urn:mozilla:extension:{[GUID]}"
                     em:name="QuickNote"
                     [more info]>
      [more info]
      <em:targetApplication RDF:resource="rdf:[junk]"/>
    </RDF:Description>
  8. Firefox and Thunderbird users: Edit components.ini and defaults.ini and remove any lines that contain the GUID of the extension being uninstalled (it is possible that no such lines will exist). The files are located in the root of your profile folder.
  9. Remove extension-related preferences from the user.js file and prefs.js.

Some extensions also create extra files on your hard drive. For example, Menu Editor stores its data in a menuedit.rdf file in your profile folder and TBE uses tabextensions.js. You might want to remove those too.

The list of possible chrome.rdf entries
<RDF:li RDF:resource="urn:mozilla:package:[shortname]"/>
<RDF:li RDF:resource="urn:mozilla:locale:[locale]:[shortname]"/>
<RDF:li RDF:resource="urn:mozilla:skin:[skin]:[shortname]"/>
<RDF:Description RDF:about="urn:mozilla:["locale"/"skin"]:[locale/skin]:[shortname]"
     c:baseURL="[path]">
     <c:package RDF:resource="urn:mozilla:package:[shortname]"/>
</RDF:Description>
<RDF:Description RDF:about="urn:mozilla:package:[shortname]"
     c:baseURL="[path]"
     [a lot more info]>
     <c:selectedLocale RDF:resource="urn:mozilla:locale:[locale]:[shortname]"/>
     <c:selectedSkin RDF:resource="urn:mozilla:skin:[skin]:[shortname]"/>
</RDF:Description>

Removing a globally-installed extension

Firefox 0.9+ and Thunderbird 0.7+, by default, install their extensions into the profile folder, so this section will not apply to those users. Mozilla Suite users are still able to install their extensions globally (that is, in their Mozilla Suite program installation directory and not their profile folder).

  1. Exit Mozilla Suite.
  2. Browse to the "chrome" subfolder of your Mozilla Suite installation directory (usually C:\Program Files\mozilla.org\Mozilla\chrome for Windows users; for Mac users, Ctrl-Click the Mozilla Application folder package and select "Show Package Contents" and browse to /Applications/Mozilla.app/Contents/MacOS/chrome).
  3. Modify chrome.rdf and the files in your "overlay" folder as described above in the "Optional steps" section.
  4. Delete [extensionname].jar (or the [extensionname] directory if it has one).
  5. Remove every line with a reference to the extension's name from installed-chrome.txt. Usually there are up to three such lines corresponding to content, locale and skin.
  6. A few extensions might use additional files. TBE, for example, creates the file tabextensions.js in <application folder>/defaults/pref/ in which to store its defaults. Search through your installation directory for such files and delete them.