summarylogtreecommitdiffstats
path: root/arch-server-core-4.3.2.patch
diff options
context:
space:
mode:
Diffstat (limited to 'arch-server-core-4.3.2.patch')
-rw-r--r--arch-server-core-4.3.2.patch398
1 files changed, 398 insertions, 0 deletions
diff --git a/arch-server-core-4.3.2.patch b/arch-server-core-4.3.2.patch
new file mode 100644
index 000000000000..202ac832d4a2
--- /dev/null
+++ b/arch-server-core-4.3.2.patch
@@ -0,0 +1,398 @@
+diff -uprN pi-hole-4.3.2/adlists.list pi-hole-4.3.2.cust/adlists.list
+--- pi-hole-4.3.2/adlists.list 1970-01-01 01:00:00.000000000 +0100
++++ pi-hole-4.3.2.cust/adlists.list 2019-09-21 12:37:48.803575104 +0200
+@@ -0,0 +1,7 @@
++https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts
++https://mirror1.malwaredomains.com/files/justdomains
++http://sysctl.org/cameleon/hosts
++https://zeustracker.abuse.ch/blocklist.php?download=domainblocklist
++https://s3.amazonaws.com/lists.disconnect.me/simple_tracking.txt
++https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt
++https://hosts-file.net/ad_servers.txt
+diff -uprN pi-hole-4.3.2/advanced/Scripts/chronometer.sh pi-hole-4.3.2.cust/advanced/Scripts/chronometer.sh
+--- pi-hole-4.3.2/advanced/Scripts/chronometer.sh 2019-09-15 17:52:21.000000000 +0200
++++ pi-hole-4.3.2.cust/advanced/Scripts/chronometer.sh 2019-09-21 12:37:48.751575298 +0200
+@@ -13,7 +13,7 @@ LC_NUMERIC=C
+
+ # Retrieve stats from FTL engine
+ pihole-FTL() {
+- ftl_port=$(cat /var/run/pihole-FTL.port 2> /dev/null)
++ ftl_port=$(cat /run/pihole-ftl/pihole-FTL.port 2> /dev/null)
+ if [[ -n "$ftl_port" ]]; then
+ # Open connection to FTL
+ exec 3<>"/dev/tcp/127.0.0.1/$ftl_port"
+diff -uprN pi-hole-4.3.2/advanced/Scripts/piholeLogFlush.sh pi-hole-4.3.2.cust/advanced/Scripts/piholeLogFlush.sh
+--- pi-hole-4.3.2/advanced/Scripts/piholeLogFlush.sh 2019-09-15 17:52:21.000000000 +0200
++++ pi-hole-4.3.2.cust/advanced/Scripts/piholeLogFlush.sh 2019-09-21 12:37:48.749575306 +0200
+@@ -26,33 +26,33 @@ if [ -z "$DBFILE" ]; then
+ fi
+
+ if [[ "$@" != *"quiet"* ]]; then
+- echo -ne " ${INFO} Flushing /var/log/pihole.log ..."
++ echo -ne " ${INFO} Flushing /run/log/pihole/pihole.log ..."
+ fi
+ if [[ "$@" == *"once"* ]]; then
+ # Nightly logrotation
+- if command -v /usr/sbin/logrotate >/dev/null; then
++ if command -v /usr/bin/logrotate >/dev/null; then
+ # Logrotate once
+- /usr/sbin/logrotate --force /etc/pihole/logrotate
++ /usr/bin/logrotate --force /etc/pihole/logrotate
+ else
+ # Copy pihole.log over to pihole.log.1
+ # and empty out pihole.log
+ # Note that moving the file is not an option, as
+ # dnsmasq would happily continue writing into the
+ # moved file (it will have the same file handler)
+- cp /var/log/pihole.log /var/log/pihole.log.1
+- echo " " > /var/log/pihole.log
++ cp /run/log/pihole/pihole.log /run/log/pihole/pihole.log.1
++ echo " " > /run/log/pihole/pihole.log
+ fi
+ else
+ # Manual flushing
+- if command -v /usr/sbin/logrotate >/dev/null; then
++ if command -v /usr/bin/logrotate >/dev/null; then
+ # Logrotate twice to move all data out of sight of FTL
+- /usr/sbin/logrotate --force /etc/pihole/logrotate; sleep 3
+- /usr/sbin/logrotate --force /etc/pihole/logrotate
++ /usr/bin/logrotate --force /etc/pihole/logrotate; sleep 3
++ /usr/bin/logrotate --force /etc/pihole/logrotate
+ else
+ # Flush both pihole.log and pihole.log.1 (if existing)
+- echo " " > /var/log/pihole.log
+- if [ -f /var/log/pihole.log.1 ]; then
+- echo " " > /var/log/pihole.log.1
++ echo " " > /run/log/pihole/pihole.log
++ if [ -f /run/log/pihole/pihole.log.1 ]; then
++ echo " " > /run/log/pihole/pihole.log.1
+ fi
+ fi
+ # Delete most recent 24 hours from FTL's database, leave even older data intact (don't wipe out all history)
+@@ -63,6 +63,6 @@ else
+ fi
+
+ if [[ "$@" != *"quiet"* ]]; then
+- echo -e "${OVER} ${TICK} Flushed /var/log/pihole.log"
++ echo -e "${OVER} ${TICK} Flushed /run/log/pihole/pihole.log"
+ echo -e " ${TICK} Deleted ${deleted} queries from database"
+ fi
+diff -uprN pi-hole-4.3.2/advanced/Scripts/version.sh pi-hole-4.3.2.cust/advanced/Scripts/version.sh
+--- pi-hole-4.3.2/advanced/Scripts/version.sh 2019-09-15 17:52:21.000000000 +0200
++++ pi-hole-4.3.2.cust/advanced/Scripts/version.sh 2019-09-21 12:37:48.776575205 +0200
+@@ -11,7 +11,7 @@
+ # Variables
+ DEFAULT="-1"
+ COREGITDIR="/etc/.pihole/"
+-WEBGITDIR="/var/www/html/admin/"
++WEBGITDIR="/srv/http/pihole/admin/"
+
+ getLocalVersion() {
+ # FTL requires a different method
+@@ -20,42 +20,16 @@ getLocalVersion() {
+ return 0
+ fi
+
+- # Get the tagged version of the local repository
+- local directory="${1}"
+- local version
+-
+- cd "${directory}" 2> /dev/null || { echo "${DEFAULT}"; return 1; }
+- version=$(git describe --tags --always || echo "$DEFAULT")
+- if [[ "${version}" =~ ^v ]]; then
+- echo "${version}"
+- elif [[ "${version}" == "${DEFAULT}" ]]; then
+- echo "ERROR"
+- return 1
++ if [[ "$1" == "pi-hole" ]]; then
++ echo "4.3.2"
+ else
+- echo "Untagged"
++ echo "4.3.2"
+ fi
+ return 0
+ }
+
+ getLocalHash() {
+- # Local FTL hash does not exist on filesystem
+- if [[ "$1" == "FTL" ]]; then
+- echo "N/A"
+- return 0
+- fi
+-
+- # Get the short hash of the local repository
+- local directory="${1}"
+- local hash
+-
+- cd "${directory}" 2> /dev/null || { echo "${DEFAULT}"; return 1; }
+- hash=$(git rev-parse --short HEAD || echo "$DEFAULT")
+- if [[ "${hash}" == "${DEFAULT}" ]]; then
+- echo "ERROR"
+- return 1
+- else
+- echo "${hash}"
+- fi
++ echo "N/A"
+ return 0
+ }
+
+diff -uprN pi-hole-4.3.2/advanced/Scripts/webpage.sh pi-hole-4.3.2.cust/advanced/Scripts/webpage.sh
+--- pi-hole-4.3.2/advanced/Scripts/webpage.sh 2019-09-15 17:52:21.000000000 +0200
++++ pi-hole-4.3.2.cust/advanced/Scripts/webpage.sh 2019-09-21 12:37:48.736575354 +0200
+@@ -16,7 +16,7 @@ readonly dhcpconfig="/etc/dnsmasq.d/02-p
+ readonly FTLconf="/etc/pihole/pihole-FTL.conf"
+ # 03 -> wildcards
+ readonly dhcpstaticconfig="/etc/dnsmasq.d/04-pihole-static-dhcp.conf"
+-readonly PI_HOLE_BIN_DIR="/usr/local/bin"
++readonly PI_HOLE_BIN_DIR="/usr/bin"
+
+ coltable="/opt/pihole/COL_TABLE"
+ if [[ -f ${coltable} ]]; then
+diff -uprN pi-hole-4.3.2/advanced/Templates/logrotate pi-hole-4.3.2.cust/advanced/Templates/logrotate
+--- pi-hole-4.3.2/advanced/Templates/logrotate 2019-09-15 17:52:21.000000000 +0200
++++ pi-hole-4.3.2.cust/advanced/Templates/logrotate 2019-09-21 12:37:48.747575313 +0200
+@@ -1,4 +1,4 @@
+-/var/log/pihole.log {
++/run/log/pihole/pihole.log {
+ # su #
+ daily
+ copytruncate
+@@ -9,7 +9,7 @@
+ nomail
+ }
+
+-/var/log/pihole-FTL.log {
++/run/log/pihole-ftl/pihole-FTL.log {
+ # su #
+ weekly
+ copytruncate
+diff -uprN pi-hole-4.3.2/advanced/Templates/pihole.sudo pi-hole-4.3.2.cust/advanced/Templates/pihole.sudo
+--- pi-hole-4.3.2/advanced/Templates/pihole.sudo 2019-09-15 17:52:21.000000000 +0200
++++ pi-hole-4.3.2.cust/advanced/Templates/pihole.sudo 2019-09-21 12:37:48.803575104 +0200
+@@ -7,3 +7,4 @@
+ # This file is copyright under the latest version of the EUPL.
+ # Please see LICENSE file for your rights under this license.
+ #
++http ALL=NOPASSWD: /usr/bin/pihole
+diff -uprN pi-hole-4.3.2/advanced/dnsmasq.conf.original pi-hole-4.3.2.cust/advanced/dnsmasq.conf.original
+--- pi-hole-4.3.2/advanced/dnsmasq.conf.original 2019-09-15 17:52:21.000000000 +0200
++++ pi-hole-4.3.2.cust/advanced/dnsmasq.conf.original 2019-09-21 12:37:48.803575104 +0200
+@@ -646,3 +646,4 @@
+
+ # Include all files in a directory which end in .conf
+ #conf-dir=/etc/dnsmasq.d/*.conf
++conf-dir=/etc/dnsmasq.d/,*.conf
+diff -uprN pi-hole-4.3.2/dns-servers.conf pi-hole-4.3.2.cust/dns-servers.conf
+--- pi-hole-4.3.2/dns-servers.conf 1970-01-01 01:00:00.000000000 +0100
++++ pi-hole-4.3.2.cust/dns-servers.conf 2019-09-21 12:37:48.804575101 +0200
+@@ -0,0 +1,9 @@
++Google (ECS);8.8.8.8;8.8.4.4;2001:4860:4860:0:0:0:0:8888;2001:4860:4860:0:0:0:0:8844
++OpenDNS (ECS);208.67.222.222;208.67.220.220;2620:0:ccc::2;2620:0:ccd::2
++Level3;4.2.2.1;4.2.2.2;;
++Comodo;8.26.56.26;8.20.247.20;;
++DNS.WATCH;84.200.69.80;84.200.70.40;2001:1608:10:25:0:0:1c04:b12f;2001:1608:10:25:0:0:9249:d69b
++Quad9 (filtered, DNSSEC);9.9.9.9;149.112.112.112;2620:fe::fe;2620:fe::9
++Quad9 (unfiltered, no DNSSEC);9.9.9.10;149.112.112.10;2620:fe::10;2620:fe::fe:10
++Quad9 (filtered + ECS);9.9.9.11;149.112.112.11;2620:fe::11;
++Cloudflare;1.1.1.1;1.0.0.1;2606:4700:4700::1111;2606:4700:4700::1001
+diff -uprN pi-hole-4.3.2/gravity.sh pi-hole-4.3.2.cust/gravity.sh
+--- pi-hole-4.3.2/gravity.sh 2019-09-15 17:52:21.000000000 +0200
++++ pi-hole-4.3.2.cust/gravity.sh 2019-09-21 12:37:48.731575373 +0200
+@@ -19,7 +19,7 @@ regexconverter="/opt/pihole/wildcard_reg
+ source "${regexconverter}"
+
+ basename="pihole"
+-PIHOLE_COMMAND="/usr/local/bin/${basename}"
++PIHOLE_COMMAND="/usr/bin/${basename}"
+
+ piholeDir="/etc/${basename}"
+
+diff -uprN pi-hole-4.3.2/pihole pi-hole-4.3.2.cust/pihole
+--- pi-hole-4.3.2/pihole 2019-09-15 17:52:21.000000000 +0200
++++ pi-hole-4.3.2.cust/pihole 2019-09-21 12:37:48.738575347 +0200
+@@ -13,11 +13,10 @@ readonly PI_HOLE_SCRIPT_DIR="/opt/pihole
+ readonly gravitylist="/etc/pihole/gravity.list"
+ readonly blacklist="/etc/pihole/black.list"
+
+-# setupVars and PI_HOLE_BIN_DIR are not readonly here because in some funcitons (checkout),
+ # it might get set again when the installer is sourced. This causes an
+ # error due to modifying a readonly variable.
+ setupVars="/etc/pihole/setupVars.conf"
+-PI_HOLE_BIN_DIR="/usr/local/bin"
++PI_HOLE_BIN_DIR="/usr/bin"
+
+ readonly colfile="${PI_HOLE_SCRIPT_DIR}/COL_TABLE"
+ source "${colfile}"
+@@ -57,17 +56,6 @@ flushFunc() {
+ exit 0
+ }
+
+-updatePiholeFunc() {
+- shift
+- "${PI_HOLE_SCRIPT_DIR}"/update.sh "$@"
+- exit 0
+-}
+-
+-reconfigurePiholeFunc() {
+- /etc/.pihole/automated\ install/basic-install.sh --reconfigure
+- exit 0;
+-}
+-
+ updateGravityFunc() {
+ "${PI_HOLE_SCRIPT_DIR}"/gravity.sh "$@"
+ exit $?
+@@ -86,11 +74,6 @@ chronometerFunc() {
+ }
+
+
+-uninstallFunc() {
+- "${PI_HOLE_SCRIPT_DIR}"/uninstall.sh
+- exit 0
+-}
+-
+ versionFunc() {
+ shift
+ "${PI_HOLE_SCRIPT_DIR}"/version.sh "$@"
+@@ -108,7 +91,7 @@ restartDNS() {
+ svc="killall -s SIGHUP ${resolver}"
+ else
+ # A full restart has been requested
+- svc="service ${resolver} restart"
++ svc="systemctl restart ${resolver}"
+ fi
+
+ # Print output to Terminal, but not to Web Admin
+@@ -224,9 +207,9 @@ Example: 'pihole logging on'
+ Specify whether the Pi-hole log should be used
+
+ Options:
+- on Enable the Pi-hole log at /var/log/pihole.log
+- off Disable and flush the Pi-hole log at /var/log/pihole.log
+- off noflush Disable the Pi-hole log at /var/log/pihole.log"
++ on Enable the Pi-hole log at /run/log/pihole/pihole.log
++ off Disable and flush the Pi-hole log at /run/log/pihole/pihole.log
++ off noflush Disable the Pi-hole log at /run/log/pihole/pihole.log"
+ exit 0
+ elif [[ "${1}" == "off" ]]; then
+ # Disable logging
+@@ -308,7 +291,7 @@ tailFunc() {
+ # Colour blocklist/blacklist/wildcard entries as red
+ # Colour A/AAAA/DHCP strings as white
+ # Colour everything else as gray
+- tail -f /var/log/pihole.log | sed -E \
++ tail -f /run/log/pihole/pihole.log | sed -E \
+ -e "s,($(date +'%b %d ')| dnsmasq[.*[0-9]]),,g" \
+ -e "s,(.*(gravity.list|black.list|regex.list| config ).* is (0.0.0.0|::|NXDOMAIN|${IPV4_ADDRESS%/*}|${IPV6_ADDRESS:-NULL}).*),${COL_RED}&${COL_NC}," \
+ -e "s,.*(query\\[A|DHCP).*,${COL_NC}&${COL_NC}," \
+@@ -316,59 +299,6 @@ tailFunc() {
+ exit 0
+ }
+
+-piholeCheckoutFunc() {
+- if [[ "$2" == "-h" ]] || [[ "$2" == "--help" ]]; then
+- echo "Usage: pihole checkout [repo] [branch]
+-Example: 'pihole checkout master' or 'pihole checkout core dev'
+-Switch Pi-hole subsystems to a different Github branch
+-
+-Repositories:
+- core [branch] Change the branch of Pi-hole's core subsystem
+- web [branch] Change the branch of Web Interface subsystem
+- ftl [branch] Change the branch of Pi-hole's FTL subsystem
+-
+-Branches:
+- master Update subsystems to the latest stable release
+- dev Update subsystems to the latest development release
+- branchname Update subsystems to the specified branchname"
+- exit 0
+- fi
+-
+- source "${PI_HOLE_SCRIPT_DIR}"/piholeCheckout.sh
+- shift
+- checkout "$@"
+-}
+-
+-tricorderFunc() {
+- if [[ ! -p "/dev/stdin" ]]; then
+- echo -e " ${INFO} Please do not call Tricorder directly"
+- exit 1
+- fi
+-
+- if ! (echo > /dev/tcp/tricorder.pi-hole.net/9998) >/dev/null 2>&1; then
+- echo -e " ${CROSS} Unable to connect to Pi-hole's Tricorder server"
+- exit 1
+- fi
+-
+- if command -v openssl &> /dev/null; then
+- openssl s_client -quiet -connect tricorder.pi-hole.net:9998 2> /dev/null < /dev/stdin
+- exit "$?"
+- else
+- echo -e " ${INFO} ${COL_YELLOW}Security Notice${COL_NC}: ${COL_WHITE}openssl${COL_NC} is not installed
+- Your debug log will be transmitted unencrypted via plain-text
+- There is a possibility that this could be intercepted by a third party
+- If you wish to cancel, press Ctrl-C to exit within 10 seconds"
+- secs="10"
+- while [[ "$secs" -gt "0" ]]; do
+- echo -ne "."
+- sleep 1
+- : $((secs--))
+- done
+- echo " "
+- nc tricorder.pi-hole.net 9999 < /dev/stdin
+- exit "$?"
+- fi
+-}
+
+ updateCheckFunc() {
+ "${PI_HOLE_SCRIPT_DIR}"/updatecheck.sh "$@"
+@@ -391,7 +321,6 @@ Debugging Options:
+ -d, debug Start a debugging session
+ Add '-a' to enable automated debugging
+ -f, flush Flush the Pi-hole log
+- -r, reconfigure Reconfigure or Repair Pi-hole subsystems
+ -t, tail View the live output of the Pi-hole log
+
+ Options:
+@@ -405,18 +334,15 @@ Options:
+ Add '-h' for more info on logging usage
+ -q, query Query the adlists for a specified domain
+ Add '-h' for more info on query usage
+- -up, updatePihole Update Pi-hole subsystems
+ Add '--check-only' to exit script before update is performed.
+ -v, version Show installed versions of Pi-hole, Web Interface & FTL
+ Add '-h' for more info on version usage
+- uninstall Uninstall Pi-hole from your system
+ status Display the running status of Pi-hole subsystems
+ enable Enable Pi-hole subsystems
+ disable Disable Pi-hole subsystems
+ Add '-h' for more info on disable usage
+ restartdns Restart Pi-hole subsystems
+- checkout Switch Pi-hole subsystems to a different Github branch
+- Add '-h' for more info on checkout usage";
++";
+ exit 0
+ }
+
+@@ -447,23 +373,18 @@ case "${1}" in
+ "--regex" | "regex" ) listFunc "$@";;
+ "-d" | "debug" ) debugFunc "$@";;
+ "-f" | "flush" ) flushFunc "$@";;
+- "-up" | "updatePihole" ) updatePiholeFunc "$@";;
+- "-r" | "reconfigure" ) reconfigurePiholeFunc;;
+ "-g" | "updateGravity" ) updateGravityFunc "$@";;
+ "-c" | "chronometer" ) chronometerFunc "$@";;
+ "-h" | "help" ) helpFunc;;
+ "-v" | "version" ) versionFunc "$@";;
+ "-q" | "query" ) queryFunc "$@";;
+ "-l" | "logging" ) piholeLogging "$@";;
+- "uninstall" ) uninstallFunc;;
+ "enable" ) piholeEnable 1;;
+ "disable" ) piholeEnable 0 "$2";;
+ "status" ) statusFunc "$2";;
+ "restartdns" ) restartDNS "$2";;
+ "-a" | "admin" ) webpageFunc "$@";;
+ "-t" | "tail" ) tailFunc;;
+- "checkout" ) piholeCheckoutFunc "$@";;
+- "tricorder" ) tricorderFunc;;
+ "updatechecker" ) updateCheckFunc "$@";;
+ * ) helpFunc;;
+ esac