Bug 1444926 - Move devtools/shim to devtools/startup;r=ochameau
authorJulian Descottes <jdescottes@mozilla.com>
Mon, 12 Mar 2018 14:41:48 +0100
changeset 409143 5953d908463e2050da654ebd6fc12885bcb08a24
parent 409090 25ddde05fe9ae071d2685fba0406044b040682d2
child 409144 1565b5c867a45f30d9f8de8dcbdb512cd72f1da5
push id101145
push usertoros@mozilla.com
push dateWed, 21 Mar 2018 10:11:21 +0000
treeherdermozilla-inbound@828a0bf882b7 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersochameau
bugs1444926
milestone61.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1444926 - Move devtools/shim to devtools/startup;r=ochameau MozReview-Commit-ID: K9WuJuTdYHS
.eslintignore
browser/base/content/nsContextMenu.js
browser/components/extensions/ext-devtools.js
browser/components/sessionstore/SessionStore.jsm
browser/installer/package-manifest.in
browser/locales/Makefile.in
browser/locales/filter.py
browser/locales/l10n.ini
browser/locales/l10n.toml
devtools/client/definitions.js
devtools/client/framework/devtools.js
devtools/client/netmonitor/webpack.config.js
devtools/client/webconsole/webpack.config.js
devtools/docs/preferences.md
devtools/moz.build
devtools/shared/Loader.jsm
devtools/shared/l10n.js
devtools/shim/DevToolsShim.jsm
devtools/shim/aboutdebugging-registration.js
devtools/shim/aboutdebugging.manifest
devtools/shim/aboutdevtools/aboutdevtools-registration.js
devtools/shim/aboutdevtools/aboutdevtools.css
devtools/shim/aboutdevtools/aboutdevtools.js
devtools/shim/aboutdevtools/aboutdevtools.manifest
devtools/shim/aboutdevtools/aboutdevtools.xhtml
devtools/shim/aboutdevtools/images/dev-edition-logo.svg
devtools/shim/aboutdevtools/images/external-link.svg
devtools/shim/aboutdevtools/images/feature-console.svg
devtools/shim/aboutdevtools/images/feature-debugger.svg
devtools/shim/aboutdevtools/images/feature-inspector.svg
devtools/shim/aboutdevtools/images/feature-memory.svg
devtools/shim/aboutdevtools/images/feature-network.svg
devtools/shim/aboutdevtools/images/feature-performance.svg
devtools/shim/aboutdevtools/images/feature-responsive.svg
devtools/shim/aboutdevtools/images/feature-storage.svg
devtools/shim/aboutdevtools/images/feature-visualediting.svg
devtools/shim/aboutdevtools/images/otter.svg
devtools/shim/aboutdevtools/moz.build
devtools/shim/aboutdevtools/subscribe.css
devtools/shim/aboutdevtools/subscribe.js
devtools/shim/aboutdevtools/test/.eslintrc.js
devtools/shim/aboutdevtools/test/browser.ini
devtools/shim/aboutdevtools/test/browser_aboutdevtools_closes_page.js
devtools/shim/aboutdevtools/test/browser_aboutdevtools_enables_devtools.js
devtools/shim/aboutdevtools/test/browser_aboutdevtools_focus_owner_tab.js
devtools/shim/aboutdevtools/test/browser_aboutdevtools_reuse_existing.js
devtools/shim/aboutdevtools/test/head.js
devtools/shim/aboutdevtoolstoolbox-registration.js
devtools/shim/aboutdevtoolstoolbox.manifest
devtools/shim/devtools-startup-prefs.js
devtools/shim/devtools-startup.js
devtools/shim/devtools-startup.manifest
devtools/shim/jar.mn
devtools/shim/locales/en-US/aboutdevtools.dtd
devtools/shim/locales/en-US/aboutdevtools.properties
devtools/shim/locales/en-US/key-shortcuts.properties
devtools/shim/locales/en-US/startup.properties
devtools/shim/locales/jar.mn
devtools/shim/locales/moz.build
devtools/shim/moz.build
devtools/shim/tests/browser/.eslintrc.js
devtools/shim/tests/browser/browser.ini
devtools/shim/tests/browser/browser_shim_disable_devtools.js
devtools/shim/tests/unit/.eslintrc.js
devtools/shim/tests/unit/test_devtools_shim.js
devtools/shim/tests/unit/xpcshell.ini
devtools/startup/DevToolsShim.jsm
devtools/startup/aboutdebugging-registration.js
devtools/startup/aboutdebugging.manifest
devtools/startup/aboutdevtools/aboutdevtools-registration.js
devtools/startup/aboutdevtools/aboutdevtools.css
devtools/startup/aboutdevtools/aboutdevtools.js
devtools/startup/aboutdevtools/aboutdevtools.manifest
devtools/startup/aboutdevtools/aboutdevtools.xhtml
devtools/startup/aboutdevtools/images/dev-edition-logo.svg
devtools/startup/aboutdevtools/images/external-link.svg
devtools/startup/aboutdevtools/images/feature-console.svg
devtools/startup/aboutdevtools/images/feature-debugger.svg
devtools/startup/aboutdevtools/images/feature-inspector.svg
devtools/startup/aboutdevtools/images/feature-memory.svg
devtools/startup/aboutdevtools/images/feature-network.svg
devtools/startup/aboutdevtools/images/feature-performance.svg
devtools/startup/aboutdevtools/images/feature-responsive.svg
devtools/startup/aboutdevtools/images/feature-storage.svg
devtools/startup/aboutdevtools/images/feature-visualediting.svg
devtools/startup/aboutdevtools/images/otter.svg
devtools/startup/aboutdevtools/moz.build
devtools/startup/aboutdevtools/subscribe.css
devtools/startup/aboutdevtools/subscribe.js
devtools/startup/aboutdevtools/test/.eslintrc.js
devtools/startup/aboutdevtools/test/browser.ini
devtools/startup/aboutdevtools/test/browser_aboutdevtools_closes_page.js
devtools/startup/aboutdevtools/test/browser_aboutdevtools_enables_devtools.js
devtools/startup/aboutdevtools/test/browser_aboutdevtools_focus_owner_tab.js
devtools/startup/aboutdevtools/test/browser_aboutdevtools_reuse_existing.js
devtools/startup/aboutdevtools/test/head.js
devtools/startup/aboutdevtoolstoolbox-registration.js
devtools/startup/aboutdevtoolstoolbox.manifest
devtools/startup/devtools-startup-prefs.js
devtools/startup/devtools-startup.js
devtools/startup/devtools-startup.manifest
devtools/startup/jar.mn
devtools/startup/locales/en-US/aboutdevtools.dtd
devtools/startup/locales/en-US/aboutdevtools.properties
devtools/startup/locales/en-US/key-shortcuts.properties
devtools/startup/locales/en-US/startup.properties
devtools/startup/locales/jar.mn
devtools/startup/locales/moz.build
devtools/startup/moz.build
devtools/startup/tests/browser/.eslintrc.js
devtools/startup/tests/browser/browser.ini
devtools/startup/tests/browser/browser_shim_disable_devtools.js
devtools/startup/tests/unit/.eslintrc.js
devtools/startup/tests/unit/test_devtools_shim.js
devtools/startup/tests/unit/xpcshell.ini
toolkit/components/extensions/ext-runtime.js
--- a/.eslintignore
+++ b/.eslintignore
@@ -151,17 +151,17 @@ devtools/server/tests/browser/stylesheet
 devtools/server/tests/unit/xpcshell_debugging_script.js
 devtools/client/shared/webpack/shims/test/test_clipboard.html
 devtools/shared/qrcode/tests/mochitest/test_decode.html
 devtools/shared/tests/mochitest/*.html
 devtools/shared/webconsole/test/test_*.html
 
 # Ignore devtools preferences files
 devtools/client/preferences/**
-devtools/shim/devtools-startup-prefs.js
+devtools/startup/devtools-startup-prefs.js
 
 # Ignore devtools third-party libs
 devtools/shared/jsbeautify/*
 devtools/shared/acorn/*
 devtools/shared/gcli/source/*
 devtools/shared/node-properties/*
 devtools/shared/pretty-fast/*
 devtools/shared/sourcemap/*
--- a/browser/base/content/nsContextMenu.js
+++ b/browser/base/content/nsContextMenu.js
@@ -10,17 +10,17 @@ ChromeUtils.import("resource://gre/modul
 ChromeUtils.import("resource://gre/modules/Services.jsm");
 
 XPCOMUtils.defineLazyModuleGetters(this, {
   SpellCheckHelper: "resource://gre/modules/InlineSpellChecker.jsm",
   LoginHelper: "resource://gre/modules/LoginHelper.jsm",
   LoginManagerContextMenu: "resource://gre/modules/LoginManagerContextMenu.jsm",
   WebNavigationFrames: "resource://gre/modules/WebNavigationFrames.jsm",
   ContextualIdentityService: "resource://gre/modules/ContextualIdentityService.jsm",
-  DevToolsShim: "chrome://devtools-shim/content/DevToolsShim.jsm",
+  DevToolsShim: "chrome://devtools-startup/content/DevToolsShim.jsm",
   NetUtil: "resource://gre/modules/NetUtil.jsm",
 });
 
 var gContextMenuContentData = null;
 
 function setContextMenuContentData(data) {
   gContextMenuContentData = data;
 }
--- a/browser/components/extensions/ext-devtools.js
+++ b/browser/components/extensions/ext-devtools.js
@@ -9,17 +9,17 @@
 /* import-globals-from ext-browser.js */
 
 /**
  * This module provides helpers used by the other specialized `ext-devtools-*.js` modules
  * and the implementation of the `devtools_page`.
  */
 
 ChromeUtils.defineModuleGetter(this, "DevToolsShim",
-                               "chrome://devtools-shim/content/DevToolsShim.jsm");
+                               "chrome://devtools-startup/content/DevToolsShim.jsm");
 
 ChromeUtils.import("resource://gre/modules/ExtensionParent.jsm");
 
 var {
   HiddenExtensionPage,
   watchExtensionProxyContextLoad,
 } = ExtensionParent;
 
