Skip to content

An All-In-One AdGuard Home blocklist and allowlist generated locally on your PC using Python.

License

Notifications You must be signed in to change notification settings

hl2guide/AdGuard-Home-AIO-List

Repository files navigation

AdGuard-Home-AIO-List

An All-In-One AdGuard Home blocklist and allowlist generated locally on your PC using Python.

Version: 0.3

Updated (AEST): 2024-07-15 05:38:23PM

✨ What's New in 0.3

  • added fix to skip blocking subdomains
  • added color text output using the Python package named rich
  • added more lists
  • fixed datetime now to be local time
  • improved output

✨ What's New in 0.2

  • Added new must-have requirement of a Python package named requests
  • Added new lists
  • More cleanup of output rules

🔬 Repo Status

  • Written in Python it now has been updated for 2024 and have new lists added
  • Tested and working on Python for Windows Python 3.12.4 or later
  • Currently around 5.2 million unique rules are included
  • The blocklist will make AdGuard Home's RAM usage increase to around 775MB
  • Do not use these lists on older hardware with fewer than 4 CPU cores or IOT devices
  • Be prepared to make your own whitelist additions within AdGuard Home, depending on your needs
  • I attempted and tested using GitHub Codespaces and github LFS but moved away from both due to annoying filesize restrictions

⛔ Included Blocklists

⚒️ Setup

  1. Install Python on your device
  2. Install two required Python packages by running:
python -m pip install requests
python -m pip install rich
  • The python script create_list.py can be used to generate aio_blocklist_final.txt on a local machine that has Python
  • I have tested it on Windows 11, however it should work fine on other OSs too (as long as you have Python installed)
  1. Download a ZIP of this repo and extract it to a suitable known folder
  2. Create a new empty folder downloaded_lists within the AdGuard-Home-AIO-List-main folder
  3. Edit create_list.py in a text editor and change line 20 to set CURRENTWORKINGDIRECTORY to a path where AdGuard-Home-AIO-List-main exists (save change)
  4. Run the script create_list.py using Python
  5. Once the script finishes add the full path of aio_blocklist_final.txt to AdGuard Home's DNS blocklists as a custom list

Usage

To regenerate the list simply run create_list.py when desired (as a scheduled task etc)

📦 Archived Old Info

The below is old info that shouldn't be needed anymore.

⭐ How to Add Blocklists to AdGuard Home

  • If you have a PC with at least 8GB of RAM adding these lists will be very useful
  • After adding and updating these lists RAM usage for AdGuard Home will go up to around 229MB
  1. Log into AdGuard Home
  2. Using the top menu click Filters and then DNS blocklists
  3. Click the green Add blocklist button
  4. Click the Choose from the list button
  5. Checkmark the following General blocklists:
    • 1Hosts (List)
    • AdGuard DNS filter
    • AdAway Default Blocklist
    • Dan Pollock's List
    • OISD Blocklist Small
    • Peter Lowe's Blocklist
    • Steven Black's List
  6. Checkmark the following Other blocklists:
    • Dandelion Sprout's Anti Push Notifications
    • WindowsSpyBlocker
  7. Checkmark all of the Security blocklists
  8. Click the green Save button

⛔ How to Block Services

  1. Log into AdGuard Home
  2. Using the top menu click Filters and then Blocked services
  3. Click on the Block all button
  4. Unblock (toggle off) services you actually use
  5. Click the green Save button once done