/build/static/layout/Breadcrumb_cap_w.png

Firefox 22 Silent Add-ons/Plugins/Extensions Installation

We're finally upgrading from Firefox 3.6, and I need a little help finalizing the customizations for our Firefox 22 install.

Our requests don't differ greatly from others (no automatic updates, no plugin checks, set default home page, no Firefox sync etc.) and all that seems to be working so far.  I ran the install on a machine that did not have a previous version of Firefox and found it largely behaving the way I expected it to

However two things stand out:

  • On initial launch I'm seeing a 'checking compatibility of addons' screen.  It doesn't ask me to do anything and disappaers after a few seconds, but this worries me that it *might* complain about a plugin a user installed.
    Can this 'check' be avoided?
    Is it really doing anything? (eg: checking for blacklisted addons/extensions? etc)
    What's the worst that could happen here?
  • In the registrry (HKLM\Software\Mozilla\Firefox\Extensions) I have two entries created by 2 other applications on the workstation each of which pointing to their respective extension/addon/plugin directory (e.g.: C:\Program Files\Application\some_directory).  When properly installed, one is listed as an Extension, the other a Plugin.  On the first launch after installation, I see two 'Install Add-on' tabs prompting me to approve each the installation.  Seeing as these extensions are allowed/trusted and required, I want Firefox to accept them without prompting the user.  Now, I'm aware of two key elements that largely govern this (and their subtle differences) but I can't seem to get this to work right:
    extensions.autoDisableScopes
    extensions.enabledScopes
    With the former set to 0 and the latter 15 I relaunch FF and while I don't get the tabs, when I go to test them, it doesn't work.  Furthermore, the Plugin is listed under Extensions which probably shoud not be.
    What am I doing wrong?
    How can I allow/trust/whitelist either specific add-ons, or add-ons within a specific location?

 

I then ran the install on a machine that did have an older version of Firefox and found ... To be tested when the above is fixed.

 

Please, correct me if I'm doing something wrong, or if theres a better way (e.g.: GPO's) to apply global settings for all users.
Any advice is greatly appreciated.

 

Deployment Script & Process

Install/upgrade process consists these key files:

Firefox Setup 22.0.exe - The installer
install.cmd - Script that runs the installer and does other things:

  • runs installer with the following switches: /INI=custom.ini
  • creates "%ProgramFiles%\Mozilla Firefox\browser\defaults\profile\chrome" (if missing)
  • copies userChrome.css into the above directory
  • creates "%ProgramFiles%\Mozilla Firefox\browser\defaults\preferences" (if missing)
  • copies local-settings.js into the above directory
  • copies Mozilla.cfg into "%ProgramFiles%\Mozilla Firefox\"
  • copies override.ini into "%ProgramFiles%\Mozilla Firefox\browser\"
custom.ini :
MaintenanceService=false
 
userChrome.css :
 // Disable Firefox Sync
#sync-setup, #sync-status-button, #BrowserPreferences radio[label="Sync"] {display:none!important;}
#sync-setup-appmenu,#sync-syncnowitem-appmenu, #sync-setup, #sync-status-button, #BrowserPreferences radio[label="Sync"] {display:none!important;}
menu[label="Tools"] menuitem[label="Sync Now"], #sync-button, #sync-setup-appmenu, #sync-syncnowitem-appmenu, #sync-setup, #sync-status-button, #BrowserPreferences radio[label="Sync"] {display:none!important;}
 
local-settings.js :
 pref("general.config.obscure_value", 0);
pref("general.config.filename", "mozilla.cfg");
 
Override.ini :
[XRE]
EnableProfileMigrator=False
EnableExtensionManager=True

[Crash Reporter]
Enabled=False
 
Mozilla.cfg :
 // This preference allows to suppress all UI update prompting.
defaultPref("app.update.silent", true);

// This preference disables the background service that installs updates
defaultPref("app.update.service.enabled", false);

// This preference indicates that the rights notification has already been shown.
defaultPref("browser.rights.3.shown", true);
defaultPref("browser.rights.override", true);

// Disable automatic check for updates to search plugins
defaultPref("browser.search.update", false);

// Do not perform system default browser check on startup
defaultPref("browser.shell.checkDefaultBrowser", false);

// Sets URL of homepage or pope (|) separated list of URL's to open in tabs
defaultPref("browser.startup.homepage", "http://our-intranet/");
// Was suggested to use this instead of the above - don't understand why
//defaultPref("browser.startup.homepage", "data:text/plain,browser.startup.homepage=http://our-intranet/");

// The last browser version (milestone) this profile was loaded with. If it differs from the current version, pref is changed to current version.
defaultPref("browser.startup.homepage_override.mstone", "ignore");

// Disable check extension for browser compatibility on upgrade/install.
defaultPref("extensions.checkCompatibility", false);

// Disable checks that extensions provide secure updates.
defaultPref("extensions.checkUpdateSecurity", false);

// The last version of the browser to successfully load extensions. Used to determine whether or not to disable extensions due to possible incompatibilities.
defaultPref("extensions.lastAppVersion", "100.0.0");

// Not sure if this still applies today
defaultPref("extensions.lastPlatformVersion", "100.0.0");

