Commit ca6e9a78 authored by Kathleen Brade's avatar Kathleen Brade Committed by Matthew Finkel
Browse files

Bug 28044: Integrate Tor Launcher into tor-browser

Build and package Tor Launcher as part of the browser (similar to
how pdfjs is handled).

If a Tor Launcher extension is present in the user's profile, it is
removed.
parent 4a8b9ab1
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -5,3 +5,6 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

DIRS += ["doh-rollout", "formautofill", "screenshots", "webcompat", "report-site-issue"]

if not CONFIG["TOR_BROWSER_DISABLE_TOR_LAUNCHER"]:
    DIRS += ["tor-launcher"]
+5 −0
Original line number Diff line number Diff line
@@ -252,6 +252,11 @@
@RESPATH@/browser/chrome/browser.manifest
@RESPATH@/chrome/pdfjs.manifest
@RESPATH@/chrome/pdfjs/*
#ifndef TOR_BROWSER_DISABLE_TOR_LAUNCHER
@RESPATH@/browser/chrome/torlauncher.manifest
@RESPATH@/browser/chrome/torlauncher/*
@RESPATH@/browser/@PREF_DIR@/torlauncher-prefs.js
#endif
@RESPATH@/chrome/toolkit@JAREXT@
@RESPATH@/chrome/toolkit.manifest
@RESPATH@/chrome/recording.manifest
+10 −0
Original line number Diff line number Diff line
@@ -1479,6 +1479,16 @@ var XPIStates = {
      for (let [id, file] of loc.readAddons()) {
        knownIds.delete(id);

        // Since it is now part of the browser, uninstall the Tor Launcher
        // extension. This will remove the Tor Launcher .xpi from user
        // profiles on macOS.
        if (id === "tor-launcher@torproject.org") {
          logger.debug("Uninstalling the Tor Launcher extension.");
          loc.installer.uninstallAddon(id);
          changed = true;
          continue;
        }

        let xpiState = loc.get(id);
        if (!xpiState) {
          // If the location is not supported for sideloading, skip new