Hostsblock Versions Save

an ad- and malware-blocking script for Linux

v0.999.8.1

5 years ago

Version 0.999.8.1 (Alpha 8.1)

  • Fixed typos in various docs (Thanks to @glitsj16)
  • Made installation more distro-neutral (Thanks to @glitsj16)

v0.999.8

5 years ago

See https://github.com/gaenserich/hostsblock/commits/master for a complete list of updates

Systemd Job Improvements

  • Systemd service now heavily hardened and sandboxed for enhanced security
  • Fixed simultaneous download feature so that it actually does what it is supposed to
  • Added processing support for source blocklists that just list domain names to be blocked, e.g. ads.google.com instead of 0.0.0.0 ads.google.com
  • Added support to read directly from zip and 7z files containing a single file without decompressing to a cache
  • Optimized filters used to process domains with improved throughput
  • If run with dash instead of bash, hostsblock has significant performance improvements
  • Removed annotation feature to reduce dependencies and overall processing demands
  • Vastly expanded list of potential blocklists (see block.urls)

POSIX-Compatibility Improvements

  • Supports POSIX shells (dash, ash, zsh) instead of just bash
  • Removed GNU-specific utilities, relies only on POSIX options
  • Should now run on *BSD and macOS (and perhaps even Android and iOS!) if proper POSIX environments are installed. UNTESTED

UrlCheck Mode Improvements

Upgrading to 0.999.8

For existing hostsblock users, please note the following changes in version 0.999.8:

Changes in hostsblock.conf

Due to the shift to POSIX-shell compatibility, the list of blocklists to be downloaded cannot be held in hostsblock.conf via the blockl ists= parameter. Instead, this parameter contains the path to a file that contains the list of urls, e.g. /var/lib/hostsblock/block.urls .

The new block.urls file is simply a newline separated list of urls with no quotations. Whitespace and text after # are ignored. An examp le block.urls file could look like this:

http://hosts-file.net/download/hosts.zip # General blocking meta-list
http://winhelp2002.mvps.org/hosts.zip

http://hostsfile.mine.nu/Hosts.zip

See the example block.urls in the /var/lib/hostsblock/config.examples directory for details.

No more postprocessing within script

Due to enhanced security and sandboxing, hostsblock no longer handles postprocessing on its own. Instead, users should use other systemd c apabilities to replace the postprocess() {} functionality.

Hostsblock comes with systemd service files that replicate the most common scenarios. See the directions above for instructions on how to enable them.

Changes with sudo

sudo is no longer as widely used as before. The man systemd service no longer requires it. You only need it if you want to use the hostsblock -c URL (urlcheck) utility. See the above directions for details.

Caveats

  • The hostsblock-urlcheck symlink is depreciated. Please use hostsblock -c URL instead.
  • In UrlCheck mode, large hosts files will generate large temporary cache files that will eat up a lot of temporary storage. If you have a machine with little RAM (<6GB) and want to block a lot of domains, consider changing your $tmpdir to an HDD- or SSD-backed filesystem instead of the default tmpfs under /tmp.
  • UrlCheck mode will not be able to provide information on which blocklist blocked which domains anymore (annotation feature removed)
  • Hostsblock uses 0.0.0.0 as default redirection IP address instead of 127.0.0.1. 0.0.0.0 theoretically offers better performance without the need of a pseudo-server.