use adguardhome, remove script
This commit is contained in:
		
							parent
							
								
									567c869186
								
							
						
					
					
						commit
						63d50a89d8
					
				| @ -4,15 +4,18 @@ | |||||||
|   services = { |   services = { | ||||||
|     dnsmasq = { |     dnsmasq = { | ||||||
|       enable      = true; |       enable      = true; | ||||||
|       servers     = ["127.0.0.1#5353"]; |       servers     = ["127.0.0.1#5300"]; | ||||||
|       extraConfig = '' |       extraConfig = '' | ||||||
|         localise-queries |         localise-queries | ||||||
|         min-cache-ttl=120 |         min-cache-ttl=120 | ||||||
|         max-cache-ttl=2400 |         max-cache-ttl=2400 | ||||||
|         addn-hosts=/etc/adblock_hosts |  | ||||||
|       ''; |       ''; | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|  |     adguardhome = { | ||||||
|  |       enable= true; | ||||||
|  |       port = 3031; | ||||||
|  |     }; | ||||||
|     dnscrypt-proxy2 = { |     dnscrypt-proxy2 = { | ||||||
|       enable = true; |       enable = true; | ||||||
|       settings = { |       settings = { | ||||||
| @ -34,73 +37,4 @@ | |||||||
|       }; |       }; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
| 
 |  | ||||||
|   systemd = { |  | ||||||
|     timers.update-adblock = { |  | ||||||
|       wantedBy = [ "timers.target" ]; |  | ||||||
|       partOf = [ "update-adblock.service" ]; |  | ||||||
|       timerConfig.OnCalendar = "daily"; |  | ||||||
|     }; |  | ||||||
| 
 |  | ||||||
|     services.update-adblock = { |  | ||||||
|       serviceConfig.Type = "oneshot"; |  | ||||||
|       requiredBy = [ "dnsmasq.service" ]; |  | ||||||
|       postStop = "systemctl restart dnsmasq"; |  | ||||||
|       script = '' |  | ||||||
|       #!/bin/sh |  | ||||||
| 
 |  | ||||||
|         EASYLIST_HOSTSNAME="easylist_hosts.txt" |  | ||||||
|         EASYPRIVACY_HOSTSNAME="easyprivacy_hosts.txt" |  | ||||||
|         STEVENBLACK_HOSTSNAME="stevenblack_hosts.txt" |  | ||||||
| 
 |  | ||||||
|         get_easylist() { |  | ||||||
|         EASYLIST_URL="https://raw.githubusercontent.com/easylist/easylist/master/easylist/easylist_adservers.txt" |  | ||||||
| 
 |  | ||||||
|         tmpfile=`mktemp` |  | ||||||
| 
 |  | ||||||
|     # download easylist |  | ||||||
|         ${pkgs.wget}/bin/wget $EASYLIST_URL -O $tmpfile |  | ||||||
| 
 |  | ||||||
|     # remove IP addresses and prepend 0.0.0.0 to create hosts file |  | ||||||
|         cat $tmpfile | egrep -v "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -oP "^\|\|(\K[a-zA-Z0-9\.\-]+)" | ${pkgs.gawk}/bin/gawk '{print "0.0.0.0 " $0}' > $EASYLIST_HOSTSNAME |  | ||||||
| 
 |  | ||||||
|         rm $tmpfile |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         get_easyprivacy() { |  | ||||||
|         EASYLIST_URL="https://raw.githubusercontent.com/easylist/easylist/master/easyprivacy/easyprivacy_trackingservers.txt" |  | ||||||
| 
 |  | ||||||
|         tmpfile=`mktemp` |  | ||||||
| 
 |  | ||||||
|     # download easylist |  | ||||||
|         ${pkgs.wget}/bin/wget $EASYLIST_URL -O $tmpfile |  | ||||||
| 
 |  | ||||||
|     # remove IP addresses and prepend 0.0.0.0 to create hosts file |  | ||||||
| 
 |  | ||||||
|         cat $tmpfile | egrep -v "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -oP "^\|\|(\K[a-zA-Z0-9\.\-]+)" | ${pkgs.gawk}/bin/gawk '{print "0.0.0.0 " $0}' > $EASYPRIVACY_HOSTSNAME |  | ||||||
| 
 |  | ||||||
|         rm $tmpfile |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         get_stevenblack() { |  | ||||||
|         STEVENBLACK_URL="https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts" |  | ||||||
| 
 |  | ||||||
|         ${pkgs.wget}/bin/wget $STEVENBLACK_URL -O $STEVENBLACK_HOSTSNAME |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
|         get_easylist |  | ||||||
|         get_easyprivacy |  | ||||||
|         get_stevenblack |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| # create unified file |  | ||||||
| 
 |  | ||||||
|         cat *hosts.txt | sort | uniq | grep "^0" > /etc/adblock_hosts |  | ||||||
| 
 |  | ||||||
|         rm $EASYLIST_HOSTSNAME $STEVENBLACK_HOSTSNAME $EASYPRIVACY_HOSTSNAME |  | ||||||
| 
 |  | ||||||
|       ''; |  | ||||||
|     }; |  | ||||||
|   }; |  | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user