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

时间:2019-11-26 15:05:49

标签: firefox firefox-addon firefox-webextensions

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

这是我遵循的步骤:

  1. 我安装了firefox: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,我可以看到已正确考虑了策略和配置,而扩展名却无法正常工作。

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

  • 扩展名已正确加载并启用,在autoconfig.json中有以下指令:

    pref("extensions.autoDisableScopes", 0);
    pref("extensions.enabledScopes", 15);
    
  • 扩展名未签名,但是在autoconfig.json文件中有伪指令:

    pref ("xpinstall.signatures.required", false);
    
  • 尝试使用以下项目从附加组件管理器安装扩展:Install Add-on from file ...,它可以正常工作。不幸的是,我无法使用此选项,因为扩展仅针对当前用户安装。

那么,鉴于扩展名有效,准备过程出了什么问题,目录是否错误或缺少某些配置?

预安装的扩展程序是否需要其他文件或其他布局?

我还尝试了没有policies.json文件的情况,只将允许xpi文件但没有签名的指令留在autoconfig.json文件中。

任何帮助将不胜感激,谢谢

1 个答案:

答案 0 :(得分:0)

最后,我在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部分丢失了,修复了路径并添加了此部分,因为扩展程序已正确安装并可以正常工作!

这是已修复policy.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"
      }
    }
  }
}