Hacking Firefox

Share This:

One of the great things about Firefox is how easy hack customize and get the most out of it in a way that best fits you. This is a blog about how I have set my Firefox installation up. However some of the things I have done to my Firefox you may not want to do, that is the best part is that you can choose how you want to have it setup.

With every new installation of Firefox the first thing I do is setup additional profiles. You can setup profiles by typing the following into the terminal or command line.

Windows Command Line:

%ProgramFiles%\Mozilla\firefox.exe -P

Mac & Linux Terminal

firefox -P

When typing the above command in make sure Firefox isn’t already running. If it is already running the profile manager wont start. In the profile manager you should see one profile called Default but you can make more if you want. I have several profiles catered to different things. I have a profile setup specifically to browse the web extremely fast. However that profile has features that aren’t always good, such as disabled CSS, Disabled Images, Disabled Flash, Disabled Javascript and other things. So the profile pretty much renders all pages I visit white with plain black text and blue links. Hoowever browsing is faster, along with some about:config hacks which makes it even faster.

After I have setup multiple profiles I want to make it easier to start the Firefox profile manager. So I usually just create a shortcut that I can click on to make it startup every time. To do this do the following.


Right Click on Desktop and choose Create Shortcut.

Name the shortcut Firefox Profiles then click Next

Type the following for the location.

“%ProgramFiles%\Mozilla\firefox.exe” -P

Then click Next followed by clicking Finished


Find the Application Shortcuts located in the /usr/share/applications directory. Find the Firefox Shortcut and open it with a text editor as a root user and find where it says exec=firefox %U and add make it say exec=firefox -P %U either save the changes or save as a different name.desktop Now you can see it and click on it and it will start the Profile Manager first.

Each profile is different Firefox browser so Profile 1 wont have the same features you have added to Profile 2 this is okay for some cases. But I want to have all the same bookmarks on all of my profiles. This is easy enough to do. I simply navigate to the location where my profiles are stored and in my other profiles I remove the places.sqlite file. Then in my primary profile I add a link to my places.sqlite file to all other profiles.

Linux Example

ln -s $HOME/.mozilla/xxxxxx.profile/paces.sqlite $HOME/.mozilla/yyyyy.profile/places.sqlite

Alternatively we can choose to just have bookmarks to be sync’d and choose to sync between multiple profiles instead of devices.

Now depending on which profile I’m working on I will want to have certain plugins. For my super fast profile I may want to add the following plugins.

  • Disable CSS
  • Image And Flash Blocker

And in my primary profile I may want to have the following plugins.

  • NoScript
  • FoxyProxy

In my developer profile I may have the following plugins

  • NoScript
  • Grease Monkey
  • Firebug
  • User Agent Switcher
  • And So On

Now lets get our hands dirty with about:config, we will need to modify each configuration file for each profile, unless you plan on having the same configurations for each profile then you can simply create a link to the prefs.js file the same way you did for the places.sqlite file. In our address bar we will type about:config and press Enter, be sure to let firefox know you will be careful.

Now lets make some changes. In my developer profile I want to be able to view pages source code with my prefered text editor. To do this I will find the entry called view_source.editor.external and I will set it to be True, next I will find the entry called view_source.editor.path and I will set the location of where my text editor is located. In my developer profile I may want to only see the firebug and not the default inspect element option that ships with firefox. To do this we will find the entry devtools.inspector.enabled and we will set it to false, we will then find the entry extensions.firebug.HideDefaultInspector and set that to True.

Now in the Super Fast Browsing profile we will want to refer to some of the about:config tweaks on my Speed Up Internet post I made. As well as doing some of the following other tweaks.

Find the entry in about:config called javascript.enabled and set it to False, find the entry called permissions.default.image and set it from 1 to 2