ScriptJäger - NoScripts for Chromium
-
About
A while back I've made an extension for Vivaldi to block scripts & frames and recently it also blocks websocket.
In Opera Presto I used to have an extension called ScriptWeeder, which was an easier to use NoScripts. Anyone else remembers it?
But without this power in Vivaldi I decided to create my own extension, ScriptJäger, following the idea of ScriptWeeder, to be a NoScripts but that is easy to use.
Diferences
My extension was created from zero to be super fast. Even before coding anything I've created a design made for speed and flexibility.
The result is an extension that uses less RAM than the extensions page itself, or half of uBlock Origin. CPU use is nearly null, it reaches at maximum 2% and only when pages are loading.
One of the tricks for such speed is that ScriptJäger does not use blocking lists, everything is done automatically, the algorithm decides if the connection must be allowed or not.
Another trick was benchmarking, sometimes I created different codes for the same procedure and then I checked which would produce the fastest code.
Information
My extension is not a 'true' adblocker, but it works as one since it blocks most of the scripts, frames and websocket connections that load ads and trackers. I always recommend using the hosts file to block trackers, like this one, on the whole system level.
Right now the extension is only available in English and there are some bugs on the preferences page.
(Translations were added in v0.4.0, preferences work prefectly fine in v0.5.0)Under private browsing your changes done with the popup are kept during the session but are not saved, they vanish when you close the last private window.
The extension checks for updates automatically every 24 hours by downloading the manifest.json file from GitHub. If an update exists a notification is shown to let you manually update.
To use the extension I've created a small wiki guide on GitHub with a brief explanation of the buttons and what they do.
Download
I've first released the extension on the Italian and Portuguese forums, if you prefer to discuss it on your mother tongue here are the links: -
@An_dz Looks interesting. Seems like it uses only 5MB RAM less than ublock, but the real deal is the zero cpu usage. Gonna take this for a spin, thanks.
-
@luetage The RAM varies, here I noticed to be generally half of uBlock. Here it's always inside 14~24 MB, while uBlock is generally at 22~43 MB. The comparison was mostly to show that it's lightweight as uBlock is known to be easy on resources.
CPU was how much I noticed with my laptop, which has an old Intel i3 processor. There's no CPU usage outside loading pages as it rarely runs anything in the background. Probably when loading a bunch of pages at the same time it may increase considerably.
-
Sounds interesting - will give it a try when I am back again at home.
-
https://torrentfreak.com/dmca-used-to-remove-ad-server-url-from-easylist-ad-blocklist-170811/
This does not affect ScriptJäger because it does not use blocklists, but if you are using uBlock or another extension that uses them this is more than worth checking.
-
@An_dz Hmm, that's a funny development. But who is stopping me from adding this line myself if it should get removed in the future? If there is a major strike against list providers I imagine people will just host their lists elsewhere, or change their publication methods.
-
@luetage Of course, we will always have what we want, but it does not make this less stupid and annoying. This interfere with all the people who don't know about this, people who just use uBlock because it blocks stuff and is happy with the defaults.
-
It's just me or Scriptjaeger is blocking facebook?
in relaxed mode
static.xx.fbcdn.net
is being blocked, i have to manually whitelist it. -
and another one I had to whitelist
s.chzbgr.com
at http://www.cheezburger.com/
else most of videos even if links from youtube won't display anything. -
@iAN-CooG
For Facebook, is that on facebook.com? Here Facebook only loads scripts from facebook.com and none from fbcdn.net. And it should have allowed it.And for s.chzbgr.com it fails to contain any of the common traits that ScriptJäger checks.
For us humans it's easy to see that it's just a contraction of cheezburger, but not for a machine.
-
@An_dz said in ScriptJäger - NoScripts for Chromium:
@iAN-CooG
For Facebook, is that on facebook.com? Here Facebook only loads scripts from facebook.com and none from fbcdn.net. And it should have allowed it. -
@iAN-CooG Nope, still no fbcdn.net. Must be country specific.
I'll try to debug manually any way.
Edit:
Found the problem, which is pretty obvious, in the default settings fbcnd.net is blacklisted. Facebook used to only use this server when on other sites and not on their own.I'll try to see if they still use that on other sites. If so I'll keep this blacklist but add a whitelist for their own site.
-
I've just released an update, it includes the Facebook whitelist on its own domain but also include an Allow Once button that will allow all scripts temporarily in that tab while you navigate that site without saving any settings. This was a nice request on the Italian forums.
Allow Once will stay on while you don't:
- Close the tab
- Navigate to another site (different domain and/or sub-domain)
- Click the button again to turn it off
-
There's a new version fixing private browsing.
-
If you don't use blocklists, how does the plugin decide if a resource is classified as "ad" or as "non-ad"? Can you shed some light on this?
I am using ScriptBlock as a general and fast-to-switch "forbid all JS" tool in combination with uBlock Origin with quite complex configuration pattern on different websites. This enables me to access only the servers I want and block anything else (default is "block all", so I have to allow manually).
I am aware that this is not as comfortable as getting it full-auto, but I keep control.So seeing how I do it now, how could I see / control / override what your plugin blocks or not blocks?
Thanks for any explanation
-
@morg42 Heuristics.
The extension has 4 blocking options:
- Block All
Blocks all scripts from anywhere - Allow All
Allows all scripts from anywhere - Filtered
Allows scripts from the same main domain - Relaxed
Allows the same scripts from filtered plus some that follow simple rules
More detailed information on how all this works and how the UI works can be found on the wiki.
- Block All
-
I just updated it to improve the UI. The preferences page is better, the popup lets you change the policy of frames directly and clicking on relaxed or filtered will change the checkboxes to show which hosts will be allowed or blocked according to your settings.
And this version comes with translations to 4 (6?) languages: English (UK/US), German, Italian and Portuguese (Brazilian/European).
-
It works really well on most sites I've tested and uses about 2/3 the resources that uBlock Origin uses. However, even on relaxed it is a little too aggressive with some rules. On Gmx, after logging into my email, the interface is entirely blocked from loading. Other sites have comments and videos blocked. An easy fix in the setting but those aren't saved over to the next session
-
@sjudenim Settings are not saving? What does the console say in the preferences page?
Comments in some sites not loading is expected as many sites use third parties for comments, and those third parties are trackers.
As for GMX, can you share the settings needed to get it working?
-
Gmx is a funny one. If I allow all, I get ads on the side.
When I use relaxed, it blocks everything but has only one entry
ui-portal.de
allowing it creates 2 new entries
trackbar.navigator-...gmx.com
home.navigator-bs.gmx.com
Ads still don't show but neither does the email tab, the others (contacts, settings, etc.) do though
Another issue I've come across is not being able to log into Steam. Every time I input the info it just resets. A pop up asking to enter a code should appear instead