This site will have limited functionality while we undergo maintenance to improve your experience. If an article doesn't solve your issue and you want to ask a question, we have our support community waiting to help you at @FirefoxSupport on Twitter and/r/firefox on Reddit.

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

Global add-on install in Thunderbird

  • 7 replies
  • 1 has this problem
  • 3 views
  • Last reply by max110

more options

I am desperately trying to provide Thunderbird with a certain set of extensions pre-installed for all users (for example language packs). This technique works in Firefox acceptably well: it is sufficient to store the xpi files named after the extension_ID in the %programfolder%\distribution\extensions folder Whatever I am trying in Thunderbird, no add-on ever load, and I cannot find any recent documentation online. If I place the xpi files in the <profilefolder>\extensions this works perfectly. How do I provide them to all users at once??

I am desperately trying to provide Thunderbird with a certain set of extensions pre-installed for all users (for example language packs). This technique works in Firefox acceptably well: it is sufficient to store the xpi files named after the extension_ID in the %programfolder%\distribution\extensions folder Whatever I am trying in Thunderbird, no add-on ever load, and I cannot find any recent documentation online. If I place the xpi files in the <profilefolder>\extensions this works perfectly. How do I provide them to all users at once??

Chosen solution

So I understand now that I shall "improve" my policies.json file to instruct ThunderBird to install specific addons automatically when a user starts the program. I have been struggling a couple of hours, and I still could not figure out how my policies.json file shall be. I have been searching around for examples, without finding anything. I am trying to provide 3 language packs: Russian, German and Italian. My policies.json file is down here, and for what I can understand it should be working (AppUpdate is disabled). Can anybody instruct me, what I am doing wrong?

  1. # # # # # #

{

 "manifest_version": 2,
 "policies": {
   "DisableAppUpdate": true,
   "ExtensionUpdate": true,
   "ExtensionSettings": {
   "*": {
       "blocked_install_message": "This extension is NOT allowed by you System Administrator",
       "install_sources": ["about:addons","https://addons.thunderbird.net/"],
       "installation_mode": "allowed",
       "allowed_types": ["extension","theme","dictionary","locale"]
     },
     "langpack-it@thunderbird.mozilla.org": {
       "installation_mode": "force_installed",
       "install_url": "https://addons.thunderbird.net/thunderbird/downloads/latest/tb-langpack-it/addon-640746-latest.xpi"
     },
     "langpack-de@thunderbird.mozilla.org": {
       "installation_mode": "force_installed",
       "install_url": "https://addons.thunderbird.net/thunderbird/downloads/latest/tb-langpack-de/addon-640754-latest.xpi"
     },
     "langpack-ru@thunderbird.mozilla.org": {
       "installation_mode": "force_installed",
       "install_url": "https://addons.thunderbird.net/thunderbird/downloads/latest/tb-langpack-ru/addon-640736-latest.xpi"
     }
   }
 }

}

Read this answer in context 👍 0

All Replies (7)

more options

I'm currently doing the same thing, just for Firefox on Linux. I asked a question here on this subject, and found the solution myself. Read it, maybe it will help you solve your problem: https://support.mozilla.org/ru/questions/1364066 Note that manifest.json must contain the extension ID. Run Thunderbird with the --jsconsole command line option to see if there are any errors loading the extension.

Here's more useful information I found: https://unix.stackexchange.com/questions/559653/install-thunderbird-extension-globally https://support.mozilla.org/en-US/questions/1130750

more options

I'm currently doing the same thing, just for Firefox on Linux. I asked a question here on this subject, and found the solution myself. Read it, maybe it will help you solve your problem: https://support.mozilla.org/ru/questions/1364066 Note that manifest.json must contain the extension ID. Run Thunderbird with the --jsconsole command line option to see if there are any errors loading the extension.

Here's more useful information I found: https://unix.stackexchange.com/questions/559653/install-thunderbird-extension-globally https://support.mozilla.org/en-US/questions/1130750

more options

Well, this at least gives me a direction to search. I already have a <setupfolder>/distribution/policies.json file that works fine (disabling automatic updates and some other stuff).

What I find in the linked posts suggests to place a

<setupfolder>/distribution/extensions/manifest.json

file with some extension related stuff inside. We should note that this is the same place where the xpi of my extension is placed, the same xpi that Thunderbird should read and add to extensions. Let us say that I want do provide Russian language pack to all users that will start Thunderbird. In this place I would have a file named

<setupfolder>/distribution/extensions/langpack-ru@thunderbird.mozilla.org

which already contains its corresponding json.

If I do this the jsconsole throws:

1642237885402 addons.xpi WARN Ignoring distribution: not an XPI: C:\Program Files\Mozilla\ThunderBird\distribution\extensions\manifest.json

which makes me think that Thunderbird only likes XPI files in this place (which also makes much sense). So probably this is a good step into the right direction, but still I am not able to provide any addon to all users :(

more options

You can join the Thunderbird Enterprise mailing list on Topicbox to ask your question there. https://thunderbird.topicbox.com/groups/enterprise

Also see https://enterprise.thunderbird.net/

more options

I would gladly do it. I even make recurring donations to Thunderbird!! But where shall I exactly ask this specific question?

more options
more options

Chosen Solution

So I understand now that I shall "improve" my policies.json file to instruct ThunderBird to install specific addons automatically when a user starts the program. I have been struggling a couple of hours, and I still could not figure out how my policies.json file shall be. I have been searching around for examples, without finding anything. I am trying to provide 3 language packs: Russian, German and Italian. My policies.json file is down here, and for what I can understand it should be working (AppUpdate is disabled). Can anybody instruct me, what I am doing wrong?

  1. # # # # # #

{

 "manifest_version": 2,
 "policies": {
   "DisableAppUpdate": true,
   "ExtensionUpdate": true,
   "ExtensionSettings": {
   "*": {
       "blocked_install_message": "This extension is NOT allowed by you System Administrator",
       "install_sources": ["about:addons","https://addons.thunderbird.net/"],
       "installation_mode": "allowed",
       "allowed_types": ["extension","theme","dictionary","locale"]
     },
     "langpack-it@thunderbird.mozilla.org": {
       "installation_mode": "force_installed",
       "install_url": "https://addons.thunderbird.net/thunderbird/downloads/latest/tb-langpack-it/addon-640746-latest.xpi"
     },
     "langpack-de@thunderbird.mozilla.org": {
       "installation_mode": "force_installed",
       "install_url": "https://addons.thunderbird.net/thunderbird/downloads/latest/tb-langpack-de/addon-640754-latest.xpi"
     },
     "langpack-ru@thunderbird.mozilla.org": {
       "installation_mode": "force_installed",
       "install_url": "https://addons.thunderbird.net/thunderbird/downloads/latest/tb-langpack-ru/addon-640736-latest.xpi"
     }
   }
 }

}