• Stars
    star
    1,033
  • Rank 44,608 (Top 0.9 %)
  • Language
    Python
  • License
    The Unlicense
  • Created almost 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Completely block Google and its services

No G

Definition of GAFAM

The GAFAM is an acronym used to describe the five multinational technology companies Google, Amazon, Facebook, Apple and Microsoft, taking the first letters of all these companies. The GAFAM are sometimes referred to as the Big Five due to them being the five most profilific companies in the world. Although in some sectors some of the five companies may be in direct competition, they offer different products or services overall while presenting some common characteristics that deserve to bring them together under the same acronym: by their size, they are particularly influential on the American and European Internet both economically and politically and socially and are regularly the subject of criticism or prosecution on tax matters, abuses of dominant positions and the non-respect of Internet users' privacy.

Purge Google from your network!

Protect yourself from Google's surveillance by using this blocklist! Feel free to criticize our blocklist to make it better and better. Suggestions are welcome!

How to use it on my Pi-hole?

Simply go into to your blocklist settings to add:

https://raw.githubusercontent.com/nickspaargaren/no-google/master/pihole-google.txt

Or a selection of the domains :

https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/youtubeparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/shortlinksparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/proxiesparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/productsparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/mailparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/generalparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/fontsparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/firebaseparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/doubleclickparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/domainsparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/dnsparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/androidparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/analyticsparsed
https://raw.githubusercontent.com/nickspaargaren/no-google/master/categories/fiberparsed

(Combining those with the main whole filter is useless and not recommended, however, feel free to combine the different smaller filters)

⚠️ Important regex filters not included in blocklist

.*[`^.`]l.google.com$

For example tygbrbooefk4.cache.l.google.com

.*[`^.`]googlevideo.com$

For example r14---sn-vgqs7ned.googlevideo.com

Youtube Advertisements Regex

^r[0123456789]+((-{3})|(.))sn-.{8}.googlevideo.com$

NOTE: Youtube advertisements are pretty difficult to block trough DNS, as they mainly use a couple of domains for delivering advertisements, but they may also use those same domains for delivering other types of contents that you might not want to block.

Regex filters

(..|^)((think)?with)?google($|((adservices|apis|mail|static|syndication|tagmanager|tagservices|usercontent|zip|-analytics)($|..+))) (..|^)g(gpht|mail|static|v(t[12])?)($|..+) (..|^)chrom(e(experiments)?|ium)($|..+) (..|^)ampproject($|..+) (..|^)doubleclick($|..+) (..|^)firebaseio($|..+) (..|^)googlevideo($|..+) (..|^)waze($|..+) (.*.|^)y(outube|timg)($|..+)

You can also easily use the modified pihole regex installer script by @mmoti by executing this terminal command from your raspberry Pi Pi-hole server.

curl -sSl https://raw.githubusercontent.com/nickspaargaren/no-google/master/install.py | sudo python3

and then, executing it. It should add all of the above regex automatically.

FAQ

Can I use it with NextDNS?

Yep ! It is available in their selection of domains list, labeled as ¨No Google¨. NextDNS is using the wildcard-domains format, so you will have to manually whitelist some specific services, as it will block everything Google related.

Can I use it with my other ads/domains blocker program ?

Surely! If it does indeed support the host or domains type of filters. Import it manually, or click on this link if you are using a web browser extension.

Can I use it with anything other than Pi-hole?

Sure thing, the No Google list is declined into multiples formats types, as an host format, domains/urls format and a wildcard format.

Hum, do you got any mirrors of the list ?

Yes indeed, We have a GitLab host mirror of the repo available at this address : https://framagit.org/PoorPocketsMcNewHold/no-google Note that the main filter is being worked here, so, updates and modifications on the Gitlab source will have to be updated manually. Otherwise, if you do prefer to use Gitlab, feel free to use it, and even contribute to our list there instead!

The converter program

Data conversion

The program convert.py will read pihole-google.txt as input file and convert its content into different output formats. It can be invoked like

python3 convert.py pihole

In order to produce all different output formats, run

python3 convert.py all

JSON output

It also can output the data in JSON format:

python3 convert.py json

With this output, and the jq program, the data can be filtered and manipulated easily. In the following section, you can find corresponding examples.

# Produce list of all category names
python3 convert.py json | jq -r 'keys | .[]'

# Produce list of domains for the `Doubleclick` category only
python3 convert.py json | jq -r '.Doubleclick | .[]'

# Produce list of domains for the `Analytics` and `Doubleclick` categories
python3 convert.py json | jq -r '(.Analytics,.Doubleclick) | .[]'

Can I block the other letters of GAFAM ?

Of course, here’s some filterlists that should help you accomplish that.

Apple : https://github.com/c-edw/ios-telemetry, https://github.com/1r2/iosparanoid or https://raw.githubusercontent.com/hagezi/dns-blocklists/main/hosts/native.apple.txt

Facebook : https://raw.githubusercontent.com/jmdugan/blocklists/master/corporations/facebook/all, https://raw.githubusercontent.com/anudeepND/blacklist/master/facebook.txt or https://raw.githubusercontent.com/lightswitch05/hosts/master/docs/lists/facebook-extended.txt

Amazon : https://github.com/nickspaargaren/no-amazon

Microsoft : https://raw.githubusercontent.com/jmdugan/blocklists/master/corporations/microsoft/all

https://gafam.info