|
@@ -8,7 +8,7 @@ local commandname="CHECK"
|
|
|
|
|
|
|
|
fn_add_mono_repo(){
|
|
fn_add_mono_repo(){
|
|
|
# TODO: Detect correct distro and version for source url
|
|
# TODO: Detect correct distro and version for source url
|
|
|
- if [ "${monocheck}" != "0" ]; then
|
|
|
|
|
|
|
+ if [ "${monostatus}" != "0" ]; then
|
|
|
fn_print_dots_nl "Adding Mono repository"
|
|
fn_print_dots_nl "Adding Mono repository"
|
|
|
sleep 0.5
|
|
sleep 0.5
|
|
|
sudo -v > /dev/null 2>&1
|
|
sudo -v > /dev/null 2>&1
|
|
@@ -65,19 +65,19 @@ fn_deps_detector(){
|
|
|
deptocheck="${javaversion}"
|
|
deptocheck="${javaversion}"
|
|
|
unset javacheck
|
|
unset javacheck
|
|
|
elif [ "${deptocheck}" == "mono-complete" ]; then
|
|
elif [ "${deptocheck}" == "mono-complete" ]; then
|
|
|
- if [[ -n "$(mono --version)" && "$(mono --version 2>&1 | grep -Po '(?<=version )\d')" -ge 5 ]]; then
|
|
|
|
|
|
|
+ if [ "$(command -v mono 2>/dev/null)" && "$(mono --version 2>&1 | grep -Po '(?<=version )\d')" -ge 5 ]; then
|
|
|
# Mono >= 5.0.0 already installed
|
|
# Mono >= 5.0.0 already installed
|
|
|
depstatus=0
|
|
depstatus=0
|
|
|
else
|
|
else
|
|
|
# Mono not installed or installed Mono < 5.0.0
|
|
# Mono not installed or installed Mono < 5.0.0
|
|
|
depstatus=1
|
|
depstatus=1
|
|
|
- monocheck=1
|
|
|
|
|
|
|
+ monostatus=1
|
|
|
fi
|
|
fi
|
|
|
elif [ -n "$(command -v apt 2>/dev/null)" ]; then
|
|
elif [ -n "$(command -v apt 2>/dev/null)" ]; then
|
|
|
dpkg-query -W -f='${Status}' "${deptocheck}" 2>/dev/null | grep -q -P '^install ok installed'
|
|
dpkg-query -W -f='${Status}' "${deptocheck}" 2>/dev/null | grep -q -P '^install ok installed'
|
|
|
depstatus=$?
|
|
depstatus=$?
|
|
|
- elif [ -n "$(command -v yum 2>/dev/null)" ]; then
|
|
|
|
|
- yum -q list installed "${deptocheck}" > /dev/null 2>&1
|
|
|
|
|
|
|
+ elif [ -n "$(command -v rpm 2>/dev/null)" ]; then
|
|
|
|
|
+ rpm -q list installed "${deptocheck}" > /dev/null 2>&1
|
|
|
depstatus=$?
|
|
depstatus=$?
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
@@ -113,13 +113,13 @@ fn_deps_email(){
|
|
|
array_deps_required+=( sendmail )
|
|
array_deps_required+=( sendmail )
|
|
|
elif [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
elif [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
|
array_deps_required+=( mailutils postfix )
|
|
array_deps_required+=( mailutils postfix )
|
|
|
- elif [ -n "$(command -v yum 2>/dev/null)" ]; then
|
|
|
|
|
|
|
+ elif [ -n "$(command -v rpm 2>/dev/null)" ]; then
|
|
|
array_deps_required+=( mailx postfix )
|
|
array_deps_required+=( mailx postfix )
|
|
|
fi
|
|
fi
|
|
|
else
|
|
else
|
|
|
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
|
array_deps_required+=( mailutils postfix )
|
|
array_deps_required+=( mailutils postfix )
|
|
|
- elif [ -n "$(command -v yum 2>/dev/null)" ]; then
|
|
|
|
|
|
|
+ elif [ -n "$(command -v rpm 2>/dev/null)" ]; then
|
|
|
array_deps_required+=( mailx postfix )
|
|
array_deps_required+=( mailx postfix )
|
|
|
fi
|
|
fi
|
|
|
fi
|
|
fi
|
|
@@ -133,7 +133,7 @@ fn_found_missing_deps(){
|
|
|
fn_print_error_nl "Checking dependencies: missing: ${red}${array_deps_missing[@]}${default}"
|
|
fn_print_error_nl "Checking dependencies: missing: ${red}${array_deps_missing[@]}${default}"
|
|
|
fn_script_log_error "Checking dependencies: missing: ${array_deps_missing[@]}"
|
|
fn_script_log_error "Checking dependencies: missing: ${array_deps_missing[@]}"
|
|
|
sleep 0.5
|
|
sleep 0.5
|
|
|
- if [ -n monocheck ]; then
|
|
|
|
|
|
|
+ if [ -n "${monostatus}" ]; then
|
|
|
fn_add_mono_repo
|
|
fn_add_mono_repo
|
|
|
fi
|
|
fi
|
|
|
sleep 0.5
|
|
sleep 0.5
|
|
@@ -151,6 +151,9 @@ fn_found_missing_deps(){
|
|
|
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
|
cmd="sudo dpkg --add-architecture i386; sudo apt update; sudo apt -y install ${array_deps_missing[@]}"
|
|
cmd="sudo dpkg --add-architecture i386; sudo apt update; sudo apt -y install ${array_deps_missing[@]}"
|
|
|
eval "${cmd}"
|
|
eval "${cmd}"
|
|
|
|
|
+ elif [ -n "$(command -v dnf 2>/dev/null)" ]; then
|
|
|
|
|
+ cmd="sudo dnf -y install ${array_deps_missing[@]}"
|
|
|
|
|
+ eval "${cmd}"
|
|
|
elif [ -n "$(command -v yum 2>/dev/null)" ]; then
|
|
elif [ -n "$(command -v yum 2>/dev/null)" ]; then
|
|
|
cmd="sudo yum -y install ${array_deps_missing[@]}"
|
|
cmd="sudo yum -y install ${array_deps_missing[@]}"
|
|
|
eval "${cmd}"
|
|
eval "${cmd}"
|
|
@@ -168,6 +171,8 @@ fn_found_missing_deps(){
|
|
|
fn_script_log_warn "$(whoami) does not have sudo access. Manually install dependencies."
|
|
fn_script_log_warn "$(whoami) does not have sudo access. Manually install dependencies."
|
|
|
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
|
echo " sudo dpkg --add-architecture i386; sudo apt update; sudo apt install ${array_deps_missing[@]}"
|
|
echo " sudo dpkg --add-architecture i386; sudo apt update; sudo apt install ${array_deps_missing[@]}"
|
|
|
|
|
+ elif [ -n "$(command -v dnf 2>/dev/null)" ]; then
|
|
|
|
|
+ echo " sudo dnf install ${array_deps_missing[@]}"
|
|
|
elif [ -n "$(command -v yum 2>/dev/null)" ]; then
|
|
elif [ -n "$(command -v yum 2>/dev/null)" ]; then
|
|
|
echo " sudo yum install ${array_deps_missing[@]}"
|
|
echo " sudo yum install ${array_deps_missing[@]}"
|
|
|
fi
|
|
fi
|
|
@@ -198,7 +203,7 @@ if [ "${function_selfname}" == "command_install.sh" ]; then
|
|
|
echo "================================="
|
|
echo "================================="
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
-# Check will only run if using apt or yum
|
|
|
|
|
|
|
+# Check will only run if using apt dnf or yum
|
|
|
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
|
# Generate array of missing deps
|
|
# Generate array of missing deps
|
|
|
array_deps_missing=()
|
|
array_deps_missing=()
|
|
@@ -302,14 +307,14 @@ if [ -n "$(command -v dpkg-query 2>/dev/null)" ]; then
|
|
|
fn_deps_email
|
|
fn_deps_email
|
|
|
fn_check_loop
|
|
fn_check_loop
|
|
|
|
|
|
|
|
-elif [ -n "$(command -v yum 2>/dev/null)" ]; then
|
|
|
|
|
|
|
+elif [ -n "$(command -v yum 2>/dev/null)" ]||[ -n "$(command -v dnf 2>/dev/null)" ]; then
|
|
|
# Generate array of missing deps
|
|
# Generate array of missing deps
|
|
|
array_deps_missing=()
|
|
array_deps_missing=()
|
|
|
|
|
|
|
|
# LinuxGSM requirements
|
|
# LinuxGSM requirements
|
|
|
if [ "${distroversion}" == "6" ]; then
|
|
if [ "${distroversion}" == "6" ]; then
|
|
|
array_deps_required=( curl wget util-linux-ng python file gzip bzip2 unzip binutils bc )
|
|
array_deps_required=( curl wget util-linux-ng python file gzip bzip2 unzip binutils bc )
|
|
|
- elif [[ "${distroname}" == *"Amazon Linux AMI"* ]]; then
|
|
|
|
|
|
|
+ elif [ "${distroname}" == *"Amazon Linux AMI"* ]; then
|
|
|
array_deps_required=( curl wget util-linux python27 file gzip bzip2 unzip binutils bc )
|
|
array_deps_required=( curl wget util-linux python27 file gzip bzip2 unzip binutils bc )
|
|
|
else
|
|
else
|
|
|
array_deps_required=( curl wget util-linux python file gzip bzip2 unzip binutils bc )
|
|
array_deps_required=( curl wget util-linux python file gzip bzip2 unzip binutils bc )
|