Ublock Origin Lite is the version of Ublock Origin tailored to work within Manifest V3, so it’s interesting to see it come to firefox where it’s not absolutely needed (as I understand it).

  • Firefox: Download the uBOLite_1.0.[…].firefox.mv3.xpi package below, navigate to about:debugging#/runtime/this-firefox in your browser, click “Load Temporary Add-on…” and pick the downloaded xpi file.
    • At the moment it is not possible to sign an extension for Firefox Nightly because AMO refuses to sign when minimum version is 113a1. As soon as AMO allows, a signed version of the extension will be published.
    • See commit message to find out what currently does not work in Firefox. Do not open issues about this.

And here is the commit detailing what’s not working:

What does not work at the time of commit:

Cosmetic filtering does not work:

The content scripts responsible for cosmetic filtering fail when trying to inject the stylesheets through document.adoptedStyleSheets, with the following error message:

XrayWrapper denied access to property Symbol.iterator (reason: object is not safely Xrayable). See https://developer.mozilla.org/en-US/docs/Xray_vision for more information. … css-declarative.js:106:8

A possible solution is to inject those content scripts in the MAIN world. However Firefox scripting API does not support MAIN world injection at the moment.

Scriptlet-filtering does not work:

Because scriptlet code needs to be injected in the MAIN world, and this is currently not supported by Firefox’s scripting API, see https://bugzilla.mozilla.org/show_bug.cgi?id=1736575

There is no count badge on the toolbar icon in Firefox, as it currently does not support the DNR.setExtensionActionOptions method.

Other than the above issues, it does appear uBO is blocking properly with no error reported in the dev console.

The adoptedStyleSheets issue though is worrisome, as the cosmetic filtering content scripts were designed with ISOLATED world injection in mind. Being forced to inject in MAIN world (when available) make things a bit more complicated as uBO has to ensure it’s global variables do not leak into the page.

  • mosiacmango
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago

    Exactly. Its a standard heavily pushed by Google, an advertising company, to limit the ability of adblocking by pitching it as a security/safety enchantment.

    Its part of googles and others long term plans to kill adblocking. Standing up chrome, taking 90% market share alone, and now finally all mainstream browsers except Firefox are chromealikes, all running chromes backend.

    With this shift, Google and others can push unblockable ads to almost every browser in the world. Changing browsers or shifting to network based filtering at a router/firewall/DNS level will be the only remaining option.