1
0
Fork 0
mirror of https://codeberg.org/h3xx/you-dont-need-pihole.git synced 2024-08-14 20:27:01 +00:00

Compare commits

..

No commits in common. "dc38b1a3764030d5f8a02db46abeb7446cc4c7b0" and "637c4a1b81b621aa4d0a5e3869d946e1371495f3" have entirely different histories.

2 changed files with 17 additions and 12 deletions

View file

@ -1,4 +1,5 @@
#!/usr/bin/perl #!/usr/bin/perl
# vi: et sts=4 sw=4 ts=4
############################################################################### ###############################################################################
# You Don't Need Pi-hole # You Don't Need Pi-hole
@ -116,7 +117,7 @@ MAIN: {
} @block_ip; } @block_ip;
} sort keys %domains; } sort keys %domains;
printf STDERR "%d domains written to %s from\n", $written, $out // 'STDOUT'; printf STDERR "%d domains written to %s from\n", $written, $out;
printf STDERR " - %d .domains files\n", (scalar @domain_lists); printf STDERR " - %d .domains files\n", (scalar @domain_lists);
printf STDERR " - %d .hosts files\n", (scalar @hosts_lists); printf STDERR " - %d .hosts files\n", (scalar @hosts_lists);
printf STDERR "(%d duplicates)\n", $dupes if $dupes; printf STDERR "(%d duplicates)\n", $dupes if $dupes;

View file

@ -1,4 +1,5 @@
#!/bin/bash #!/bin/bash
# vi: et sts=4 sw=4 ts=4
############################################################################### ###############################################################################
# You Don't Need Pi-hole # You Don't Need Pi-hole
@ -13,17 +14,20 @@
# You may NOT use this software for commercial purposes. # You may NOT use this software for commercial purposes.
############################################################################### ###############################################################################
set -e
WORKDIR=${0%/*} WORKDIR=${0%/*}
CFG=$WORKDIR/update.cfg CFG=$WORKDIR/update.cfg
# Config defaults # Config defaults
BACKUPSUFFIX= BACKUPSUFFIX=
BLOCKLIST=$WORKDIR/block.list BLOCKLIST=$WORKDIR/block.list
LIST_DIR=$WORKDIR/lists
OUT=() OUT=()
URL=() URL=()
DNSMASQ_RESTART_COMMAND=() DNSMASQ_RESTART_COMMAND=()
if [[ -f $CFG ]]; then if [[ -f $CFG ]]; then
. "$CFG" || exit . "$CFG"
fi fi
TEMP_DIR=$(mktemp -d -t "${0##*/}.XXXXXX") TEMP_DIR=$(mktemp -d -t "${0##*/}.XXXXXX")
@ -34,9 +38,9 @@ trap 'cleanup' EXIT
copy_perms() { copy_perms() {
local -r FROM=$1 TO=$2 local -r FROM=$1 TO=$2
chmod --reference="$FROM" -- "$TO" || exit chmod --reference="$FROM" -- "$TO"
if [[ $UID -eq 0 ]]; then if [[ $UID -eq 0 ]]; then
chown --reference="$FROM" -- "$TO" || exit chown --reference="$FROM" -- "$TO"
fi fi
} }
@ -47,12 +51,12 @@ replace_with() {
if [[ -f $ORIG ]]; then if [[ -f $ORIG ]]; then
copy_perms "$ORIG" "$NEW" copy_perms "$ORIG" "$NEW"
if [[ -n $BACKUPSUFFIX ]]; then if [[ -n $BACKUPSUFFIX ]]; then
mv -- "$ORIG" "$ORIG$BACKUPSUFFIX" || exit mv -- "$ORIG" "$ORIG$BACKUPSUFFIX"
fi fi
else else
mkdir -p -- "${ORIG%/*}" || exit mkdir -p -- "${ORIG%/*}"
fi fi
mv -- "$NEW" "$ORIG" || exit mv -- "$NEW" "$ORIG"
else else
printf 'File "%s" not modified\n' \ printf 'File "%s" not modified\n' \
"$ORIG" \ "$ORIG" \
@ -63,7 +67,7 @@ replace_with() {
(cd "$WORKDIR" && (cd "$WORKDIR" &&
git submodule update --init 'repos-noupdates/*' && git submodule update --init 'repos-noupdates/*' &&
git submodule update --init --remote 'repos/*' git submodule update --init --remote 'repos/*'
) || exit )
for (( I = 0 ; I < ${#OUT[@]} ; ++I )); do for (( I = 0 ; I < ${#OUT[@]} ; ++I )); do
MY_URL=${URL[$I]} MY_URL=${URL[$I]}
@ -81,13 +85,13 @@ for (( I = 0 ; I < ${#OUT[@]} ; ++I )); do
wget \ wget \
-O "$TEMP_OUT" \ -O "$TEMP_OUT" \
"$MY_URL" || exit "$MY_URL"
replace_with "$MY_OUT" "$TEMP_OUT" replace_with "$MY_OUT" "$TEMP_OUT"
done done
TEMP_BLOCKLIST=$(mktemp -p "$TEMP_DIR") TEMP_BLOCKLIST=$(mktemp -p "$TEMP_DIR")
"$WORKDIR/make-block.pl" --out="$TEMP_BLOCKLIST" || exit "$WORKDIR/make-block.pl" --out="$TEMP_BLOCKLIST"
# Blocklist generation succeeded, install it! # Blocklist generation succeeded, install it!
@ -99,11 +103,11 @@ if [[ ! -e $BLOCKLIST ]]; then
# whatever file permissions 'mktemp' sets. # whatever file permissions 'mktemp' sets.
umask 0022 umask 0022
touch -- "$BLOCKLIST" touch -- "$BLOCKLIST"
) || exit )
fi fi
replace_with "$BLOCKLIST" "$TEMP_BLOCKLIST" replace_with "$BLOCKLIST" "$TEMP_BLOCKLIST"
if [[ ${#DNSMASQ_RESTART_COMMAND[@]} -gt 0 ]]; then if [[ ${#DNSMASQ_RESTART_COMMAND[@]} -gt 0 ]]; then
"${DNSMASQ_RESTART_COMMAND[@]}" || exit "${DNSMASQ_RESTART_COMMAND[@]}"
fi fi