mirror of
https://github.com/pi-hole/pi-hole.git
synced 2024-11-15 02:42:58 +00:00
Change initial install script order:
1. Ensure we have a compatible package manager 2. Install required packages for os_check to run (we need dnsutils and grep for this 3. Try to install FTL 4. FTL installed? Install installer dependencies and continue as normal - no other dependencies are installed until user has gone through all whiptails Signed-off-by: Adam Warner <me@adamwarner.co.uk>
This commit is contained in:
parent
d68a2ffaf3
commit
3ad5097b12
1 changed files with 28 additions and 29 deletions
|
@ -2643,9 +2643,36 @@ main() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check for supported distribution
|
# Check for supported package managers so that we may install dependencies
|
||||||
package_manager_detect
|
package_manager_detect
|
||||||
|
|
||||||
|
# Notify user of package availability
|
||||||
|
notify_package_updates_available
|
||||||
|
|
||||||
|
# Install packages necessary to perform os_check
|
||||||
|
install_dependent_packages "${OS_CHECK_DEPS[@]}"
|
||||||
|
|
||||||
|
# Check that the installed OS is officially supported - display warning if not
|
||||||
|
os_check
|
||||||
|
|
||||||
|
# Check if FTL is installed - do this early on as FTL is a hard dependency for Pi-hole
|
||||||
|
local funcOutput
|
||||||
|
funcOutput=$(get_binary_name) #Store output of get_binary_name here
|
||||||
|
local binary
|
||||||
|
binary="pihole-FTL${funcOutput##*pihole-FTL}" #binary name will be the last line of the output of get_binary_name (it always begins with pihole-FTL)
|
||||||
|
local theRest
|
||||||
|
theRest="${funcOutput%pihole-FTL*}" # Print the rest of get_binary_name's output to display (cut out from first instance of "pihole-FTL")
|
||||||
|
if ! FTLdetect "${binary}" "${theRest}"; then
|
||||||
|
printf " %b FTL Engine not installed\\n" "${CROSS}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Install packages used by this installation script
|
||||||
|
install_dependent_packages "${INSTALLER_DEPS[@]}"
|
||||||
|
|
||||||
|
# Check if SELinux is Enforcing
|
||||||
|
checkSelinux
|
||||||
|
|
||||||
# If the setup variable file exists,
|
# If the setup variable file exists,
|
||||||
if [[ -f "${setupVars}" ]]; then
|
if [[ -f "${setupVars}" ]]; then
|
||||||
# if it's running unattended,
|
# if it's running unattended,
|
||||||
|
@ -2661,22 +2688,6 @@ main() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Start the installer
|
|
||||||
# Notify user of package availability
|
|
||||||
notify_package_updates_available
|
|
||||||
|
|
||||||
# Install packages necessary to perform os_check
|
|
||||||
install_dependent_packages "${OS_CHECK_DEPS[@]}"
|
|
||||||
|
|
||||||
# Check that the installed OS is officially supported - display warning if not
|
|
||||||
os_check
|
|
||||||
|
|
||||||
# Install packages used by this installation script
|
|
||||||
install_dependent_packages "${INSTALLER_DEPS[@]}"
|
|
||||||
|
|
||||||
# Check if SELinux is Enforcing
|
|
||||||
checkSelinux
|
|
||||||
|
|
||||||
if [[ "${useUpdateVars}" == false ]]; then
|
if [[ "${useUpdateVars}" == false ]]; then
|
||||||
# Display welcome dialogs
|
# Display welcome dialogs
|
||||||
welcomeDialogs
|
welcomeDialogs
|
||||||
|
@ -2740,18 +2751,6 @@ main() {
|
||||||
# Create the pihole user
|
# Create the pihole user
|
||||||
create_pihole_user
|
create_pihole_user
|
||||||
|
|
||||||
# Check if FTL is installed - do this early on as FTL is a hard dependency for Pi-hole
|
|
||||||
local funcOutput
|
|
||||||
funcOutput=$(get_binary_name) #Store output of get_binary_name here
|
|
||||||
local binary
|
|
||||||
binary="pihole-FTL${funcOutput##*pihole-FTL}" #binary name will be the last line of the output of get_binary_name (it always begins with pihole-FTL)
|
|
||||||
local theRest
|
|
||||||
theRest="${funcOutput%pihole-FTL*}" # Print the rest of get_binary_name's output to display (cut out from first instance of "pihole-FTL")
|
|
||||||
if ! FTLdetect "${binary}" "${theRest}"; then
|
|
||||||
printf " %b FTL Engine not installed\\n" "${CROSS}"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Install and log everything to a file
|
# Install and log everything to a file
|
||||||
installPihole | tee -a /proc/$$/fd/3
|
installPihole | tee -a /proc/$$/fd/3
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue