Home > Apple Hardware, Computer Stuff, HOWTOs, OS X > Hot Rodding Firefox & Other Mozilla Based Browsers

Hot Rodding Firefox & Other Mozilla Based Browsers

UPDATE: Some settings were again updated (on Aug. 21, 09). They turned out to be too conservative and changing them has proved to be fruitful.

ie.,
network.http.max-connections-per-server
network.http.max-persistent-connections-per-server
network.http.pipelining.maxrequests
network.http.max-connections

I also threw in network.http.request.max-start-delay and a “Further Fine Tuning Front-end Behaviour” section.


This is really my (updated, as in now organized!) personal check list and guide to fine tuning the Firefox, Flock, & Iceweasel browsers for speed and a pleasurable surfing experience. [It could still use some editing to make it
readable by the public, but that wasn't its purpose. It was meant as a personal check-list, and if others can make sense of it ... well that would be all good but secondary. By secondary I mean computer geeks. Non-computer geeks are on
their own.] If you’re looking for a hold-your-hand guide, read Serdar Yegulalp’s well written article titled Hacking Firefox: The secrets of about:config [1] [1] [1].

Yes, now there’s an extension (somewhere) that does this sort of thing but I doubt it does it all. Plus, you lose control and, some might say, responsibility over your own “hacking” (ie., What if the installed extension doesn’t work? [and --worse-- you don't notice]). You would also miss out on the fun of hacking things on your own.

This list might be extensive –but you do not need to implement it all –depending on your needs and/or likes. I hope others find this helpful, as I have.

I’ve taken care to quote and give credit to sources.

Personal comments are done within “[]” brackets and are somewhat anecdotal.

So without further adieu, here is my compiled list of Firefox/IceWeasel/Flock tweaks.

Speed Tweaks
Speed Related Tweaks-Speed-up Navigation
‘1. In your address bar visit: about:config
2. Find: network.dns.disableIPv6. Set “true” [not in Flock off. but in Flock
0.8.0.99]
3. Find: network.http.pipelining. Set “true”
4. Find: network.http.pipelining.maxrequests. Set “16″
5. Find: network.http.proxy.pipelining. Set “true”‘

http://ubuntu-tutorials.com [1] [2] [2] [2]

“Make pages load faster

A. “1. Fetch only pages that you click …
network.prefetch-next … Double click it, and it will turn to false”

[UPDATE: There is some dispute as to whether this slows or speeds up browsing. It is non-intrusive meaning that it prioritizes pre-fetching so that it doesn't take away from your quality of surfing (it does not slow the loading of newer
pages just to pre-fetch links on earlier loaded pages). Of course, it doesn't prioritize with other local tasks (ie., other ongoing programs), so I expect your overall computer experience could suffer on MHz challenged boxes. I also
assume that if you have the CPU cycles to spare, it'll work "for you" but if you don't and you want pre-fetching enabled, then maybe you're best to perform one power consuming task at a time, else disable it.]

B. “2. Limit the RAM usage” “browser.cache.memory.capacity … or RAM sizes
between 512MB and 1GB, start with 15000. For RAM sizes between
128MB and 512M, try 5000, and you will be happy of the result” [-doesn't show
up at all in any browser, although browser.cache.disk.capacity does. **].

C. “3. Reducing the RAM usage even more when Firefox gets minimized”
” … select New and click Boolean. A box will appear and you will have to
enter config.trim_on_minimize as value. The boolean value should be set to
TRUE” [apparently a Windows only feature and not in Flock 0.8.0.99. **]

www.our-picks.com [2] [3] [3] [3]

Speed-up Downloads and Navigation
“Acelerar las descargas y la navegación con Firefox” …
browser.turbo.enabled true [doesn't show up in my OS X 1.5.0.9 version of Firefox, SeaMonkey or Flock. *]
network.http.max-connections 30 [set t to 32]
network.http.max-connections-per-server 8 [set to 16]
network.http.max-persistent-connections-per-server 8 [set to 8]

[Don't follow the nglayout.initialpaint.delay 100 advice on the sourced page (see below). It's wrong because "0" (zero) makes it wait very little before displaying info (the point of this hack), while the suggested 100 would only
increase this time span --an undesirable effect. Read further down on how to set this properly.

If you're going through a proxy use the following.

network.http.max-persistent-connections-per-proxy [set to 8]

network.http.request.max-start-delay governs how long to wait before reattempting to connect to a server. Set to “0″.]

www.cristalab.com [3] [4] [4] [4]

A Perception Related Speed Tweak
“3. Lastly right-click anywhere and select New-> Integer. Name it
“nglayout.initialpaint.delay” and set its value to “0″ (zero). This value is
the amount of time the browser waits before it acts on information it receives.”

www.freerepublic.com [4] [5] [5] [5]

Mouse Wheel Scroll Speed
“I’ve been using Mozilla’s shiny new web browser Firefox for a few days, but kept on going back to Apple’s Safari for some odd reason. Firefox just didn’t feel right. Until I realized that the problem is at mouse wheel scrolling. Firefox’s scrolling is just too fast compares[d?] to system scrolling that I am used to. [Contrary to what this writer thinks, I think Firefox's is slow! But just the same you can use his tip to speed up Firefox's scroll speed.]

To fix the problem, I did the following:

1. Open up Firefox and type about:config in the URL box.
2. Find the line mousewheel.withnokey.sysnumlines, set it to false by double clicking on true.
3. Find the line mousewheel.withnokey.numlines, set it to the number of lines you want to scroll at a time. This controls the scrolling speed.”

[To speed up Firefox's mouse scroll speed, I used 7. The default is 1]

www.earthv.com [5] [6] [6] [6]

“Disable Bookmark Icons [as an attempt to speed up the browser, as far as I'm concerned, but I've now read it's also a way of keeping tabs on your surfing habits by issuing websites].

You can disable the display of bookmark icons and “favicons” by using about:config to set both of the preferences
browser.chrome.site_icons and browser.chrome.favicons to false.”

www.mozilla.org [6] [7] [7] [7]

For more on personalized speed tweaking see,
http://www.users.on.net/~farnik/wikicgi/wiki.pl?FireFoxTweaks [7] [8] [8] [8]
http://ask.softonic.com [8] [9] [9] [9]

Enabling Seamless Usability for
the Power User

Have FireFox Show Plugin Actions
“Download Actions preference in Firefox”

The steps are outlined below:

1. Type “about:config” on the address bar to get to firefox config settings.
2. Do a filter search for “hide_plugins” and double click on “browser.download.hide_plugins_without_extensions” to change the settings value to “false”.[not in SeaMonkey]
3. Open up “Edit > Preferences”, go to the “Downloads” area and click on “View & Edit Actions”.
4. It should now list all the “File Type”. Do a search for audio and change the “MP3 audio (streamed)” to open up in the external xmms player.”

http://www.linuxweblog.com/firefox-download-actions [9] [10] [10] [10]

I was looking for m4a file types to be played with VLC because QuickTime plugin
does play them.”
[I can't find file types in Seamonkey's preferences.] 

www.our-picks.com [10] [11] [11] [11]

Setting plugin.expose_full_path to “true” will list pathways of plugins in about:config

Make All Frames Resizeable and Which to Block
“Force frames to be resizable Many sites use frames to display their contents,
and sometimes the frames are too small. To force all frames to be resizable,
use about:config to change the value of the preference

layout.frames.force_resizability to true.

Note that this will also make the frames appear with a fixed-width border
and thus, may make the pages look funny.”

www.mozilla.org [11] [12] [12] [12]

“Decide which New Windows to Block By default, all windows that a web page
wants to open will be diverted to either the current tab/window or a new tab.
However, this does not apply to small pop-up windows (e.g. a poll results
window or the ICQ window in go.icq.com). To change this behaviour so it does
divert new windows that are spawned by JavaScript, use about:config to edit the preference”browser.link.open_newwindow.restriction”.

Values are:
“0″: Divert all new windows to current tab/window or new tab
“1″: Don’t divert any windows spawned by JS
“2″: (Default) Don’t divert JS windows that include size/placement/toolbarinfo”

I chose “0″.

www.mozilla.org [12] [13] [13] [13]

Privacy and Security

DNS Searches

1. Tell Firefox to do DNS searches remotely.
In about:config set “network.proxy.socks_remote_dns” to “true”.
2. Don’t have Firefox forward referrer or give away it’s browser ID.
Well, that one’s easy. I just use PrefBar to adjust these (or set “network.http.sendRefererHeader” to “0″).

3. Have a look under useragent too. ie., “general.useragent.locale” and “general.useragent.extra”. Tune as yousee fit. For valid useragent IDs, look around the the net, although people have been known to pass off all sorts of made up useragents as jokes.

Favicons

“Disable Bookmark Icons [as an attempt to speed up the browser, as far as I'm concerned, but I've now read it's also a way of keeping tabs on your surfing habits ]

You can disable the display of bookmark icons and “favicons” by using about:config to set both of the preferences
browser.chrome.site_icons and browser.chrome.favicons to false.”

www.mozilla.org [6] [7] [7] [7]

Further Fine Tuning Front-end Behaviour
1. I like case sensitive searches.
accessibility.typeaheadfind.casesensitive [set to 1]
2. Have searches open their own tab with,
browser.search.openintab [set to true]
3. Have Firefox use memory based on your computer’s physical ram.
browser.cache.memory.capacity [set to -1]

After Editing
“After this [all or anyone of these tweaks are/] is done, close the browser(File > Exit). The new setting should take effect the next time it’sstarted.”

www.interpc-solutions.com [13] [14] [14] [14]

Notes
* I’m not sure if it is advisable to add this in as an integer function.
I did this to IceWeasel running Debian testing without apparent problems butI
did not notice any drastic improvements either.

** Same as above but as a boolean function.

Compiled by Maurice Cepeda

This is licensed under the Attribution-NonCommercial-ShareAlike3.0 Unported Creative Commons License. All brands mentioned are propertiesof their respective owners. By reading this article, the reader forgoes anyaccountability of the writer. The reading of this article implies acceptance ofthe above stipulations. The author requires attribution –by full name andURL– and notification of republications.

  1. frannie84
    August 4, 2009 at 3:22 AM | #1

    Do you mind if I link your blog to mine? I was too lazy to write down all of the tweaks myself and wanted to give my friends a working link with instructions. Yours seem to be the most thorough I have had in a long time. I hope you don’t mind me making references to your blog! :)

    • August 4, 2009 at 4:28 AM | #2

      Just mention me by name (Maurice Cepeda, writing as Mauro Andrés [pen name]) as the person that compiled the list of hacks. Should be fine.

    • August 4, 2009 at 4:29 AM | #3

      I’d glad to find that people find that “article” useful.

      • frannie84
        August 5, 2009 at 9:18 AM | #4

        No problemo.

  1. August 4, 2009 at 3:27 AM | #1