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