Adbyss v0.4.4
License: WTFPL
Released: 2021-09-09

Adbyss

Adbyss is a DNS blocklist manager for x86-64 Linux machines.

While ad-blocking browser extensions are extremely useful, they only block unwatned content in the browser, and require read/write access to every page you visit, which adds overhead and potential security/privacy issues.

Adbyss instead writes "blackhole" records directly to your system's /etc/hosts file, preventing all spammy connection attempts system-wide. As this is just a text file, no special runtime scripts are required, and there is very little overhead.

Installation

Debian and Ubuntu users can grab the pre-built .deb package from the release page.

This application is written in Rust and can alternatively be built from source using Cargo:

# Clone the source.
git clone https://github.com/Blobfolio/adbyss.git

# Go to it.
cd adbyss

# Build as usual. Specify additional flags as desired.
cargo build \
    --bin adbyss \
    --release

(This should work under other 64-bit Unix environments too, like MacOS.)

Usage

It's easy.

Settings are stored in /etc/adbyss.yaml. Edit those as needed.

Otherwise, just run sudo adbyss [FLAGS] [OPTIONS].

The following flags are available:

    --disable       Remove *all* Adbyss entries from the hostfile.
-h, --help          Prints help information.
-q, --quiet         Do *not* summarize changes after write.
    --show          Print a sorted blackholable hosts list to STDOUT, one per
                    line.
    --stdout        Print the would-be hostfile to STDOUT instead of writing
                    it to disk.
-V, --version       Prints version information.
-y, --yes           Non-interactive mode; answer "yes" to all prompts.

And the following option is available:

-c, --config <path> Use this configuration instead of /etc/adbyss.yaml.

After running Adbyss for the first time, you might find some web sites are no longer working as expected. Most likely you're blocking an evil dependency the web site thinks it needs. No worries, just open your browser's Network Dev Tool window and reload the page. Make note of any failing domain(s), and update the /etc/adbyss.yaml configuration accordingly.

Restart your browser and/or computer and everything should be peachy again.

If ads persist in displaying even after running Adbyss and rebooting, double-check the browser isn't bypassing your computer's local DNS records. (Firefox's DNS-Over-HTTPS feature sometimes does this.) Tweak your settings as needed and you should be back in business.

It is important to remember that scammers and capitalists birth new schemes all the time. It is a good idea to rerun Adbyss weekly or so to ensure your hosts list contains the latest updates.

Removal

To remove all Adbyss rules from your hosts file, either run adbyss --disable, or open the hostfile in a text editor, find the big-obvious # ADBYSS # marker, and delete it and all subsequent lines.

Save, reboot, and you're back to normal.