FF 68.1.0esr 中的预装扩展不起作用

Preinstalled Extension in FF 68.1.0esr doesn't work

我正在 windows 服务器上准备 firefox 企业安装,具有特殊配置和预装扩展。这是一个单一安装,将由所有访问服务器的用户使用。

以下是我遵循的步骤:

  1. 我安装了火狐:Firefox_setup_68.1.0-esr.msi
  2. 我将我们的 policies.json 文件转移到 C:\Program Files\Mozilla Firefox\distribution
  3. 我将我们的 autoconfig.js 文件转移到 C:\Program Files\Mozilla Firefox\browser\defaults\preferences
  4. 我将 extName@ourdomain.local.xpi 文件转移到 C:\Program Files\Mozilla Firefox\browser\extensions

通过 运行 FireFox,我可以看到策略和配置都已正确考虑,但扩展不起作用。

经过各种测试后我可以说:

所以,既然扩展有效,准备过程有什么问题,目录错误还是缺少某些配置?

预安装的扩展程序是否需要额外的文件或不同的布局?

我也试过没有我们的 policies.json 文件,只留下允许 xpi 文件没有签名的指令在 autoconfig.json 文件中。

非常感谢任何帮助,谢谢

最后我在 policies.json 文件中发现了一个语法错误和一个缺失的部分。

policies page 之后,我不是很清楚什么是 //path/to/xpi。 这是示例:

"Extensions": {
     "Install": ["https://addons.mozilla.org/firefox/downloads/somefile.xpi", "//path/to/xpi"],
     "Uninstall": ["bad_addon_id@mozilla.org"],
     "Locked":  ["addon_id@mozilla.org"]
   }

最后我发现使用文件 url 是可行的。

重新阅读指示的页面,我还注意到缺少 ExtensionSettings 部分,修复路径并添加此部分,现在扩展已正确安装并可以使用!

这里是 policies.json 固定的例子:

{
  "policies": { 
    "Extensions": {
      "Install": ["file:///C:/Program Files/Mozilla Firefox/browser/extensions/extName@ourdomain.local.xpi"],
      "Uninstall": [],
      "Locked":  []
    },
    "ExtensionSettings": {
      "*": {
        "blocked_install_message": "Custom error message.",
        "install_sources": ["https://addons.mozilla.org/"],
        "installation_mode": "blocked"
      },
      "extName@ourdomain.local": {
        "installation_mode": "force_installed",
        "install_url": "file:///C:/Program Files/Mozilla Firefox/browser/extensions/extName@ourdomain.local.xpi"
      }
    }
  }
}