I have adapted this from
http://mit.edu/~firefox/www/maintainers/autoconfig.html. The following setup will enable you to create a Firefox package that will enable centrally managed preferences. Once you make these changes you can copy the modified Firefox app to the computers you want to manage.
To be able to centrally manage preferences for Firefox you need to do the following 3 steps.
1. you need to change /Applications/Firefox/Contents/MacOS/greprefs/all.js to have the following lines. The Firefox config files are parsed top down with the last change winning if there is a conflict.
pref("general.config.obscure_value", 0); // takes out ROT-13 encoding on config file
pref("general.config.filename", "firefox.cfg"); //points to the config file that you create
2. you need to make a file in /Applications/Firefox/Contents/MacOS/firefox.cfg which should contain the following:
//setting prefs to read from web server
try {
lockPref("autoadmin.global
configurl","http://fqdn.for.your.web.server/path to/autoconf.js"); // points to config file on web server
lockPref("autoadmin.append_emailaddr",false); //doesn't append the username of the user. Change to true if you want per user prefs.
} catch(e) {
displayError("lockedPref", e);
}
3. Next you need to create the config file on your server. In my case I called it autoconf.js which looks like:
// Auto Config prefs for Firefox
// save at fqdn.for.your.web.server/path to/autoconf.js
try {
// locked prefs
lockPref("browser.startup.homepage", "fqdn.default.homepage");
lockPref("browser.startup.homepage override.mstone", "ignore");
lockPref("browser.startup.page", 1);
lockPref("browser.formfill.enable", false);
lockPref("signon.prefillForms", false);
lockPref("signon.rememberSignons", false);
} catch(e) {
displayError("lockedPref", e);
}
Misc:
The above are some examples from my config for Firefox. You can manage any preference you want. To get the preference name and the current setting in the URL field for Firefox enter "about:config" no quotes and press return.
Hope that helps! Let me know if you have any problems.
- Barrett