win32ss / supermium

Chromium fork for Windows XP/2003 and up
https://win32subsystem.live/supermium/
BSD 3-Clause "New" or "Revised" License
2.42k stars 83 forks source link

[Question] Support for policies #487

Closed nicolaasjan closed 6 months ago

nicolaasjan commented 7 months ago

Does Supermium support policies and if so, in what registry key should these be stored?

I want to apply the policy to extend the Manifest v2 availability till June 2025. 🙂

https://chromeenterprise.google/policies/#ExtensionManifestV2Availability https://developer.chrome.com/docs/extensions/develop/migrate/mv2-deprecation-timeline

docrR commented 7 months ago

As the project readme specifies, Manifest V2 is not slated for removal from Supermium browser. Policies will not be required to continue using it. As the time approaches, any potential interventions to keep V2 enabled will be disclosed. However, this should not require any configuration from the user.

It is important to note that extensions not updated to the new V3 spec will be de-listed from the Webstore. Mirrors for obtaining abandoned V2 extensions will be posted here as the situation develops:

http://win32subsystem.live/supermium/extensions/

Currently, the most functional mirrors are Crx4Chrome and the uBlock Origin repository.

Alex313031 commented 7 months ago

@docrR @win32ss We can just force it to true for all instances/profiles, by setting this integer to 2 instead of 0.

https://source.chromium.org/chromium/chromium/src/+/refs/tags/123.0.6312.124:extensions/browser/extension_prefs.cc;l=2241

I will be doing this in all my Thorium/Chromium/Electron builds, starting with M123, because f**k Google and their anti-ad-blocking and anti-privacy practices!

It would have been fine if they added MV3 support, but kept MV2 support (like Firefox is doing), but no, thats just too much for them. 💢

When the time finally comes, someone (or me or win32ss since he stated that is one of the goals on the Supermium website), will have to come up with a reversion patch to re-add all the code that they'll remove related to MV2. Will probably also have to re-add some code related to Chrome Apps.

docrR commented 7 months ago

@docrR @win32ss We can just force it to true for all instances/profiles, by setting this integer to 2 instead of 0.

https://source.chromium.org/chromium/chromium/src/+/refs/tags/123.0.6312.124:extensions/browser/extension_prefs.cc;l=2241

I will be doing this in all my Thorium/Chromium/Electron builds, starting with M123, because f**k Google and their anti-ad-blocking and anti-privacy practices!

It would have been fine if they added MV3 support, but kept MV2 support (like Firefox is doing), but no, thats just too much for them. 💢

When the time finally comes, someone (or me or win32ss since he stated that is one of the goals on the Supermium website), will have to come up with a reversion patch to re-add all the code that they'll remove related to MV2. Will probably also have to re-add some code related to Chrome Apps.

Another point not yet touched on is what to do with V2 extensions migrating to the new manifest, particularly content blockers. For example, manual installation of CRX files is quite easy, but Chrome auto updates extensions, and I presume those extensions will try to jump to their V3 counterpart once offered by the Webstore. So some sort of mechanism for disabling extension updates will also be needed.

nicolaasjan commented 7 months ago

But what about other policies that I want to apply. Where to write them to the registry? (ExtensionManifestV2Availability was just an example 😉)

nicolaasjan commented 7 months ago

Another point not yet touched on is what to do with V2 extensions migrating to the new manifest, particularly content blockers. For example, manual installation of CRX files is quite easy, but Chrome auto updates extensions, and I presume those extensions will try to jump to their V3 counterpart once offered by the Webstore. So some sort of mechanism for disabling extension updates will also be needed.

The devs of uBO already stated that they will not auto-update the MV2 extension to MV3 (uBlock Origin Lite). 🙂

matu6968 commented 7 months ago

As the project readme specifies, Manifest V2 is not slated for removal from Supermium browser. Policies will not be required to continue using it. As the time approaches, any potential interventions to keep V2 enabled will be disclosed. However, this should not require any configuration from the user.

It is important to note that extensions not updated to the new V3 spec will be de-listed from the Webstore. Mirrors for obtaining abandoned V2 extensions will be posted here as the situation develops:

http://win32subsystem.live/supermium/extensions/

Currently, the most functional mirrors are Crx4Chrome and the uBlock Origin repository.

Apperantely the site is blocked by the ISP security policies in my school as suspicious, which is odd. image

win32ss commented 7 months ago

It seems that Chromium policies can be applied in the registry using a key named Software\Policies\Supermium\*, based on some other documentation stating that a standard Chromium uses "Chromium" in place of "Google\Chrome".

docrR commented 7 months ago

Another point not yet touched on is what to do with V2 extensions migrating to the new manifest, particularly content blockers. For example, manual installation of CRX files is quite easy, but Chrome auto updates extensions, and I presume those extensions will try to jump to their V3 counterpart once offered by the Webstore. So some sort of mechanism for disabling extension updates will also be needed.

The devs of uBO already stated that they will not auto-update the MV2 extension to MV3 (uBlock Origin Lite). 🙂

That's great news! Do you have a source to back this by chance? The greatest advantage over V2 is the ability for filters to be updated in a static client version, so the last V2 version of the extension should carry us forward. A fork would be preferable, of course.

docrR commented 7 months ago

As the project readme specifies, Manifest V2 is not slated for removal from Supermium browser. Policies will not be required to continue using it. As the time approaches, any potential interventions to keep V2 enabled will be disclosed. However, this should not require any configuration from the user. It is important to note that extensions not updated to the new V3 spec will be de-listed from the Webstore. Mirrors for obtaining abandoned V2 extensions will be posted here as the situation develops: http://win32subsystem.live/supermium/extensions/ Currently, the most functional mirrors are Crx4Chrome and the uBlock Origin repository.

Apperantely the site is blocked by the ISP security policies in my school as suspicious, which is odd. image

School firewalls are always overzealous with their filtering, so that is of little surprise. I had to use proxies in middle school just to access YouTube. We still had XP boxes in those days, teachers on 7.

nicolaasjan commented 7 months ago

Another point not yet touched on is what to do with V2 extensions migrating to the new manifest, particularly content blockers. For example, manual installation of CRX files is quite easy, but Chrome auto updates extensions, and I presume those extensions will try to jump to their V3 counterpart once offered by the Webstore. So some sort of mechanism for disabling extension updates will also be needed.

The devs of uBO already stated that they will not auto-update the MV2 extension to MV3 (uBlock Origin Lite). 🙂

That's great news! Do you have a source to back this by chance? The greatest advantage over V2 is the ability for filters to be updated in a static client version, so the last V2 version of the extension should carry us forward. A fork would be preferable, of course.

https://old.reddit.com/r/uBlockOrigin/comments/1bp5rj2/chrome_automatic_update_from_ubo_to_ubo_lite/

Top comment from uBO dev DrTomDice. 🙂

nicolaasjan commented 7 months ago

It seems that Chromium policies can be applied in the registry using a key named Software\Policies\Supermium*, based on some other documentation stating that a standard Chromium uses "Chromium" in place of "Google\Chrome".

That's what I tried with this reg file:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Supermium]
"ExtensionManifestV2Availability"=dword:00000002

But it didn't show in chrome://policy:

screenshot_20240416-2

eXPc023 commented 7 months ago

Well, I applied "UserDataDir" policy to test and it worked. I can now make Supermium as default since it keeps using my profile when I launch the browser via a file.

nicolaasjan commented 6 months ago

Found it. 😀️ It's: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Chromium