pi-hole/advanced/Scripts/piholeInclude

61 lines
1.7 KiB
Text
Raw Normal View History

2016-03-04 10:13:19 +00:00
#!/usr/bin/env bash
# Pi-hole: A black hole for Internet advertisements
# (c) 2015, 2016 by Jacob Salmela
# Network-wide ad blocking via your Raspberry Pi
# http://pi-hole.net
# Include for other pihole scripts.
#
# Pi-hole is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
# Older versions of Pi-hole set $SUDO="sudo" and prefixed commands with it,
# rather than rerunning with sudo. Just in case it turns up by accident,
# explicitly set the $SUDO variable to an empty string.
SUDO=""
function rerun_root() {
# Check if root, and if not then rerun with sudo.
2016-03-04 10:22:26 +00:00
# The parent script should pass its $0 and $@ to this function.
2016-03-04 10:13:19 +00:00
echo ":::"
if [[ $EUID -eq 0 ]];then
echo "::: You are root."
else
echo "::: sudo will be used."
# Check if it is actually installed
# If it isn't, exit because the install cannot complete
if [[ $(dpkg-query -s sudo) ]];then
2016-03-04 10:22:26 +00:00
echo "::: Running sudo $@"
sudo "$@"
2016-03-04 10:13:19 +00:00
exit $?
else
echo "::: Please install sudo."
exit 1
fi
fi
}
function rerun_pihole() {
# Check if pihole user, and if not then rerun with sudo.
2016-03-04 10:22:26 +00:00
# The parent script should pass its $0 and $@ to this function.
2016-03-04 10:13:19 +00:00
echo ":::"
runninguser=$(whoami)
if [[ "$runninguser" = "pihole" ]];then
echo "::: You are pihole user."
else
echo "::: sudo will be used."
# Check if it is actually installed
# If it isn't, exit because the install cannot complete
if [[ $(dpkg-query -s sudo) ]];then
2016-03-04 10:22:26 +00:00
echo "::: Running sudo -u pihole $@"
sudo -u pihole "$@"
2016-03-04 10:13:19 +00:00
exit $?
else
echo "::: Please install sudo."
exit 1
fi
fi
}