brave-browser: regression: external extensions are forcefully disabled on Linux since 0.68.131

Description

On Linux it is possible to install extensions using a preferences json file as per docs.

This is used for distributing extensions as distro packages.

This is not working anymore in Brave 0.68.131, I do see the extension in brave://extensions but it gets disabled on browser startup with the following popup:

image

This works correctly in previous versions (e.g. Brave 0.67.125) and in latest Chromium (76.0.3809.100).

Steps to Reproduce

On Linux:

  1. Put for example the following file in /usr/lib/browserpass-chromium/browserpass-chromium-3.1.1.crx
  2. Create file /usr/share/chromium/extensions/pjmbgaakjkbhpopmakjoedenlfdmcdgm.json with the following contents:
{
    "external_crx": "/usr/lib/browserpass-chromium/browserpass-chromium-3.1.1.crx",
    "external_version": "3.1.1"
}
  1. Launch Brave

Actual result:

Extension is present on brave://extensions but is disabled on startup

Expected result:

Extension is not disabled

Reproduces how often:

Easily reproduced

Brave version (brave://version info)

Brave | 0.68.131 Chromium: 76.0.3809.100 (Official Build) unknown (64-bit)
Revision | ed9d447d30203dc5069e540f05079e493fc1c132-refs/branch-heads/3809@{#990}
OS | Arch Linux

Compiled myself using the following instructions.

Version/Channel Information:

  • Can you reproduce this issue with the current release? Yes
  • Can you reproduce this issue with the beta channel? Haven’t tried
  • Can you reproduce this issue with the dev channel? Haven’t tried
  • Can you reproduce this issue with the nightly channel? Haven’t tried

Other Additional Information:

  • Does the issue resolve itself when disabling Brave Shields? N/A
  • Does the issue resolve itself when disabling Brave Rewards? N/A
  • Is the issue reproducible on the latest version of Chrome? Not in latest Chromium

Miscellaneous Information:

I’ve seen https://github.com/brave/brave-browser/issues/2457 and https://github.com/brave/brave-browser/issues/5063 but I don’t think it’s duplicate, because this clearly worked in the previous release version of Brave 0.67.125

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Reactions: 6
  • Comments: 24 (5 by maintainers)

Most upvoted comments

@rebron @bsclifton Could someone be assigned to this? Brave is basically useless due to this regression

This is a terrible design decision and deal breaker for using Brave. It damages trust in the marketing on brave.com:

It begins with giving you back power. Take back control with Brave.

Where is the power and control?

This should officially be fixed now with https://github.com/brave/brave-core/pull/8392 😄

I duplicated this issue (didn’t find on initial search) by creating https://github.com/brave/brave-browser/issues/15024. I’ll link to here from that issue and I captured proper test steps in the pull request

The fix for this issue will be in the next Nightly build (1.25.x) and it will propagate through the channels (Beta in 3 weeks, then Release 3 weeks after that). It should hit Release channel on 25 May (2021)

Thanks for your patience folks! We had an unintentional deviation from Chrome/Chromium and I put tests in place to make sure this doesn’t regress

@kakolisgay A bit late, but please see my comment here:

https://github.com/brave/brave-browser/issues/2457#issuecomment-447541756

From the Brave Website:

"If you see a message saying “Extensions Disabled,” it’s because Brave has turned off one or more of your extensions to keep your data safe while you’re browsing the Internet.

The extensions that Brave turned off either didn’t come from the Chrome or Brave Web Store or were determined unsafe

Extensions that have not been published on the Chrome or Brave Web Store are grayed out and you won’t be able to turn them back on."

This behavior seems intentional to me, maybe @fmarier can provide more information.

If this is something that brave has deliberately done I’m fine completely dropping it in favour of other alternative browsers

If someone is able to identify a deviation from Chrome which is causing this to break in Brave but not in Chrome, I would not assume that it is intentional. It is more likely to be accidental.

@rushilsrivastava Source? If this is something that brave has deliberately done I’m fine completely dropping it in favour of other alternative browsers

No, I already have that enabled

Also getting this problem. Effects several extensions I’ve been working on, due to this I’m effectively locked out from developing them. This issue effects all non-store extensions, even ones I’ve signed and published myself image image

@fmarier The issue stems from ExtensionService::CheckManagementPolicy() and InstallVerifier::MustRemainDisabled which eventually get angered at something the chromium kernel has found wrong with a system. The same issue has been reported to happen on old versions of chrome so I assume brave has broken or changed something that was preventing this from happening in a normal installation

Seems whatever setting is causing this behaviour is not profile-specific. I’ll be looking through chromiums database files and I’ll post back if I find whatever’s causing this image