The Computer Oracle

How to disable Chrome extensions without disabling them across multiple synced devices

--------------------------------------------------
Rise to the top 3% as a developer or hire one of them at Toptal: https://topt.al/25cXVn
--------------------------------------------------

Music by Eric Matyas
https://www.soundimage.org
Track title: Over a Mysterious Island

--

Chapters
00:00 How To Disable Chrome Extensions Without Disabling Them Across Multiple Synced Devices
00:36 Answer 1 Score 94
01:02 Accepted Answer Score 29
03:05 Answer 3 Score 62
04:05 Answer 4 Score 8
04:37 Thank you

--

Full question
https://superuser.com/questions/528014/h...

--

Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...

--

Tags
#googlechromeextensions

#avk47



ANSWER 1

Score 94


May be this is not what you are looking for but you can try this. Open the settings menu within Chrome by clicking on tri-line/wrench icon on right corner. Now open the Advanced sync settings..

enter image description here

enter image description here

Now select the option choose what to sync and then unmark the Extensions option. Now your extension will not sync with other PC's.




ANSWER 2

Score 62


You could install the extension you want as a Local extension.

  1. Find the ID of the Extension you want from chrome://extensions with developer mode enabled.

  2. Navigate to your Google installation directory. Windows: %localappdata%\Google\Chrome\User Data\Default\Extensions\{Extension_ID}\{Version_Number}

  3. Save it somewhere.. User Directory maybe?

  4. Return to chrome://extensions with developer mode enabled and press Load unpacked extension. And navigate to the new copy of the extension.

  5. You should see you have the extension twice now.. Disable the real one.

I say Disable because there is a bad side to this approach and that is you lose automatic updates and you will need to repeat the above steps over and over again every time it updates.

If you are not sure which is the real and your new copy, look under the ID tag for Loaded from: {Path_To_Your_Copy}




ACCEPTED ANSWER

Score 29


Based on the security concern, Chrome doesn't sync any extension which contains an NPAPI plugin.

Source

What is a NPAPI plugin?

Code running in an NPAPI plugin has the full permissions of the current user and is not sandboxed or shielded from malicious input by Google Chrome in any way. You should be especially cautious when processing input from untrusted sources, such as when working with content scripts or XMLHttpRequest.

Source

Theory

If we modify your extension in a way that Chrome recognize the extension using NPAPI, you should be fine.

How to

  1. First, you need a dummy .dll from any NPAPI extension like Screen Capture (by Google). The extension was removed from Google Play store in the meantime because Google decided to drop NPAPI support. But this doesn't matter for our scenario. Fortunately the official Screen Capture wiki still contains the source code. We don't need the complete extension, only the NPAPI .dll screen_capture.dll. Download it directly

  2. Second, go to the extensions folder that should not be synced. In your case Gestures for Chrome.
    ..\profile\Default\Extensions\jpkfjicglakibpenojifdiepckckakgk\1.12.1_0

  3. Modify the manifest.json file and add the NPAPI plugin as described on Stackoverflow or even better on developer.chrome.com

    {
      "name": "My extension",
      ...
      "plugins": [
        { "path": "screen_capture.dll" }
      ],
      ...
    }
    
  4. Modify the background.html file of your extension you don't want to sync, also described on the Stackoverflow answer above.

    <embed type="application/x-my-extension" id="pluginId">
    <script>
      var plugin = document.getElementById("pluginId");
      var result = plugin.myPluginMethod();  // call a method in your plugin
      console.log("my plugin returned: " + result);
    </script>
    
  5. It may be necessary to re-enable NPAPI support in the future via chrome://flags/#enable-npapi

From here you are on your own. I don't know enough about extension coding.
Thats why it's a theory :)




ANSWER 4

Score 8


One thing that works for me is manually killing off the process for the plugin each time Chrome starts using the Chrome Task Manager. This can be achieved as follows:

  • (on Mac) Menu> More Tools> Task Manager
  • (on PC) Right click on the menu bar> Task Manager or Shift + Esc

Then simply click on the extension that you don't want running and click "End Process".

At work I have two computers and I don't want google hangouts popping up on both. The only bad thing is you have to do this every time you start up chrome.