diff --git a/pihole-sync b/pihole-sync index 1748c6a..ffaec53 100755 --- a/pihole-sync +++ b/pihole-sync @@ -107,13 +107,9 @@ pull_initialize () { # Overwrite local files cp $custom_list $pihole_dir cp $cname_list $dnsmasq_dir - if [ $(/sbin/ip -o -4 addr list br0 | awk '{print $4}' | cut -d/ -f1) != "10.5.1.1" ] && [ $(/sbin/ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1) != "10.10.10.10" ]; then - # cp $localdomains_list $dnsmasq_dir - echo "copying" - else - echo "not copying" + if [[ $(/sbin/ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1) != *"10.10.10.11"* ]]; then + cp $localdomains_list $dnsmasq_dir fi - # Overwrite local database tables sqlite3 $gravity_db "DROP TABLE adlist;" @@ -164,39 +160,35 @@ push () { fi } pull () { - # Go to Pi-hole directory, exit if doesn't exist + # Go to Pi-hole directory, exit if doesn't exist cd $personal_git_dir || exit # Update local Git repo from remote Git repo git remote update > /dev/null CHANGED=$(git log HEAD..origin/main --oneline) - # if [ -n "${CHANGED}" ]; then - echo 'Remote Git repo is different than local Pi-hole lists. Updating local lists...'; - # Remove -q option if you don't want to run in "quiet" mode - # git fetch --all -q - # git reset --hard origin/main -q - # $SUDO service pihole-FTL stop - # cp $custom_list $pihole_dir - # cp $cname_list $dnsmasq_dir - if [[ $(/sbin/ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1) != *"10.10.10.11"* ]]; then - # cp $localdomains_list $dnsmasq_dir - echo "copying" - else - echo "not copying" - fi - echo $(/sbin/ip -o -4 addr list br0 | awk '{print $4}' | cut -d/ -f1) - echo $(/sbin/ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1) - # sqlite3 $gravity_db "DROP TABLE adlist;" - # sqlite3 $gravity_db -header -csv ".import adlist.csv adlist" - # sqlite3 $gravity_db "DROP TABLE domainlist;" - # sqlite3 $gravity_db -header -csv ".import domainlist.csv domainlist" - # $SUDO pihole -g - echo 'Done!'; - exit 0 - # else - # echo 'Local Pi-hole lists match remote Git repo. No further action required.'; - # exit 0 - # fi + if [ -n "${CHANGED}" ]; then + echo 'Remote Git repo is different than local Pi-hole lists. Updating local lists...'; + git fetch --all -q + git reset --hard origin/main -q + $SUDO service pihole-FTL stop + cp $custom_list $pihole_dir + cp $cname_list $dnsmasq_dir + if [[ $(/sbin/ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1) != *"10.10.10.11"* ]]; then + cp $localdomains_list $dnsmasq_dir + fi + echo $(/sbin/ip -o -4 addr list br0 | awk '{print $4}' | cut -d/ -f1) + echo $(/sbin/ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1) + sqlite3 $gravity_db "DROP TABLE adlist;" + sqlite3 $gravity_db -header -csv ".import adlist.csv adlist" + sqlite3 $gravity_db "DROP TABLE domainlist;" + sqlite3 $gravity_db -header -csv ".import domainlist.csv domainlist" + $SUDO pihole -g + echo 'Done!'; + exit 0 + else + echo 'Local Pi-hole lists match remote Git repo. No further action required.'; + exit 0 + fi }