X
Tap here to go to the mobile version of the site.
Your Firefox is out of date and may contain a security risk! Upgrade Firefox

Support Forum

Firefox default configuration

Posted

Hello

I want to configure firefox 14.0.1 with default settings for all my users using a file mozilla.cfg But the command defaultPref () is not valid. I use pref () but then the user can not change the parameters

With Thunderbird 14.0, I have no problem, the command defautPref () can be used

Why?

Thank you

Modified by sxpi

Chosen solution

Yes, the problem appears to have been resolved in 16 and later. It's not clear to me whether there was any problem in 15 or not but it doesn't really matter now.

Read this answer in context 0

Additional System Details

Application

  • User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1

More Information

cor-el
  • Top 10 Contributor
  • Moderator
10740 solutions 96657 answers

Are there any errors in the error console?

Does it work if you leave out the space: defaultPref()?

You can use these functions in mozilla.cfg:

defaultPref();  // set new default value
pref();         // set pref, but allow changes in current session
lockPref();     // lock pref, disallow changes

See also:

Question owner

Excuse me but I made a typo in my post
It should be defautPref() and pref()

For exemple:

When I create a mozilla.cfg with:

// Mozilla Preferences
defaultPref("browser.startup.page", 1);
defaultPref("browser.startup.homepage", "http://www.xyz.com/");

Firefox doesn't take these preferences

but when I write:

// Mozilla Preferences
pref("browser.startup.page", 1);
pref("browser.startup.homepage", "http://www.xyz.com/");

Firefox takes these preferences but the user can't change the startup homepage afterwards

Modified by sxpi

cor-el
  • Top 10 Contributor
  • Moderator
10740 solutions 96657 answers

Works for me.

Note that the default only works if the pref hasn't been user set (i.e. isn't bold on the about:config page).
In that case you need to reset the pref via the right-click context menu to the default to give it the new value or remove the corresponding lines from the prefs.js file and a possible user.js file.

Question owner

I have the problem with all new profile defined on my windows 7
By default, the new profile has no "mozilla" folder in c:\users\username\appdata\roaming and c:\users\username\appdata\local

I have the same problem with Ubuntu 12.04 LTS and firefox 14.0.1

i see https://bugzilla.mozilla.org/show_bug.cgi?id=451161 but it marked Resolve Fixed

Perhaps i have an error in the content of mozilla.cfg but i don't see where

cor-el
  • Top 10 Contributor
  • Moderator
10740 solutions 96657 answers

Are you sure that the prefs.js file doesn't yet have one or more of those lines?

Like, I posted above as soon as a pref is user set then defaultPref() doesn't have any effect. It only define the default to use if the pref doesn't exist or if you reset the pref or its corresponding setting to the default.

You can use this button to go to the Firefox profile folder if you can't locate it:

  • Help > Troubleshooting Information > Profile Directory: Open Containing Folder

Question owner

new windows, new username, new profile

When you start firefox for the first time, it creates a mozilla folder with parameters that you are defined in c:\Program files (x86)\Mozilla firefox\mozilla.cfg

Reminder, i don't have the problem with thunderbird only with firefox

harryjohnston 1 solutions 11 answers

I have the same problem. The defaultPref command is being processed (because I get error messages if, for example, I try to set a boolean preference with a string value) but the changes do not take effect.

The about:config page shows the preferences with status "default" and the original default value, not the default value I've set.

cor-el
  • Top 10 Contributor
  • Moderator
10740 solutions 96657 answers

You have to make sure to initialize prefs with the correct data type to avoid problems.

Be aware the mozilla.cfg is run as a normal JavaScript file contrary to prefs.js and user.js that are parsed, so you can add test code or a try{}catch(e){} to trap errors if exceptions are thrown.

harryjohnston 1 solutions 11 answers

I am initializing prefs with the correct data type, and no exception is being thrown. It just doesn't *do* anything.

I can reproduce this with a very simple mozilla.cfg:

//

defaultPref("browser.startup.page", 0);

(The extra blank line isn't in my file, I just don't know how to make it appear properly here.)

