Important
This requires Advanced Mode to be enabled
Tip
If you just want to read text, I recommend a TUI web-browser such as Lynx or w3m.
Not loading a JIT-interpreter is much more efficient than not using it, same goes for audio-visual decoding+rendering.
If you're on Android, Termux has your back! (pkg i lynx)
gluegle (and other domains) only forces you to run JS if the browser supports it.
Tip: Don't just 📋CP. Remember to search commented-out rules and filters. They are optional, but can enhance the experience on specific devices and scenarios.
You can easily find them using these regexes (*.ubo & *.abp respectively):
^#\S.+^!\S.+Typically, cosmetic-filtering is only necessary if scripting is enabled, that's why you'll see some filters in *.abp being disabled in *.ubo by default, as I enable CF+JS manually.
AKA "User Types".
All file-names that have a stem (basename without extension) in common are considered to belong to the same profile. When you apply a profile to uBO, you are expected to use all files from said profile.
To check if a list of files are part of the same profile, use the common_stem fn:
const get_stem = (path: string) => {
// `-1` is implicitly offset to `0`,
// this is intentional.
const basename = path.substring(path.lastIndexOf('/') + 1)
const dot_i = basename.lastIndexOf('.')
return dot_i == -1 ? basename : basename.substring(0, dot_i)
}
const common_stem = (paths: ReadonlySet<string>) =>
[...paths].every((path, _, path_ls) =>
get_stem(path_ls[0]) == get_stem(path)
)These fns are intended to be "normative", therefore, any bugs in them should be considered "specification mistakes" rather than "implementation bugs". I am 100% confident that both fns are bug-free!
For privileged (Administrator) accounts. These are the only users with (partial) root/System access (AKA "sudoers"), so they need ABSOLUTELY MAXIMUM SECURITY at the cost of convenience. Since admins don't need to browse many websites, the strict-blocking doesn't affect them much.
Tip
Disable JIT-compilation:
Any human user, usually my family or friends. They shouldn't be using "Medium-Mode", because literally any site they visit could break, and that's an inconvenience.
Most rules are "just-in-case", for the sake of future-proofing, and lack of information about the behavior of sites.
Tip
Install Libredirect
My own personal rule-set. Designed for my needs, desires, and convictions.
uBO doesn't support comments on dyn-rules.
uBO auto-removes syntactically-invalid lines, and # is unlikely to become valid, so this hack works... as long as each comment is placed on its own line (side-comments will turn the whole line into a comment), so be careful