--- a/browser/components/sessionstore/SessionStore.jsm
+++ b/browser/components/sessionstore/SessionStore.jsm
@@ -160,17 +160,17 @@ XPCOMUtils.defineLazyServiceGetters(this
   gSessionStartup: ["@mozilla.org/browser/sessionstartup;1", "nsISessionStartup"],
   gScreenManager: ["@mozilla.org/gfx/screenmanager;1", "nsIScreenManager"],
   Telemetry: ["@mozilla.org/base/telemetry;1", "nsITelemetry"],
 });
 
 XPCOMUtils.defineLazyModuleGetters(this, {
   AppConstants: "resource://gre/modules/AppConstants.jsm",
   AsyncShutdown: "resource://gre/modules/AsyncShutdown.jsm",
-  DevToolsShim: "chrome://devtools-shim/content/DevToolsShim.jsm",
+  DevToolsShim: "chrome://devtools-startup/content/DevToolsShim.jsm",
   GlobalState: "resource:///modules/sessionstore/GlobalState.jsm",
   PrivacyFilter: "resource:///modules/sessionstore/PrivacyFilter.jsm",
   PromiseUtils: "resource://gre/modules/PromiseUtils.jsm",
   RecentWindow: "resource:///modules/RecentWindow.jsm",
   RunState: "resource:///modules/sessionstore/RunState.jsm",
   SessionCookies: "resource:///modules/sessionstore/SessionCookies.jsm",
   SessionFile: "resource:///modules/sessionstore/SessionFile.jsm",
   SessionSaver: "resource:///modules/sessionstore/SessionSaver.jsm",
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -609,18 +609,18 @@
 @RESPATH@/browser/features/*
 
 ; [Webide Files]
 @RESPATH@/browser/chrome/webide@JAREXT@
 @RESPATH@/browser/chrome/webide.manifest
 @RESPATH@/browser/@PREF_DIR@/webide-prefs.js
 
 ; [DevTools Shim Files]
-@RESPATH@/browser/chrome/devtools-shim@JAREXT@
-@RESPATH@/browser/chrome/devtools-shim.manifest
+@RESPATH@/browser/chrome/devtools-startup@JAREXT@
+@RESPATH@/browser/chrome/devtools-startup.manifest
 @RESPATH@/browser/@PREF_DIR@/devtools-startup-prefs.js
 
 ; DevTools
 @RESPATH@/browser/chrome/devtools@JAREXT@
 @RESPATH@/browser/chrome/devtools.manifest
 @RESPATH@/browser/@PREF_DIR@/devtools.js
 @RESPATH@/browser/@PREF_DIR@/debugger.js
 
--- a/browser/locales/Makefile.in
+++ b/browser/locales/Makefile.in
@@ -78,17 +78,17 @@ endif
 	@$(MAKE) -C ../extensions/pocket/locale AB_CD=$* XPI_NAME=locale-$*
 ifndef RELEASE_OR_BETA
 	@$(MAKE) -C ../extensions/presentation/locale AB_CD=$* XPI_NAME=locale-$*
 endif
 ifneq '$(or $(MOZ_DEV_EDITION),$(NIGHTLY_BUILD))' ''
 	@$(MAKE) -C ../extensions/webcompat-reporter/locales AB_CD=$* XPI_NAME=locale-$*
 endif
 	@$(MAKE) -C ../../devtools/client/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
-	@$(MAKE) -C ../../devtools/shim/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+	@$(MAKE) -C ../../devtools/startup/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
 	@$(MAKE) -B searchplugins AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR)
 	@$(MAKE) multilocale.txt-$* AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$*
 
 chrome-%: AB_CD=$*
 chrome-%: IS_LANGUAGE_REPACK=1
 chrome-%:
@@ -99,17 +99,17 @@ chrome-%:
 ifneq (,$(wildcard ../extensions/formautofill/locales))
 	@$(MAKE) -C ../extensions/formautofill/locales chrome AB_CD=$*
 endif
 	@$(MAKE) -C ../extensions/pocket/locale chrome AB_CD=$*
 ifndef RELEASE_OR_BETA
 	@$(MAKE) -C ../extensions/presentation/locale chrome AB_CD=$*
 endif
 	@$(MAKE) -C ../../devtools/client/locales chrome AB_CD=$*
-	@$(MAKE) -C ../../devtools/shim/locales chrome AB_CD=$*
+	@$(MAKE) -C ../../devtools/startup/locales chrome AB_CD=$*
 	@$(MAKE) chrome AB_CD=$*
 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales chrome AB_CD=$*
 ifdef NIGHTLY_BUILD
 	@$(MAKE) -C ../extensions/webcompat-reporter/locales chrome AB_CD=$*
 endif
 
 package-win32-installer: WIN32_INSTALLER_OUT=$(ABS_DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe
 package-win32-installer: $(SUBMAKEFILES)
--- a/browser/locales/filter.py
+++ b/browser/locales/filter.py
@@ -1,17 +1,17 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 def test(mod, path, entity = None):
   import re
   # ignore anything but Firefox
   if mod not in ("netwerk", "dom", "toolkit", "security/manager",
-                 "devtools/client", "devtools/shared", "devtools/shim",
+                 "devtools/client", "devtools/shared", "devtools/startup",
                  "browser",
                  "browser/extensions/formautofill",
                  "browser/extensions/onboarding",
                  "browser/extensions/webcompat-reporter",
                  "extensions/spellcheck",
                  "other-licenses/branding/firefox",
                  "browser/branding/official",
                  "services/sync"):
--- a/browser/locales/l10n.ini
+++ b/browser/locales/l10n.ini
@@ -6,17 +6,17 @@
 depth = ../..
 all = browser/locales/all-locales
 
 [compare]
 dirs = browser
      other-licenses/branding/firefox
      browser/branding/official
      devtools/client
-     devtools/shim
+     devtools/startup
      browser/extensions/formautofill
      browser/extensions/onboarding
      browser/extensions/webcompat-reporter
 
 [includes]
 # non-central apps might want to use %(topsrcdir)s here, or other vars
 # RFE: that needs to be supported by compare-locales, too, though
 toolkit = toolkit/locales/l10n.ini
--- a/browser/locales/l10n.toml
+++ b/browser/locales/l10n.toml
@@ -140,18 +140,18 @@ locales = [
 
 [[includes]]
     path = "toolkit/locales/l10n.toml"
 
 [[includes]]
     path = "devtools/client/locales/l10n.toml"
 
 [[paths]]
-    reference = "devtools/shim/locales/en-US/**"
-    l10n = "{l}devtools/shim/**"
+    reference = "devtools/startup/locales/en-US/**"
+    l10n = "{l}devtools/startup/**"
 
 # Filters
 # The filters below are evaluated one after the other, in the given order.
 # Enter a combination of path as in the localization, key, and an action,
 # to change the default behavior of compare-locales and l10n merge.
 #
 # For browser/locales/en-US/chrome/browser/foo.properties,
 # path would be {l}browser/chrome/browser/foo.properties
--- a/devtools/client/definitions.js
+++ b/devtools/client/definitions.js
@@ -29,17 +29,17 @@ loader.lazyGetter(this, "DomPanel", () =
 loader.lazyRequireGetter(this, "CommandUtils", "devtools/client/shared/developer-toolbar", true);
 loader.lazyRequireGetter(this, "CommandState", "devtools/shared/gcli/command-state", true);
 loader.lazyRequireGetter(this, "ResponsiveUIManager", "devtools/client/responsive.html/manager", true);
 loader.lazyImporter(this, "ScratchpadManager", "resource://devtools/client/scratchpad/scratchpad-manager.jsm");
 
 const {MultiLocalizationHelper} = require("devtools/shared/l10n");
 const L10N = new MultiLocalizationHelper(
   "devtools/client/locales/startup.properties",
-  "devtools/shim/locales/key-shortcuts.properties"
+  "devtools/startup/locales/key-shortcuts.properties"
 );
 
 var Tools = {};
 exports.Tools = Tools;
 
 // Definitions
 Tools.options = {
   id: "options",
--- a/devtools/client/framework/devtools.js
+++ b/devtools/client/framework/devtools.js
@@ -2,17 +2,17 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 "use strict";
 
 const {Cu} = require("chrome");
 const Services = require("Services");
 
-const {DevToolsShim} = require("chrome://devtools-shim/content/DevToolsShim.jsm");
+const {DevToolsShim} = require("chrome://devtools-startup/content/DevToolsShim.jsm");
 
 // Load gDevToolsBrowser toolbox lazily as they need gDevTools to be fully initialized
 loader.lazyRequireGetter(this, "TargetFactory", "devtools/client/framework/target", true);
 loader.lazyRequireGetter(this, "TabTarget", "devtools/client/framework/target", true);
 loader.lazyRequireGetter(this, "Toolbox", "devtools/client/framework/toolbox", true);
 loader.lazyRequireGetter(this, "ToolboxHostManager", "devtools/client/framework/toolbox-host-manager", true);
 loader.lazyRequireGetter(this, "gDevToolsBrowser", "devtools/client/framework/devtools-browser", true);
 loader.lazyRequireGetter(this, "HUDService", "devtools/client/webconsole/hudservice", true);
--- a/devtools/client/netmonitor/webpack.config.js
+++ b/devtools/client/netmonitor/webpack.config.js
@@ -87,17 +87,17 @@ let webpackConfig = {
       "devtools/shared/event-emitter": "devtools-modules/src/utils/event-emitter",
       "devtools/shared/fronts/timeline": path.join(__dirname, "../../client/shared/webpack/shims/fronts-timeline-shim"),
       "devtools/shared/platform/clipboard": path.join(__dirname, "../../client/shared/webpack/shims/platform-clipboard-stub"),
       "devtools/client/netmonitor/src/utils/firefox/open-request-in-tab": path.join(__dirname, "src/utils/open-request-in-tab"),
 
       // Locales need to be explicitly mapped to the en-US subfolder
       "devtools/client/locales": path.join(__dirname, "../../client/locales/en-US"),
       "devtools/shared/locales": path.join(__dirname, "../../shared/locales/en-US"),
-      "devtools/shim/locales": path.join(__dirname, "../../shared/locales/en-US"),
+      "devtools/startup/locales": path.join(__dirname, "../../shared/locales/en-US"),
       "toolkit/locales": path.join(__dirname, "../../../toolkit/locales/en-US"),
 
       // Unless a path explicitly needs to be rewritten or shimmed, all devtools paths can
       // be mapped to ../../
       "devtools": path.join(__dirname, "../../"),
     },
   },
 };
--- a/devtools/client/webconsole/webpack.config.js
+++ b/devtools/client/webconsole/webpack.config.js
@@ -101,17 +101,17 @@ webpackConfig.resolve = {
     "devtools/shared/client/debugger-client": path.join(__dirname, "new-console-output/test/fixtures/DebuggerClient"),
     "devtools/shared/platform/clipboard": path.join(__dirname, "../../client/shared/webpack/shims/platform-clipboard-stub"),
     "devtools/shared/platform/stack": path.join(__dirname, "../../client/shared/webpack/shims/platform-stack-stub"),
 
     // Locales need to be explicitly mapped to the en-US subfolder
     "toolkit/locales": path.join(__dirname, "../../../toolkit/locales/en-US"),
     "devtools/client/locales": path.join(__dirname, "../../client/locales/en-US"),
     "devtools/shared/locales": path.join(__dirname, "../../shared/locales/en-US"),
-    "devtools/shim/locales": path.join(__dirname, "../../shared/locales/en-US"),
+    "devtools/startup/locales": path.join(__dirname, "../../shared/locales/en-US"),
 
     // Unless a path explicitly needs to be rewritten or shimmed, all devtools paths can
     // be mapped to ../../
     "devtools": path.join(__dirname, "../../"),
   }
 };
 
 const mappings = [
--- a/devtools/docs/preferences.md
+++ b/devtools/docs/preferences.md
@@ -67,22 +67,22 @@ value does not match the preference type
 These APIs are very similar for each preference type.
 
 ## Create a new preference
 
 To create a new preference, it should be assigned a default value. Default preferences are
 defined in preferences files such as:
 - devtools/client/preferences/devtools.js
 - devtools/client/preferences/debugger.js
-- devtools/shim/devtools-startup-prefs.js
+- devtools/startup/devtools-startup-prefs.js
 
 Most new preferences should go in devtools/client/preferences/devtools.js. Debugger
 specific preferences should go in devtools/client/preferences/debugger.js. Finally if a
 preference needs to be available very early during the Firefox startup sequence, it should
-go in devtools/shim/devtools-startup-prefs.js.
+go in devtools/startup/devtools-startup-prefs.js.
 
 ### Projects using Launchpad
 
 At the time of writing this doc, projects using Launchpad have to duplicate the default
 definition of a preference.
 * debugger.html: update [src/utils/prefs.js](https://github.com/devtools-html/debugger.html/blob/master/src/utils/prefs.js)
 * netmonitor: update [index.js](http://searchfox.org/mozilla-central/source/devtools/client/netmonitor/index.js)
 * webconsole: update [local-dev/index.js](http://searchfox.org/mozilla-central/source/devtools/client/webconsole/local-dev/index.js)
--- a/devtools/moz.build
+++ b/devtools/moz.build
@@ -8,21 +8,21 @@ if CONFIG['MOZ_DEVTOOLS'] and CONFIG['MO
     error('Unsupported MOZ_DEVTOOLS value: %s' % (CONFIG['MOZ_DEVTOOLS']))
 
 if CONFIG['MOZ_DEVTOOLS'] == 'all':
     DIRS += [
         'client',
     ]
 
 # `addon` is a special build mode to strip everything except binary components
-# and shim modules that are going to stay in Firefox once DevTools ship as an
+# and startup modules that are going to stay in Firefox once DevTools ship as an
 # add-on.
 # `platform` contains all native components
 DIRS += [
-    'shim',
+    'startup',
     'platform',
 ]
 
 if CONFIG['MOZ_DEVTOOLS'] != 'addon':
     DIRS += [
         'server',
         'shared',
     ]
--- a/devtools/shared/Loader.jsm
+++ b/devtools/shared/Loader.jsm
@@ -42,17 +42,17 @@ BuiltinProvider.prototype = {
       // Allow access to xpcshell test items from the loader.
       "xpcshell-test": "resource://test",
 
       // ⚠ DISCUSSION ON DEV-DEVELOPER-TOOLS REQUIRED BEFORE MODIFYING ⚠
       // Allow access to locale data using paths closer to what is
       // used in the source tree.
       "devtools/client/locales": "chrome://devtools/locale",
       "devtools/shared/locales": "chrome://devtools-shared/locale",
-      "devtools/shim/locales": "chrome://devtools-shim/locale",
+      "devtools/startup/locales": "chrome://devtools-startup/locale",
       "toolkit/locales": "chrome://global/locale",
     };
     // When creating a Loader invisible to the Debugger, we have to ensure
     // using only modules and not depend on any JSM. As everything that is
     // not loaded with Loader isn't going to respect `invisibleToDebugger`.
     // But we have to keep using Promise.jsm for other loader to prevent
     // breaking unhandled promise rejection in tests.
     if (this.invisibleToDebugger) {
--- a/devtools/shared/l10n.js
+++ b/devtools/shared/l10n.js
@@ -25,17 +25,17 @@ const propertiesMap = {};
 // directory.  Then we use the correct context to load the property
 // file.  In the webpack case this results in just the locale property
 // files being included in the pack; and in the devtools case this is
 // a wordy no-op.
 const reqShared = require.context("raw!devtools/shared/locales/",
                                   true, /^.*\.properties$/);
 const reqClient = require.context("raw!devtools/client/locales/",
                                   true, /^.*\.properties$/);
-const reqShim = require.context("raw!devtools/shim/locales/",
+const reqStartup = require.context("raw!devtools/startup/locales/",
                                   true, /^.*\.properties$/);
 const reqGlobal = require.context("raw!toolkit/locales/",
                                   true, /^.*\.properties$/);
 
 // Map used to memoize Number formatters.
 const numberFormatters = new Map();
 const getNumberFormatter = function(decimals) {
   let formatter = numberFormatters.get(decimals);
@@ -69,18 +69,18 @@ function getProperties(url) {
     let index = url.lastIndexOf("/");
     // Turn "mumble/locales/resource.properties" => "./resource.properties".
     let baseName = "." + url.substr(index);
     let reqFn;
     if (/^toolkit/.test(url)) {
       reqFn = reqGlobal;
     } else if (/^devtools\/shared/.test(url)) {
       reqFn = reqShared;
-    } else if (/^devtools\/shim/.test(url)) {
-      reqFn = reqShim;
+    } else if (/^devtools\/startup/.test(url)) {
+      reqFn = reqStartup;
     } else {
       reqFn = reqClient;
     }
     propertiesMap[url] = parsePropertiesFile(reqFn(baseName));
   }
 
   return propertiesMap[url];
 }
rename from devtools/shim/DevToolsShim.jsm
rename to devtools/startup/DevToolsShim.jsm
rename from devtools/shim/aboutdebugging-registration.js
rename to devtools/startup/aboutdebugging-registration.js
rename from devtools/shim/aboutdebugging.manifest
rename to devtools/startup/aboutdebugging.manifest
rename from devtools/shim/aboutdevtools/aboutdevtools-registration.js
rename to devtools/startup/aboutdevtools/aboutdevtools-registration.js
--- a/devtools/shim/aboutdevtools/aboutdevtools-registration.js
+++ b/devtools/startup/aboutdevtools/aboutdevtools-registration.js
@@ -9,17 +9,17 @@
 const { XPCOMUtils } = ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm", {});
 const { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm", {});
 
 const { nsIAboutModule } = Ci;
 
 function AboutDevtools() {}
 
 AboutDevtools.prototype = {
-  uri: Services.io.newURI("chrome://devtools-shim/content/aboutdevtools/aboutdevtools.xhtml"),
+  uri: Services.io.newURI("chrome://devtools-startup/content/aboutdevtools/aboutdevtools.xhtml"),
   classDescription: "about:devtools",
   classID: Components.ID("3a16d383-92bd-4c24-ac10-0e2bd66883ab"),
   contractID: "@mozilla.org/network/protocol/about;1?what=devtools",
 
   QueryInterface: XPCOMUtils.generateQI([nsIAboutModule]),
 
   newChannel: function(uri, loadInfo) {
     let chan = Services.io.newChannelFromURIWithLoadInfo(
rename from devtools/shim/aboutdevtools/aboutdevtools.css
rename to devtools/startup/aboutdevtools/aboutdevtools.css
rename from devtools/shim/aboutdevtools/aboutdevtools.js
rename to devtools/startup/aboutdevtools/aboutdevtools.js
--- a/devtools/shim/aboutdevtools/aboutdevtools.js
+++ b/devtools/startup/aboutdevtools/aboutdevtools.js
@@ -23,20 +23,20 @@ const MESSAGES = {
 };
 
 // Google analytics parameters that should be added to all outgoing links.
 const GA_PARAMETERS = [
   ["utm_source", "devtools"],
   ["utm_medium", "onboarding"],
 ];
 
-const ABOUTDEVTOOLS_STRINGS = "chrome://devtools-shim/locale/aboutdevtools.properties";
+const ABOUTDEVTOOLS_STRINGS = "chrome://devtools-startup/locale/aboutdevtools.properties";
 const aboutDevtoolsBundle = Services.strings.createBundle(ABOUTDEVTOOLS_STRINGS);
 
-const KEY_SHORTCUTS_STRINGS = "chrome://devtools-shim/locale/key-shortcuts.properties";
+const KEY_SHORTCUTS_STRINGS = "chrome://devtools-startup/locale/key-shortcuts.properties";
 const keyShortcutsBundle = Services.strings.createBundle(KEY_SHORTCUTS_STRINGS);
 
 // URL constructor doesn't support about: scheme,
 // we have to use http in order to have working searchParams.
 let url = new URL(window.location.href.replace("about:", "http://"));
 let reason = url.searchParams.get("reason");
 let keyid = url.searchParams.get("keyid");
 let tabid = parseInt(url.searchParams.get("tabid"), 10);
@@ -81,57 +81,57 @@ function updatePage() {
  * Each feature should contain:
  * - icon: the name of the image to use
  * - title: the key of the localized title (from aboutdevtools.properties)
  * - desc: the key of the localized description (from aboutdevtools.properties)
  * - link: the MDN documentation link
  */
 const features = [
   {
-    icon: "chrome://devtools-shim/content/aboutdevtools/images/feature-inspector.svg",
+    icon: "chrome://devtools-startup/content/aboutdevtools/images/feature-inspector.svg",
     title: "features.inspector.title",
     desc: "features.inspector.desc",
     link: "https://developer.mozilla.org/docs/Tools/Page_Inspector",
   }, {
-    icon: "chrome://devtools-shim/content/aboutdevtools/images/feature-console.svg",
+    icon: "chrome://devtools-startup/content/aboutdevtools/images/feature-console.svg",
     title: "features.console.title",
     desc: "features.console.desc",
     link: "https://developer.mozilla.org/docs/Tools/Web_Console",
   }, {
-    icon: "chrome://devtools-shim/content/aboutdevtools/images/feature-debugger.svg",
+    icon: "chrome://devtools-startup/content/aboutdevtools/images/feature-debugger.svg",
     title: "features.debugger.title",
     desc: "features.debugger.desc",
     link: "https://developer.mozilla.org/docs/Tools/Debugger",
   }, {
-    icon: "chrome://devtools-shim/content/aboutdevtools/images/feature-network.svg",
+    icon: "chrome://devtools-startup/content/aboutdevtools/images/feature-network.svg",
     title: "features.network.title",
     desc: "features.network.desc",
     link: "https://developer.mozilla.org/docs/Tools/Network_Monitor",
   }, {
-    icon: "chrome://devtools-shim/content/aboutdevtools/images/feature-storage.svg",
+    icon: "chrome://devtools-startup/content/aboutdevtools/images/feature-storage.svg",
     title: "features.storage.title",
     desc: "features.storage.desc",
     link: "https://developer.mozilla.org/docs/Tools/Storage_Inspector",
   }, {
-    icon: "chrome://devtools-shim/content/aboutdevtools/images/feature-responsive.svg",
+    icon: "chrome://devtools-startup/content/aboutdevtools/images/feature-responsive.svg",
     title: "features.responsive.title",
     desc: "features.responsive.desc",
     link: "https://developer.mozilla.org/docs/Tools/Responsive_Design_Mode",
   }, {
-    icon: "chrome://devtools-shim/content/aboutdevtools/images/feature-visualediting.svg",
+    icon: "chrome://devtools-startup/content/aboutdevtools/images/feature-visualediting.svg",
     title: "features.visualediting.title",
     desc: "features.visualediting.desc",
     link: "https://developer.mozilla.org/docs/Tools/Style_Editor",
   }, {
-    icon: "chrome://devtools-shim/content/aboutdevtools/images/feature-performance.svg",
+    icon: "chrome://devtools-startup/content/aboutdevtools/images/feature-performance.svg",
     title: "features.performance.title",
     desc: "features.performance.desc",
     link: "https://developer.mozilla.org/docs/Tools/Performance",
   }, {
-    icon: "chrome://devtools-shim/content/aboutdevtools/images/feature-memory.svg",
+    icon: "chrome://devtools-startup/content/aboutdevtools/images/feature-memory.svg",
     title: "features.memory.title",
     desc: "features.memory.desc",
     link: "https://developer.mozilla.org/docs/Tools/Memory",
   },
 ];
 
 /**
  * Helper to create a DOM element to represent a DevTools feature.
rename from devtools/shim/aboutdevtools/aboutdevtools.manifest
rename to devtools/startup/aboutdevtools/aboutdevtools.manifest
rename from devtools/shim/aboutdevtools/aboutdevtools.xhtml
rename to devtools/startup/aboutdevtools/aboutdevtools.xhtml
--- a/devtools/shim/aboutdevtools/aboutdevtools.xhtml
+++ b/devtools/startup/aboutdevtools/aboutdevtools.xhtml
@@ -1,27 +1,27 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!-- This Source Code Form is subject to the terms of the Mozilla Public
    - License, v. 2.0. If a copy of the MPL was not distributed with this
    - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
 <!DOCTYPE html [
 <!ENTITY % htmlDTD PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd"> %htmlDTD;
 <!ENTITY % globalDTD SYSTEM "chrome://global/locale/global.dtd"> %globalDTD;
-<!ENTITY % aboutdevtoolsDTD SYSTEM "chrome://devtools-shim/locale/aboutdevtools.dtd"> %aboutdevtoolsDTD;
+<!ENTITY % aboutdevtoolsDTD SYSTEM "chrome://devtools-startup/locale/aboutdevtools.dtd"> %aboutdevtoolsDTD;
 ]>
 
 <html xmlns="http://www.w3.org/1999/xhtml" dir="&locale.dir;">
 <head>
   <title>&aboutDevtools.headTitle;</title>
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>a
   <link rel="stylesheet" href="chrome://global/skin/in-content/common.css" type="text/css"/>
-  <link rel="stylesheet" href="chrome://devtools-shim/content/aboutdevtools/aboutdevtools.css"  type="text/css"/>
-  <link rel="stylesheet" href="chrome://devtools-shim/content/aboutdevtools/subscribe.css"  type="text/css"/>
-  <script type="application/javascript" src="chrome://devtools-shim/content/aboutdevtools/aboutdevtools.js"></script>
-  <script type="application/javascript" src="chrome://devtools-shim/content/aboutdevtools/subscribe.js"></script>
+  <link rel="stylesheet" href="chrome://devtools-startup/content/aboutdevtools/aboutdevtools.css"  type="text/css"/>
+  <link rel="stylesheet" href="chrome://devtools-startup/content/aboutdevtools/subscribe.css"  type="text/css"/>
+  <script type="application/javascript" src="chrome://devtools-startup/content/aboutdevtools/aboutdevtools.js"></script>
+  <script type="application/javascript" src="chrome://devtools-startup/content/aboutdevtools/subscribe.js"></script>
 </head>
 <body>
   <div id="install-page" class="wrapper" hidden="true">
     <div class="box">
       <div class="left-pane" />
       <div class="right-pane">
         <h1 class="title" id="common-title" hidden="true">&aboutDevtools.enable.title;</h1>
         <h1 class="title" id="inspect-title" hidden="true">&aboutDevtools.enable.inspectElementTitle;</h1>
@@ -84,17 +84,17 @@
 
     <div class="features">
       <ul class="features-list">
       </ul>
     </div>
 
     <footer>
       <img class="dev-edition-logo"
-           src="chrome://devtools-shim/content/aboutdevtools/images/dev-edition-logo.svg"
+           src="chrome://devtools-startup/content/aboutdevtools/images/dev-edition-logo.svg"
            alt="Firefox Developer Edition logo"/>
       <div class="footer-message">
         <h1 class="footer-message-title">&aboutDevtools.footer.title;</h1>
         <p>&aboutDevtools.footer.message;</p>
         <a class="external footer-link"
            href="https://www.mozilla.org/firefox/developer/"
            target="_blank">&aboutDevtools.footer.learnMoreLink;</a>
       </div>
rename from devtools/shim/aboutdevtools/images/dev-edition-logo.svg
rename to devtools/startup/aboutdevtools/images/dev-edition-logo.svg
rename from devtools/shim/aboutdevtools/images/external-link.svg
rename to devtools/startup/aboutdevtools/images/external-link.svg
rename from devtools/shim/aboutdevtools/images/feature-console.svg
rename to devtools/startup/aboutdevtools/images/feature-console.svg
rename from devtools/shim/aboutdevtools/images/feature-debugger.svg
rename to devtools/startup/aboutdevtools/images/feature-debugger.svg
rename from devtools/shim/aboutdevtools/images/feature-inspector.svg
rename to devtools/startup/aboutdevtools/images/feature-inspector.svg
rename from devtools/shim/aboutdevtools/images/feature-memory.svg
rename to devtools/startup/aboutdevtools/images/feature-memory.svg
rename from devtools/shim/aboutdevtools/images/feature-network.svg
rename to devtools/startup/aboutdevtools/images/feature-network.svg
rename from devtools/shim/aboutdevtools/images/feature-performance.svg
rename to devtools/startup/aboutdevtools/images/feature-performance.svg
rename from devtools/shim/aboutdevtools/images/feature-responsive.svg
rename to devtools/startup/aboutdevtools/images/feature-responsive.svg
rename from devtools/shim/aboutdevtools/images/feature-storage.svg
rename to devtools/startup/aboutdevtools/images/feature-storage.svg
rename from devtools/shim/aboutdevtools/images/feature-visualediting.svg
rename to devtools/startup/aboutdevtools/images/feature-visualediting.svg
rename from devtools/shim/aboutdevtools/images/otter.svg
rename to devtools/startup/aboutdevtools/images/otter.svg
rename from devtools/shim/aboutdevtools/moz.build
rename to devtools/startup/aboutdevtools/moz.build
rename from devtools/shim/aboutdevtools/subscribe.css
rename to devtools/startup/aboutdevtools/subscribe.css
rename from devtools/shim/aboutdevtools/subscribe.js
rename to devtools/startup/aboutdevtools/subscribe.js
--- a/devtools/shim/aboutdevtools/subscribe.js
+++ b/devtools/startup/aboutdevtools/subscribe.js
@@ -10,17 +10,17 @@
  */
 
 window.addEventListener("load", function() {
   const { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm", {});
 
   // Timeout for the subscribe XHR.
   const REQUEST_TIMEOUT = 5000;
 
-  const ABOUTDEVTOOLS_STRINGS = "chrome://devtools-shim/locale/aboutdevtools.properties";
+  const ABOUTDEVTOOLS_STRINGS = "chrome://devtools-startup/locale/aboutdevtools.properties";
   const aboutDevtoolsBundle = Services.strings.createBundle(ABOUTDEVTOOLS_STRINGS);
 
   let emailInput = document.getElementById("email");
   let newsletterErrors = document.getElementById("newsletter-errors");
   let newsletterForm = document.getElementById("newsletter-form");
   let newsletterPrivacySection = document.getElementById("newsletter-privacy");
   let newsletterThanks = document.getElementById("newsletter-thanks");
 
rename from devtools/shim/aboutdevtools/test/.eslintrc.js
rename to devtools/startup/aboutdevtools/test/.eslintrc.js
rename from devtools/shim/aboutdevtools/test/browser.ini
rename to devtools/startup/aboutdevtools/test/browser.ini
rename from devtools/shim/aboutdevtools/test/browser_aboutdevtools_closes_page.js
rename to devtools/startup/aboutdevtools/test/browser_aboutdevtools_closes_page.js
rename from devtools/shim/aboutdevtools/test/browser_aboutdevtools_enables_devtools.js
rename to devtools/startup/aboutdevtools/test/browser_aboutdevtools_enables_devtools.js
rename from devtools/shim/aboutdevtools/test/browser_aboutdevtools_focus_owner_tab.js
rename to devtools/startup/aboutdevtools/test/browser_aboutdevtools_focus_owner_tab.js
rename from devtools/shim/aboutdevtools/test/browser_aboutdevtools_reuse_existing.js
rename to devtools/startup/aboutdevtools/test/browser_aboutdevtools_reuse_existing.js
rename from devtools/shim/aboutdevtools/test/head.js
rename to devtools/startup/aboutdevtools/test/head.js
rename from devtools/shim/aboutdevtoolstoolbox-registration.js
rename to devtools/startup/aboutdevtoolstoolbox-registration.js
rename from devtools/shim/aboutdevtoolstoolbox.manifest
rename to devtools/startup/aboutdevtoolstoolbox.manifest
rename from devtools/shim/devtools-startup-prefs.js
rename to devtools/startup/devtools-startup-prefs.js
rename from devtools/shim/devtools-startup.js
rename to devtools/startup/devtools-startup.js
--- a/devtools/shim/devtools-startup.js
+++ b/devtools/startup/devtools-startup.js
@@ -40,22 +40,22 @@ ChromeUtils.defineModuleGetter(this, "Se
 ChromeUtils.defineModuleGetter(this, "AppConstants",
                                "resource://gre/modules/AppConstants.jsm");
 ChromeUtils.defineModuleGetter(this, "CustomizableUI",
                                "resource:///modules/CustomizableUI.jsm");
 ChromeUtils.defineModuleGetter(this, "CustomizableWidgets",
                                "resource:///modules/CustomizableWidgets.jsm");
 
 XPCOMUtils.defineLazyGetter(this, "StartupBundle", function() {
-  const url = "chrome://devtools-shim/locale/startup.properties";
+  const url = "chrome://devtools-startup/locale/startup.properties";
   return Services.strings.createBundle(url);
 });
 
 XPCOMUtils.defineLazyGetter(this, "KeyShortcutsBundle", function() {
-  const url = "chrome://devtools-shim/locale/key-shortcuts.properties";
+  const url = "chrome://devtools-startup/locale/key-shortcuts.properties";
   return Services.strings.createBundle(url);
 });
 
 XPCOMUtils.defineLazyGetter(this, "KeyShortcuts", function() {
   const isMac = AppConstants.platform == "macosx";
 
   // Common modifier shared by most key shortcuts
   const modifiers = isMac ? "accel,alt" : "accel,shift";
rename from devtools/shim/devtools-startup.manifest
rename to devtools/startup/devtools-startup.manifest
rename from devtools/shim/jar.mn
rename to devtools/startup/jar.mn
--- a/devtools/shim/jar.mn
+++ b/devtools/startup/jar.mn
@@ -1,14 +1,14 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
-devtools-shim.jar:
-%   content devtools-shim %content/
+devtools-startup.jar:
+%   content devtools-startup %content/
     content/aboutdevtools/aboutdevtools.xhtml  (aboutdevtools/aboutdevtools.xhtml)
     content/aboutdevtools/aboutdevtools.css (aboutdevtools/aboutdevtools.css)
     content/aboutdevtools/aboutdevtools.js (aboutdevtools/aboutdevtools.js)
     content/aboutdevtools/subscribe.css (aboutdevtools/subscribe.css)
     content/aboutdevtools/subscribe.js (aboutdevtools/subscribe.js)
 
     content/aboutdevtools/images/otter.svg (aboutdevtools/images/otter.svg)
 
rename from devtools/shim/locales/en-US/aboutdevtools.dtd
rename to devtools/startup/locales/en-US/aboutdevtools.dtd
rename from devtools/shim/locales/en-US/aboutdevtools.properties
rename to devtools/startup/locales/en-US/aboutdevtools.properties
rename from devtools/shim/locales/en-US/key-shortcuts.properties
rename to devtools/startup/locales/en-US/key-shortcuts.properties
rename from devtools/shim/locales/en-US/startup.properties
rename to devtools/startup/locales/en-US/startup.properties
rename from devtools/shim/locales/jar.mn
rename to devtools/startup/locales/jar.mn
--- a/devtools/shim/locales/jar.mn
+++ b/devtools/startup/locales/jar.mn
@@ -1,8 +1,8 @@
 #filter substitution
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 @AB_CD@.jar:
-%   locale devtools-shim @AB_CD@ %locale/@AB_CD@/devtools/shim/
-    locale/@AB_CD@/devtools/shim/ (%*)
+%   locale devtools-startup @AB_CD@ %locale/@AB_CD@/devtools/startup/
+    locale/@AB_CD@/devtools/startup/ (%*)
rename from devtools/shim/locales/moz.build
rename to devtools/startup/locales/moz.build
rename from devtools/shim/moz.build
rename to devtools/startup/moz.build
rename from devtools/shim/tests/browser/.eslintrc.js
rename to devtools/startup/tests/browser/.eslintrc.js
rename from devtools/shim/tests/browser/browser.ini
rename to devtools/startup/tests/browser/browser.ini
rename from devtools/shim/tests/browser/browser_shim_disable_devtools.js
rename to devtools/startup/tests/browser/browser_shim_disable_devtools.js
rename from devtools/shim/tests/unit/.eslintrc.js
rename to devtools/startup/tests/unit/.eslintrc.js
rename from devtools/shim/tests/unit/test_devtools_shim.js
rename to devtools/startup/tests/unit/test_devtools_shim.js
--- a/devtools/shim/tests/unit/test_devtools_shim.js
+++ b/devtools/startup/tests/unit/test_devtools_shim.js
@@ -1,16 +1,16 @@
 /* -*- js-indent-level: 2; indent-tabs-mode: nil -*- */
 /* Any copyright is dedicated to the Public Domain.
    http://creativecommons.org/publicdomain/zero/1.0/ */
 
 "use strict";
 
 const { DevToolsShim } =
-    ChromeUtils.import("chrome://devtools-shim/content/DevToolsShim.jsm", {});
+    ChromeUtils.import("chrome://devtools-startup/content/DevToolsShim.jsm", {});
 const { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm", {});
 
 // Test the DevToolsShim
 
 /**
  * Create a mocked version of DevTools that records all calls made to methods expected
  * to be called by DevToolsShim.
  */
rename from devtools/shim/tests/unit/xpcshell.ini
rename to devtools/startup/tests/unit/xpcshell.ini
--- a/toolkit/components/extensions/ext-runtime.js
+++ b/toolkit/components/extensions/ext-runtime.js
@@ -7,17 +7,17 @@ ChromeUtils.defineModuleGetter(this, "Ad
                                "resource://gre/modules/AddonManager.jsm");
 ChromeUtils.defineModuleGetter(this, "AddonManagerPrivate",
                                "resource://gre/modules/AddonManager.jsm");
 ChromeUtils.defineModuleGetter(this, "ExtensionParent",
                                "resource://gre/modules/ExtensionParent.jsm");
 ChromeUtils.defineModuleGetter(this, "Services",
                                "resource://gre/modules/Services.jsm");
 ChromeUtils.defineModuleGetter(this, "DevToolsShim",
-                               "chrome://devtools-shim/content/DevToolsShim.jsm");
+                               "chrome://devtools-startup/content/DevToolsShim.jsm");
 
 this.runtime = class extends ExtensionAPI {
   getAPI(context) {
     let {extension} = context;
     return {
       runtime: {
         onStartup: new EventManager(context, "runtime.onStartup", fire => {
           if (context.incognito) {