在gecko中枚举已安装的软件包

时间:2017-02-01 16:02:31

标签: firefox gecko conkeror

我试图让conkeror与firefox 54一起使用,并注意到在conkeror application.ini下运行时似乎缺少devtools。要提供一些上下文,可以从conkeror repo目录运行conkeror:

XUL_APP_FILE="$(pwd)/application.ini" firefox

特别是,我试图访问浏览器控制台和Web控制台,但是{conneror}中似乎缺少chrome://devtools/content/webconsole/webconsole.xulchrome://devtools/content/debugger/debugger.xul,但它们适用于firefox 54。

在conkeror中是否可能因某种原因禁用了devtools,是否有办法检查/枚举已安装的软件包?

编辑:在conkeror上我试过

Cc["@mozilla.org/chrome/chrome-registry;1"]
  .getService(Ci.nsIChromeRegistry)
  .convertChromeURL(
    Cc["@mozilla.org/network/io-service;1"]
      .getService(Ci.nsIIOService)
      .newURI("chrome://devtools/content/", "UTF-8")).spec

并在终端上产生:

NS_ERROR_FILE_NOT_FOUND: Component returned failure code: 0x80520012 (NS_ERROR_FILE_NOT_FOUND) [nsIChromeRegistry.convertChromeURL]

虽然

Cc["@mozilla.org/chrome/chrome-registry;1"]
  .getService(Ci.nsIChromeRegistry)
  .convertChromeURL(
    Cc["@mozilla.org/network/io-service;1"]
      .getService(Ci.nsIIOService)
      .newURI("chrome://global/content/", "UTF-8")).spec

产量

jar:file:///Applications/FirefoxNightly.app/Contents/Resources/omni.ja!/chrome/toolkit/content/global/global.xul

老实说,我不知道如何在vanilla firefox上运行浏览器级别的javascript。

1 个答案:

答案 0 :(得分:1)

目前无法以这种方式使用随机XUL应用程序中的DevTools。有关详情,请参阅bug 1244163

目前,需要构建时间标志才能使DevTools正常工作。因此,SeaMonkey和Thunderbird能够运送DevTools,因为它们可以重建所有mozilla-central,并且可以在构建时设置标志。

DevTools团队正在探索将DevTools作为附件发布,所以假设发生这种情况,您可以在XUL应用程序中安装该附加组件。