catacombing / kumo

A Wayland Mobile Browser
GNU General Public License v3.0
19 stars 2 forks source link

Improve Adblock filter #36

Closed chrisduerr closed 3 months ago

chrisduerr commented 5 months ago

The existing implementation uses the content filter list provided by AdBlockPlus: https://easylist-downloads.adblockplus.org/easylist_content_blocker.json

While this is a good baseline, it leaves a lot of room for improvement. The easiest solution would likely be to just convert a bunch of other filter lists to the expected format. There's already some tools out there to do just that:

However, neither of these tools seem particularly well supported, so it might be easier to just write a small Rust library for converting filter lists automatically. That way it would also be possible to offer this as a feature under a custom browser page like about:filters.

A good source for additional filters could be the ublock assets repository: https://github.com/uBlockOrigin/uAssets

chrisduerr commented 3 months ago

I've written a simple project for uBlock to content blocker conversion: https://github.com/chrisduerr/ub2cb

However after thorough testing it appears that just adding a bunch of auto-generated rules does not significantly improve content blocking behavior. However it does appear that WebKit's content blocker does significantly struggle with performance when adding all the content blockers available to uBlock, so pages take seconds to load.

Ultimately I don't think there's anything to do here. WebKit is just bad and uBlock is still one of the strongest arguments for never using anything other than Firefox.