Reputation: 21
I made and packed a chrome extension into a .crx file and dragged the .crx into chrome://extensions
to install it.
The extension worked fine, except when I clicked the 'Allow in Incognito' checkbox the extension turned grey and could not be re-enabled by clicking the 'enable' checkbox.
The only way to get it working again is by reinstalling the extension. Even when I remove the 'Read your browsing history' permission (i.e. commenting out "tabs" under permissions in the manifest) it still becomes disabled when I try to allow incognito.
Here are what my permissions look like:
Here is what the disabled extension looks like:
Upvotes: 2
Views: 925
Reputation: 77601
The culprit seems to be, indeed, "Not from Chrome Web Store". While developers have the option of installing self-packed CRX extensions for some testing, it's severely restricted (as it is a possible malware vector). This is a conscious decision by Google.
Seems like elevating privileges of self-packed CRX-installed extensions cause a protection mechanism to kick in and disable them. The fact that it's permanently disabled provides evidence for that theory. The only authoritative answer would be the source code, though (and it's probably not part of the open Chromium code).
If you're writing an extension for yourself only, you can load it as unpacked (and live with the warning on every Chrome restart).
If you want to share your extension with others, your only recourse it to publish it in the Web Store or convince them to use it unpacked.
Upvotes: 1