PLIST Configuration Extension Firefox

userjamf
New Contributor II

Hello everyone,

For the Chrome browser, I've created a PLIST for installing the extension and a second one for configuring the extension, and it works perfectly.

That's why I'd like to do the same for Firefox. The PLIST for installation works. But for the extension configuration PLIST I don't know how to do it? I can't find any information about this if it's possible.

Here's what I did for Chrome :

Preference domain : com.google.Chrome.extensions.IDextension

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>ConfigJson</key>
    <string>
        {
        "backend_servers": [
            {
            "title": "Exemple title",
            "url": "https://exemple.com"
            }
        ],
        "base_url": "https://exemple.com",
        "allow_custom_server": false,
        "allow_registration": true,
        "allow_lost_password": true
        }
    </string>
  </dict>
</plist>

 

4 REPLIES 4

mojo21221
Contributor II

I find for best results to use iMazing profile editor. https://imazing.com/ It has a customizable form with all the keys to Firefox and plenty of other 3rd party apps

Shyamsundar
Contributor

you can use the below code to install Extensions for firefox, For More information please refer the below link 

https://mozilla.github.io/policy-templates/#extensions

<dict>
  <key>Extensions</key>
  <dict>
    <key>Install</key>
    <array>
      <string>https://addons.mozilla.org/firefox/downloads/somefile.xpi</string>
      <string>//path/to/xpi</string>
    </array>
    <key>Uninstall</key>
    <array>
      <string>bad_addon_id@mozilla.org</string>
    </array>
    <key>Locked</key>
    <array>
      <string>addon_id@mozilla.org</string>
    </array>
  </dict>
</dict>

I don't have a problem installing it, but it's for configuring the extension, I want to make a PLIST like for Chrome. Otherwise I have to put my JSON file in the package. The configuration I want to do is specific to the extension and not to all extensions. The link doesn't give me any information about this (preferred domain, etc.).

Matt_M13
New Contributor

I recently had the same question, and found an answer: Unlike in chrome, you don't use a separate preference domain for configuring the settings for an individual extension. Instead, you use the "3rdparty" key in Firefox policy and you can set individual extension settings underneath that.

--------

I don't use this extension, but this company provides deployment instructions (with configuring settings in their extension) for their extension for both Chrome + Firefox, so you can see what I'm talking about/compare differences: https://help.cerby.com/en/articles/8265232-install-the-cerby-browser-extension-via-an-mdm-service-an...

Here's their Firefox config - the part under ExtensionSettings is what deploys the extension, but the part under 3rdparty is what configures a setting within that extension:

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ExtensionSettings</key>
<dict>
<key>{f961ea35-985c-412d-9b06-aafd75752587}</key>
<dict>
<key>installation_mode</key>
<string>force_installed</string>
<key>install_url</key>
<string>https://addons.mozilla.org/firefox/downloads/latest/cerby-s-browser-extension/latest.xpi</string>
</dict>
</dict>
<key>3rdparty</key>
<dict>
<key>Extensions</key>
<dict>
<key>{f961ea35-985c-412d-9b06-aafd75752587}</key>
<dict>
<key>DEFAULT_WORKSPACE</key>
<string>{your-workspace-name}</string>
</dict>
</dict>
</dict>
<key>EnterprisePoliciesEnabled</key>
<true/>
</dict>
</plist>