A minimalist hosts-based tool for managing block lists and ad-blocking.
This project uses the excellent and regularly updated Unified Hosts lists from Steven Black.
Using Cargo (Rust)
shell
cargo install block-list
More options will come in future!
Just use 'hosts' as the desired list if you only want ad-blocking.
shell
sudo block-list /path/to/hosts your-desired-list
Basic usage:
shell
sudo block-list /etc/hosts social
Pipe in a custom list:
shell
cat someFile.txt | sudo block-list /etc/hosts
OR
shell
cat someFile.txt | sudo block-list /etc/hosts social
Automatically update Block List at 10pm:
Open the root user's crontab file
shell
sudo crontab -e
Then add the following line
txt
0 22 * * * block-list /etc/hosts hosts
Use Block List to re-route a url to a different address:
Find the address using dig
shell
dig duckduckgo.com
Coppy the IP address listed in 'Answer Section' to a file
```txt
52.142.124.215 www.google.com 52.142.124.215 google.com ```
Pipe in the custom list to Block List
shell
cat someFile.txt | sudo block-list /etc/hosts
If successful, this command will append a new list or replace the current list at the tail of the supplied hosts file, eg:
shell
Block List updated! 🔒
```txt
127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost
1.2.3.4 somehost
...
0.0.0.0 some.custom.address.net 0.0.0.0 another.custom.address.xyz
0.0.0.0 some.malware.address.com 0.0.0.0 another.blocked.address.xxx ```