Modified by harryjohnston

cor-el
  • Top 10 Contributor
  • Moderator
10740 solutions 96657 answers

Did you make sure that the prefs.js and possible user.js files do not have a line with that pref?

  • user_pref("browser.startup.page", #);

Did you test this with creating a new profile?

harryjohnston 1 solutions 11 answers

Yes, I've tried with a new profile. There's no such entry in prefs.js and no user.js file at all.

harryjohnston 1 solutions 11 answers

Using process monitor and by sticking some debugging code into prefcall.js it looks as if the problem is that the standard default preferences files (greprefs.js, firefox.js, etc.) are reloaded *after* mozilla.cfg is processed, overwriting any unlocked preferences set in mozilla.cfg.

harryjohnston 1 solutions 11 answers

Workaround: instead of using mozilla.cfg, put your custom default settings in the local-settings.js preferences file. This will no longer work if you put the file in defaults\pref, but will work if you create a new folder defaults\preferences and put it there.

Sample local-settings.js file:

pref("browser.startup.page", 0);

An example of setting the home page:

pref("browser.startup.homepage", "data:text/plain,browser.startup.homepage=http://www.scms.waikato.ac.nz/labs/windows.html");

harryjohnston 1 solutions 11 answers

Submitted as bug # 786875

cor-el
  • Top 10 Contributor
  • Moderator
10740 solutions 96657 answers

Works for me on Linux.
I use pref() to set the home page and the new tab page and changed them to defaultPref() for testing and both versions work for me.

//

//pref("browser.startup.homepage", "about:about");
//pref("browser.newtab.url", "about:blank");

defaultPref("browser.startup.homepage", "about:about");
defaultPref("browser.newtab.url", "about:blank");

data:text/plain;charset=utf-8;base64,Ly8KCi8vcHJlZigiYnJvd3Nlci5zdGFydHVwLmhvbWVwYWdlIiwgImFib3V0OmFib3V0Iik7Ci8vcHJlZigiYnJvd3Nlci5uZXd0YWIudXJsIiwgImFib3V0OmJsYW5rIik7CgpkZWZhdWx0UHJlZigiYnJvd3Nlci5zdGFydHVwLmhvbWVwYWdlIiwgImFib3V0OmFib3V0Iik7CmRlZmF1bHRQcmVmKCJicm93c2VyLm5ld3RhYi51cmwiLCAiYWJvdXQ6YmxhbmsiKTsK

Modified by cor-el

harryjohnston 1 solutions 11 answers

Does it still work for a new profile? Might using pref() rather than defaultPref() have tattooed your profile?

(I've just tried this myself, and indeed, once pref() has been used the setting sticks in the user profile.)

Modified by harryjohnston

cor-el
  • Top 10 Contributor
  • Moderator
10740 solutions 96657 answers

Helpful Reply

Using defaultPref() shows the pref as default (i.e. not bold) with the new specified value on the about:config page, so the setting in the mozilla.cfg file isn't overruled for me by firefox.js or greprefs.js like you posted and the pref won't be saved to prefs.js.
Using pref() sets the pref to a user_set value and thus makes it appear bold and saves the value to prefs.js

harryjohnston 1 solutions 11 answers

The problem might be platform-specific then. I'll add a note to this effect on the bug. [No, that's not the reason, see my next comment.]

Modified by harryjohnston

harryjohnston 1 solutions 11 answers

OK: defaultPref() doesn't work at all on Firefox 14.0.1, but usually (though not always) works in Firefox 15. I'm still trying to identify exactly what's going on in the latter case.

Question owner

Hello

I wait a new version of firefox. I test with Firefox 17.0esr for Win 7 x64 and the defaultPref() seems to work now.

defaultPref("browser.startup.homepage", "http://www.xyz.com/"); doesn't work but i searched and found this page setting-the-default-firefox-homepage-with-autoconfig and it seems to work. Replace defaultPref("browser.startup.homepage", "http://www.xyz.com/"); by defaultPref("browser.startup.homepage", "data:text/plain,browser.startup.homepage=http://www.xyz.com/");