Dear Mozilla Enterprise & Add-ons Team,
We are an engineering team developing enterprise endpoint security software for macOS 14 and later.
During installation, our root postinstall script needs to force-install and enable our signed Firefox enterprise add-on without requiring the user to quit and relaunch an already-running Firefox instance.
Windows implementation
Our understanding is that Firefox enterprise policies can be configured through policies.json or Windows registry policies, including ExtensionSettings where supported.
For example, the intended policy configuration is:
{
"policies": {
"ExtensionSettings": {
"{abcd}": {
"installation_mode": "force_installed",
"install_url": "https://addons.mozilla.org/firefox/downloads/latest/ibm-guardium/addon-latest.xpi"
}
}
}
}
macOS implementation
Our root postinstall script writes the policy configuration to:
-
/Library/Managed Preferences/org.mozilla.firefox.plist -
/Library/Managed Preferences/<console_user>/org.mozilla.firefox.plist -
/Library/Application Support/Mozilla/policies.json
Observed behavior:
-
Firefox closed: The add-on installs when Firefox is launched.
-
Firefox running: Updating the policy files does not trigger immediate installation.
-
After relaunching Firefox: The add-on installs successfully.
Questions
-
Is there a supported command-line option, IPC mechanism, notification, or other method to trigger an immediate enterprise policy refresh and install an add-on in a running Firefox instance on macOS?
-
Does Firefox support a dynamic AutoConfig, drop-in, or other installation mechanism that allows a running browser to detect and activate a signed
.xpiwithout restarting? -
Can this be achieved using a local installer script without MDM? If not, would deploying enterprise policies through an MDM configuration profile enable this behavior?
-
What is Mozilla’s recommended approach for force-installing an enterprise add-on without restarting the browser, and is a restart unavoidable on macOS?
Please share the recommended implementation and relevant documentation.
Thank you for your assistance.
Best regards,
Suraj