One thing that bothers me a lot in Firefox is how add-on uninstallations are handled. Many add-ons add preferences to the Firefox prefs.js file in the profile folder of the browser. These parameters often define values for settings that the user can change directly in the add-on's options. The problem becomes apparent during uninstallation of an add-on that is no longer needed.
Firefox ignores the custom preferences that have been created by the now uninstalled add-on, which means that they remain in the prefs.js file in the profile folder.
The number of dead preferences in the configuration file grows over time, practically with every uninstalled add-on, even though it has to be mentioned that some add-ons do not write to the preferences file.
Why is a large prefs.js file size a problem? Three different reasons come to mind. Firefox needs more time to load a larger prefs.js file. This means an extended browser startup and shutdown. The second is privacy related. It is theoretically possible to extract valuable information out of some preferences, e.g. installed add-ons or add-on specific settings that spill more information. Lastly, it may result in incompatibilities, although that is usually not the case.
In Firefox Spring Cleaning we mentioned how to clean the prefs.js file manually, to remove obsolete entries from it. This manual process reduced the file size of the prefs.js file on our test system to half its original value. Results vary highly however, depending on the number of add-ons installed, and how they make use of the preferences file. One commenter mentioned that the prefs.js file was 7 Megabytes on the computer, which is huge, and not the norm. The size normally ranges between 20 to 200 Kilobytes.
Manually cleaning the preferences has its advantages. It gives the user control over the process, but can result in errors as well.
The portable software FFPCleaner, Firefox Prefs.js Cleaner, semi-automates the process. The application displays a file browser on startup to locate a Firefox profile folder on the computer system. It supports therefor both installed and portable versions of the Internet browser.
The prefs.js file is then automatically loaded in the app. A word of warning: While it seems that the add-on filters out some core Firefox preferences in the file, it fails to locate all of them. The data displayed is made up of core preferences, existing add-on preferences and obsolete preferences of add-ons that are not installed anymore.
The data is sorted into names, and their row count, which makes identification a lot easier. It is still required to double-check the preferences to make sure that only obsolete data is removed.
FFPCleaner can create a backup of the prefs.js file before removing selected entries from the file. This is highly recommended to avoid the deletion of important information.
Placing a checkmark into the Delete box of a row in the program ensures that the preferences linked to the row get deleted when the Remove Selected button is clicked on.
Several features are currently missing in the program that would make it invaluable. It would for instance be handy to click on a preference to display all of it's preferences in prefs.js. Some extensions, like Greasemonkey, store script preferences as well. While Greasemonkey may still be installed, some userscripts may not, which means that it would make sense to only clean the entries of those scrips, and not the whole Greasemonkey entries. Currently, those have to be ignored in the program.
Furthermore, all native Firefox preferences should be filtered out automatically, to avoid deleting those. While they are probably regenerated on the next browser startup, it might mean tweaking them again in Firefox to retain the desired values. Filters should also be applied to Firefox add-ons that are still installed in the browser, with options to display them if necessary.
Finally, statistics about the removed entries would be a nice addition to the program. The application could display the size of the file before and after the operation, so that the benefits of using it become visible.
The Firefox Prefs.js Cleaner is handy program for users who want to clean their Firefox preferences file, without having to do it manually. Download available at the developer website. The software was tested on a Windows 7 64-bit test system, no problems were encountered.
The Mozilla developers should consider improving the uninstallation of add-ons, so that obsolete preferences get deleted during the uninstallation. Resolving that core issue would make more sense than adding more eye candy to the browser.
Update: The extension is no longer compatible with recent versions of Firefox. We suggest you check out Preferences Monitor instead for the browser.
Advertising revenue is falling fast across the Internet, and independently-run sites like Ghacks are hit hardest by it. The advertising model in its current form is coming to an end, and we have to find other ways to continue operating this site.
We are committed to keeping our content free and independent, which means no paywalls, no sponsored posts, no annoying ad formats (video ads) or subscription fees.
If you like our content, and would like to help, please consider making a contribution:
Ghacks is a technology news blog that was founded in 2005 by Martin Brinkmann. It has since then become one of the most popular tech news sites on the Internet with five authors and regular contributions from freelance writers.