1
0
mirror of https://github.com/pi-hole/pi-hole synced 2024-11-19 22:58:16 +00:00

Revert inadvertent commits

IDLE keeps committing direct to development.
This commit is contained in:
Dan Schaper 2016-10-09 22:35:14 -07:00 committed by GitHub
parent 61b02bf6d3
commit 54a1c5b63a

View File

@ -16,7 +16,7 @@
# #
# curl -L install.pi-hole.net | bash # curl -L install.pi-hole.net | bash
set -e
######## VARIABLES ######### ######## VARIABLES #########
@ -65,23 +65,25 @@ fi
if [ -x "$(command -v apt-get)" ];then if [ -x "$(command -v apt-get)" ];then
#Debian Family #Debian Family
#Decide if php should be `php5` or just `php` (Fixes issues with Ubuntu 16.04 LTS) #Decide if php should be `php5` or just `php` (Fixes issues with Ubuntu 16.04 LTS)
phpVer="php5" phpVer="php"
apt-get install --dry-run php5 > /dev/null 2>&1 || phpVer="php" apt-get install --dry-run php5 > /dev/null 2>&1
if [ $? == 0 ]; then
phpVer="php5"
fi
############################################# #############################################
PKG_MANAGER="apt-get" PKG_MANAGER="apt-get"
PKG_CACHE="/var/lib/apt/lists/" PKG_CACHE="/var/lib/apt/lists/"
UPDATE_PKG_CACHE="$PKG_MANAGER -qq update" UPDATE_PKG_CACHE="$PKG_MANAGER -qq update"
PKG_UPDATE="$PKG_MANAGER upgrade" PKG_UPDATE="$PKG_MANAGER upgrade"
PKG_INSTALL="$PKG_MANAGER --yes --quiet install" PKG_INSTALL="$PKG_MANAGER --yes --quiet install"
# grep -c will return 1 retVal on 0 matches, block this throwing the set -e with an OR TRUE PKG_COUNT="$PKG_MANAGER -s -o Debug::NoLocking=true upgrade | grep -c ^Inst"
PKG_COUNT="$PKG_MANAGER -s -o Debug::NoLocking=true upgrade | grep -c ^Inst || true" INSTALLER_DEPS=( apt-utils whiptail dhcpcd5)
INSTALLER_DEPS=( apt-utils whiptail git dhcpcd5) PIHOLE_DEPS=( dnsutils bc dnsmasq lighttpd ${phpVer}-common ${phpVer}-cgi git curl unzip wget sudo netcat cron iproute2 )
PIHOLE_DEPS=( dnsutils bc dnsmasq lighttpd ${phpVer}-common ${phpVer}-cgi curl unzip wget sudo netcat cron iproute2 )
LIGHTTPD_USER="www-data" LIGHTTPD_USER="www-data"
LIGHTTPD_GROUP="www-data" LIGHTTPD_GROUP="www-data"
LIGHTTPD_CFG="lighttpd.conf.debian" LIGHTTPD_CFG="lighttpd.conf.debian"
package_check_install() { package_check() {
dpkg-query -W -f='${Status}' "$1" 2>/dev/null | grep -c "ok installed" || ${PKG_INSTALL} "$1" dpkg-query -W -f='${Status}' "$1" 2>/dev/null | grep -c "ok installed"
} }
elif [ -x "$(command -v rpm)" ];then elif [ -x "$(command -v rpm)" ];then
# Fedora Family # Fedora Family
@ -95,12 +97,12 @@ elif [ -x "$(command -v rpm)" ];then
PKG_UPDATE="$PKG_MANAGER update -y" PKG_UPDATE="$PKG_MANAGER update -y"
PKG_INSTALL="$PKG_MANAGER install -y" PKG_INSTALL="$PKG_MANAGER install -y"
PKG_COUNT="$PKG_MANAGER check-update | grep -v ^Last | grep -c ^[a-zA-Z0-9]" PKG_COUNT="$PKG_MANAGER check-update | grep -v ^Last | grep -c ^[a-zA-Z0-9]"
INSTALLER_DEPS=( iproute net-tools procps-ng newt git ) INSTALLER_DEPS=( iproute net-tools procps-ng newt )
PIHOLE_DEPS=( epel-release bind-utils bc dnsmasq lighttpd lighttpd-fastcgi php-common php-cli php curl unzip wget findutils cronie sudo nmap-ncat ) PIHOLE_DEPS=( epel-release bind-utils bc dnsmasq lighttpd lighttpd-fastcgi php-common php-cli php git curl unzip wget findutils cronie sudo nmap-ncat )
LIGHTTPD_USER="lighttpd" LIGHTTPD_USER="lighttpd"
LIGHTTPD_GROUP="lighttpd" LIGHTTPD_GROUP="lighttpd"
LIGHTTPD_CFG="lighttpd.conf.fedora" LIGHTTPD_CFG="lighttpd.conf.fedora"
package_check_install() { package_check() {
rpm -qa | grep ^$1- > /dev/null rpm -qa | grep ^$1- > /dev/null
} }
else else
@ -580,12 +582,13 @@ stopServices() {
echo " done." echo " done."
} }
update_pacakge_cache() { installerDependencies() {
#Running apt-get update/upgrade with minimal output can cause some issues with #Running apt-get update/upgrade with minimal output can cause some issues with
#requiring user input (e.g password for phpmyadmin see #218) #requiring user input (e.g password for phpmyadmin see #218)
#We'll change the logic up here, to check to see if there are any updates availible and
# if so, advise the user to run apt-get update/upgrade at their own discretion
#Check to see if apt-get update has already been run today #Check to see if apt-get update has already been run today
#it needs to have been run at least once on new installs! # it needs to have been run at least once on new installs!
timestamp=$(stat -c %Y ${PKG_CACHE}) timestamp=$(stat -c %Y ${PKG_CACHE})
timestampAsDate=$(date -d @"$timestamp" "+%b %e") timestampAsDate=$(date -d @"$timestamp" "+%b %e")
today=$(date "+%b %e") today=$(date "+%b %e")
@ -597,34 +600,48 @@ update_pacakge_cache() {
${UPDATE_PKG_CACHE} > /dev/null 2>&1 ${UPDATE_PKG_CACHE} > /dev/null 2>&1
echo " done!" echo " done!"
fi fi
}
notify_package_updates_available(){
# Let user know if they have outdated packages on their system and
# advise them to run a package update at soonest possible.
echo ":::" echo ":::"
echo -n "::: Checking $PKG_MANAGER for upgraded packages...." echo -n "::: Checking $PKG_MANAGER for upgraded packages...."
updatesToInstall=$(eval "${PKG_COUNT}") updatesToInstall=$(eval "${PKG_COUNT}")
echo " done!" echo " done!"
echo ":::" echo ":::"
if [[ ${updatesToInstall} -eq "0" ]]; then if [[ ${updatesToInstall} -eq "0" ]]; then
echo "::: Your system is up to date! Continuing with Pi-hole installation..." echo "::: Your pi is up to date! Continuing with pi-hole installation..."
else else
echo "::: There are $updatesToInstall updates available for your system!" echo "::: There are $updatesToInstall updates availible for your pi!"
echo "::: We recommend you run '$PKG_UPDATE' after installing Pi-Hole! " echo "::: We recommend you run '$PKG_UPDATE' after installing Pi-Hole! "
echo ":::" echo ":::"
fi fi
echo ":::"
echo "::: Checking installer dependencies..."
for i in "${INSTALLER_DEPS[@]}"; do
echo -n "::: Checking for $i..."
package_check ${i} > /dev/null
if ! [ $? -eq 0 ]; then
echo -n " Not found! Installing...."
${PKG_INSTALL} "$i" > /dev/null 2>&1
echo " done!"
else
echo " already installed!"
fi
done
} }
install_dependent_packages(){ checkForDependencies() {
# Install packages passed in via argument array # Install dependencies for Pi-Hole
declare -a argArray1=("${!1}") echo "::: Checking Pi-Hole dependencies:"
for i in "${argArray1[@]}"; do for i in "${PIHOLE_DEPS[@]}"; do
echo -n "::: Checking for $i..." echo -n "::: Checking for $i..."
package_check_install ${i} > /dev/null package_check ${i} > /dev/null
echo " installed!" if ! [ $? -eq 0 ]; then
done echo -n " Not found! Installing...."
${PKG_INSTALL} "$i" > /dev/null & spinner $!
echo " done!"
else
echo " already installed!"
fi
done
} }
getGitFiles() { getGitFiles() {
@ -779,6 +796,7 @@ finalExports() {
installPihole() { installPihole() {
# Install base files and web interface # Install base files and web interface
checkForDependencies # done
stopServices stopServices
setUser setUser
if [ ! -d "/var/www/html" ]; then if [ ! -d "/var/www/html" ]; then
@ -807,6 +825,7 @@ installPihole() {
updatePihole() { updatePihole() {
# Install base files and web interface # Install base files and web interface
checkForDependencies # done
stopServices stopServices
getGitFiles getGitFiles
installScripts installScripts
@ -823,8 +842,14 @@ configureSelinux() {
if [ -x "$(command -v getenforce)" ]; then if [ -x "$(command -v getenforce)" ]; then
printf "\n::: SELinux Detected\n" printf "\n::: SELinux Detected\n"
printf ":::\tChecking for SELinux policy development packages..." printf ":::\tChecking for SELinux policy development packages..."
package_check_install "selinux-policy-devel" > /dev/null package_check "selinux-policy-devel" > /dev/null
echo " installed!" if ! [ $? -eq 0 ]; then
echo -n " Not found! Installing...."
${PKG_INSTALL} "selinux-policy-devel" > /dev/null & spinner $!
echo " done!"
else
echo " already installed!"
fi
printf "::: Enabling httpd server side includes (SSI).. " printf "::: Enabling httpd server side includes (SSI).. "
setsebool -P httpd_ssi_exec on setsebool -P httpd_ssi_exec on
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
@ -903,19 +928,12 @@ else
verifyFreeDiskSpace verifyFreeDiskSpace
fi fi
# Update package cache
update_pacakge_cache
# Notify user of package availability
notify_package_updates_available
# Install packages used by this installation script # Install packages used by this installation script
install_dependent_packages INSTALLER_DEPS[@] installerDependencies
if [[ ${useUpdateVars} == false ]]; then if [[ ${useUpdateVars} == false ]]; then
welcomeDialogs welcomeDialogs
mkdir -p /etc/pihole/ mkdir -p /etc/pihole/
#
# Find IP used to route to outside world # Find IP used to route to outside world
findIPRoute findIPRoute
# Find interfaces and let the user choose one # Find interfaces and let the user choose one
@ -924,8 +942,6 @@ if [[ ${useUpdateVars} == false ]]; then
use4andor6 use4andor6
# Decide what upstream DNS Servers to use # Decide what upstream DNS Servers to use
setDNS setDNS
# Install packages used by the Pi-hole
install_dependent_packages PIHOLE_DEPS[@]
# Install and log everything to a file # Install and log everything to a file
installPihole | tee ${tmpLog} installPihole | tee ${tmpLog}
else else