// An Attempt at Disabling Firefox sync
defaultPref("services.sync.autoconnect", false);
defaultPref("services.sync.clients.lastSync", "0");
defaultPref("services.sync.clients.lastSyncLocal", "0");
defaultPref("services.sync.engine.addons", false);
defaultPref("services.sync.engine.apps", false);
defaultPref("services.sync.engine.bookmarks", false);
defaultPref("services.sync.engine.history", false);
defaultPref("services.sync.engine.passwords", false);
defaultPref("services.sync.engine.prefs", false);
defaultPref("services.sync.engine.prefs.modified", false);
defaultPref("services.sync.engine.tabs", false);
defaultPref("services.sync.globalScore", 0);
defaultPref("services.sync.migrated", true);
defaultPref("services.sync.nextSync", 0);
defaultPref("services.sync.tabs.lastSync", "0");
defaultPref("services.sync.tabs.lastSyncLocal", "0");

// Disabled Add-on manager pop-up window post addon/extension installation
defaultPref("extensions.newAddons", false);

// Disable automatic download and installation of available updates
defaultPref("extensions.update.autoUpdate", false);

// Diable automatic checking of updates at the specified interval
defaultPref("extensions.update.autoUpdateEnabled", false);

// Disable checking for extension updates
defaultPref("extensions.update.enabled", false);

// Determines how often to check the update URL for updates.
defaultPref("extensions.update.interval", 1273520281);

// Disable addon control wizard
defaultPref("extensions.shownSelectionUI", true);

// A comma-and-space-delimited list of URIs with which to automatically authenticate via NTLM (Windows domain logon).
defaultPref("network.automatic-ntlm-auth.trusted-uris", "a,bunch,of,servers,urls,and,unc,paths");

// Indicates whether some cookie preferences — previously stored in deprecated preferences — have been migrated to current preferences.
defaultPref("network.cookie.prefsMigrated", true);

// A comma-and-space-delimited list of sites that are permitted to engage in SPNEGO authentication with the browser.
defaultPref("network.negotiate-auth.trusted-uris", "a,bunch,of,servers,urls,and,unc,paths");

// Not sure if this still applies today
defaultPref("privacy.sanitize.migrateFx3Prefs", true);

// Disable telemetry (usage statistics) to Mozilla HQ
defaultPref("toolkit.telemetry.prompted", 2);
defaultPref("toolkit.telemetry.rejected", true);
defaultPref("toolkit.telemetry.enabled", false);

// A comma-separated list of sites to automatically add to the extensions whitelist.
defaultPref("xpinstall.whitelist.add", "");

// Not sure what these are but are baked into installation
defaultPref("xpinstall.whitelist.add.180", "");
defaultPref("xpinstall.whitelist.add.36", "");

// Allow access to specific network locations
defaultPref("capability.policy.policynames", "policy1, policy2, ..., policyX");
defaultPref("capability.policy.policy1.checkloaduri.enabled", "allAccess");
defaultPref("capability.policy.policy1.sites","http://site1 http://site1/site http://site2");
defaultPref("capability.policy.policy2.checkloaduri.enabled", "allAccess");
defaultPref("capability.policy.policy2.sites","\\unc\path");
...
defaultPref("capability.policy.policyX.checkloaduri.enabled", "allAccess");
defaultPref("capability.policy.policyX.sites","whatever");

// Disables built in PDF viewer
defaultPref("pdfjs.disabled",true);

// Disables Health Report Uploads
defaultPref("datareporting.healthreport.uploadEnabled",false);

// Disables Health Reporting Completely
defaultPref("datareporting.healthreport.service.enabled",false);

// Disabled Plugin Check
defaultPref("plugin.scan.plid.all",false);
defaultPref("plugins.update.url","");
 
 

1 Comment   [ + ] Show comment
  • Did you ever find a solution to add-on tab on start up? I have the same issue. - boyds 10 years ago
    • I'm sorry to report that I have not found a solution for this. I'm likely going to post in some Mozilla centric forums (forums.mozillazine.org, support.mozilla.org) to get some help.

      If I remember to do so, I'll update this post.

      Edit: Here's my other post https://support.mozilla.org/en-US/questions/966143 - haxin 10 years ago

Answers (2)

Posted by: EbrithilBowser 10 years ago
Fourth Degree Green Belt
1

I think I can help you with the first point. There are two possible solutions:

1. You could set extensions.lastAppVersion in about:config to the current Firefox Version (for example 24.0) so that Firefox thinks it alsways had this Version

2. You could set extensions.showMismatchUI to false, then the Dialog gets suppressed

Both could be made in the mozilla.cfg:

pref("extensions.lastAppVersion","24.0");

pref("extensions.showMismatchUI",false);

 


Posted by: haxin 9 years ago
Orange Senior Belt
1

Thanks for the reply EbrithilBowser. While I haven't tested your proposed solution, I'm fairly certain it'll work.  Since this post, I've redone the configuration files and Mozilla has released newer versions. Between the two, the original problem of add in checks has been resolved

I also discovered a the solution to a thorn in my side which, as I suspected, was a misunderstanding on my part: defaultPref("plugin.scan.plid.all",false);

That should've been set to true, or eliminated from the config altogether.

 

With this gone, the process works wonderfully.

 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