diff options
Diffstat (limited to 'gosearch.install')
-rw-r--r-- | gosearch.install | 51 |
1 files changed, 45 insertions, 6 deletions
diff --git a/gosearch.install b/gosearch.install index e069800ced3a..662dedec180a 100644 --- a/gosearch.install +++ b/gosearch.install @@ -1,17 +1,56 @@ +colorize() { + # prefer terminal safe colored and bold text when tput is supported + if tput setaf 0 &>/dev/null; then + ALL_OFF="$(tput sgr0)" + BOLD="$(tput bold)" + BLUE="${BOLD}$(tput setaf 4)" + GREEN="${BOLD}$(tput setaf 2)" + RED="${BOLD}$(tput setaf 1)" + YELLOW="${BOLD}$(tput setaf 3)" + else + ALL_OFF="\e[0m" + BOLD="\e[1m" + BLUE="${BOLD}\e[34m" + GREEN="${BOLD}\e[32m" + RED="${BOLD}\e[31m" + YELLOW="${BOLD}\e[33m" + fi + readonly ALL_OFF BOLD BLUE GREEN RED YELLOW +} + +error() { + colorize + local mesg=$1; shift + printf "\n${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n\n" "$@" >&2 +} + +cmp_krnl_ver() { + # check kernel version installed + local krnl_ver="$(uname -r)" + local compare="$(printf "5.1\n$krnl_ver")" + if [ "$compare" != "$(sort --version-sort <<< "$compare")" ]; then + error "This program needs kernel version >= 5.1 \nand the current installed version is $krnl_ver" + fi +} + post_install() { - systemctl enable gosearch.service - systemctl start gosearch.service + cmp_krnl_ver + + systemctl enable gosearch.service + systemctl start gosearch.service } pre_upgrade() { - systemctl stop gosearch.service + systemctl stop gosearch.service } post_upgrade() { - systemctl daemon-reload - systemctl start gosearch.service + cmp_krnl_ver + + systemctl daemon-reload + systemctl start gosearch.service } pre_remove() { - systemctl stop gosearch.service + systemctl stop gosearch.service } |