auto-cpufreq/auto-cpufreq-installer

225 lines
6.8 KiB
Plaintext
Raw Normal View History

#!/usr/bin/env bash
# auto-cpufreq-installer:
# auto-cpufreq source code based installer
2020-02-09 14:44:06 +01:00
cd "$(dirname "$(readlink -f "$0")")" || exit 1
COLOUMNS="`tput cols`"
MID="$((COLOUMNS / 2))"
APPLICATIONS_PATH="/usr/share/applications"
VENV_PATH="/opt/auto-cpufreq"
SHARE_DIR="/usr/local/share/auto-cpufreq/"
2020-02-09 14:44:06 +01:00
AUTO_CPUFREQ_FILE="/usr/local/bin/auto-cpufreq"
AUTO_CPUFREQ_GTK_FILE=$AUTO_CPUFREQ_FILE-gtk
AUTO_CPUFREQ_GTK_DESKTOP_FILE="$(basename $AUTO_CPUFREQ_GTK_FILE).desktop"
IMG_FILE="/usr/share/pixmaps/auto-cpufreq.png"
ORG_FILE="/usr/share/polkit-1/actions/org.auto-cpufreq.pkexec.policy"
2020-02-09 14:44:06 +01:00
function header {
echo
printf "%0.s─" $(seq $((MID-(${#1}/2)-2)))
printf " $1 "
printf "%0.s─" $(seq $((MID-(${#1}/2)-2)))
echo; echo
}
function ask_operation {
header "auto-cpufreq installer"
echo "Welcome to auto-cpufreq tool installer."; echo
read -p "Select a key [I]nstall/[R]emove or press ctrl+c to quit: " answer
}
function manual_install {
if command -v lsb_release > /dev/null; then
distro="$(lsb_release -is)"
release="$(lsb_release -rs)"
codename="$(lsb_release -cs)"
fi
echo "Didn't detect Debian or RedHat or Arch based distro."; echo
echo "To complete installation, you need to:"
echo "Install: python3, pip3, python3-setuptools, gobject-introspection, cairo (or cairo-devel), gcc, and gtk3"; echo
echo "Install necessary Python packages:"
echo "pip3 install psutil click distro power requests PyGObject"
echo "Run following sequence of lines:"; echo
echo "-----"; echo
echo "pip3 install ."
echo "mkdir -p $SHARE_DIR"
echo "cp -r scripts/ $SHARE_DIR"; echo
echo "-----"; echo
echo "After which tool is installed, for full list of options run:";echo
echo "auto-cpufreq --help"
echo; printf "%0.s─" $(seq $COLOUMNS); echo
echo "Consider creating a feature request to add support for your distro:"
echo "https://github.com/AdnanHodzic/auto-cpufreq/issues/new"; echo
echo "Make sure to include following information:"; echo
echo "Distribution: $distro"
echo "Release: $release"
echo "Codename: $codename"
echo
exit 1
}
function tool_install {
echo
# First argument is the distro
function detected_distro {
header "Detected $1 distribution"
header "Setting up Python environment"
}
if [ -f /etc/debian_version ]; then
detected_distro "Debian based"
apt install python3-dev python3-pip python3-venv python3-setuptools dmidecode libgirepository1.0-dev libcairo2-dev libgtk-3-dev gcc -y
elif [ -f /etc/redhat-release ]; then
detected_distro "RedHat based"
if [ -f /etc/centos-release ]; then yum install platform-python-devel
else yum install python-devel
fi
yum install dmidecode gcc cairo-devel gobject-introspection-devel cairo-gobject-devel gtk3-devel
elif [ -f /etc/solus-release ]; then
detected_distro "Solus"
eopkg install pip python3 python3-devel dmidecode gobject-introspection-devel libcairo-devel gcc libgtk-3
eopkg install -c system.devel
elif [ -f /etc/arch-release ]; then
detected_distro "Arch Linux based"
pacman -S --noconfirm --needed python python-pip python-setuptools base-devel dmidecode gobject-introspection gtk3 gcc
elif [ -f /etc/os-release ];then
. /etc/os-release
case $ID in
opensuse-leap)
detected_distro "OpenSUSE"
zypper install -y python3 python3-pip python3-setuptools python3-devel gcc dmidecode gobject-introspection-devel python3-cairo-devel gtk3 gtk3-devel
;;
opensuse-tumbleweed)
detected_distro "OpenSUSE"
zypper install -y python38 python3-pip python3-setuptools python3-devel gcc dmidecode gobject-introspection-devel python3-cairo-devel gtk3 gtk3-devel
;;
void)
detected_distro "Void Linux"
xbps-install -Sy python3 python3-pip python3-devel python3-setuptools base-devel dmidecode cairo-devel gobject-introspection gcc gtk+3
;;
nixos)
echo "NixOS detected"
echo "This installer is not supported on NixOS."
echo "Please refer to the install instructions for NixOS at https://github.com/AdnanHodzic/auto-cpufreq#nixos"
exit 1
;;
*) manual_install;;
esac
else # In case /etc/os-release doesn't exist
manual_install
fi
header "Installing necessary Python packages"
venv_dir=$VENV_PATH/venv
mkdir -p "$venv_dir"
python3 -m venv "$venv_dir"
source "$venv_dir/bin/activate"
python3 -m pip install --upgrade pip wheel
header "Installing auto-cpufreq tool"
git config --global --add safe.directory $(pwd)
python -m pip install .
2020-02-09 14:44:06 +01:00
mkdir -p $SHARE_DIR
cp -r scripts/ $SHARE_DIR
cp -r images/ $SHARE_DIR
cp images/icon.png $IMG_FILE
cp scripts/$(basename $ORG_FILE) $(dirname $ORG_FILE)
# this is necessary since we need this script before we can run auto-cpufreq itself
cp scripts/auto-cpufreq-venv-wrapper $AUTO_CPUFREQ_FILE
chmod a+x $AUTO_CPUFREQ_FILE
cp scripts/start_app $AUTO_CPUFREQ_GTK_FILE
chmod a+x $AUTO_CPUFREQ_GTK_FILE
desktop-file-install --dir=$APPLICATIONS_PATH scripts/$AUTO_CPUFREQ_GTK_DESKTOP_FILE
update-desktop-database $APPLICATIONS_PATH
header "auto-cpufreq tool successfully installed"
echo "For list of options, run:"
echo "auto-cpufreq --help"; echo
2020-02-09 14:44:06 +01:00
}
function tool_remove {
# stop any running auto-cpufreq argument (daemon/live/monitor)
tool_arg_pids=($(pgrep -f "auto-cpufreq --"))
for pid in "${tool_arg_pids[@]}"; do [ $pid != $$ ] && kill "$pid"; done
function remove_directory {
[ -d $1 ] && rm -rf $1
}
function remove_file {
[ -f $1 ] && rm $1
}
srv_remove="$AUTO_CPUFREQ_FILE-remove"
# run uninstall in case of installed daemon
if [ -f $srv_remove -o -f $AUTO_CPUFREQ_FILE ]; then
eval "$AUTO_CPUFREQ_FILE --remove"
else
echo; echo "Couldn't remove the auto-cpufreq daemon, $srv_remove do not exist."
fi
# remove auto-cpufreq and all its supporting files
remove_directory $SHARE_DIR
remove_file "$AUTO_CPUFREQ_FILE-install"
remove_file $srv_remove
remove_file $AUTO_CPUFREQ_FILE
remove_file $AUTO_CPUFREQ_GTK_FILE
remove_file $IMG_FILE
remove_file $ORG_FILE
remove_file "/usr/local/bin/cpufreqctl.auto-cpufreq"
remove_file "/var/run/auto-cpufreq.stats"
remove_file "$APPLICATIONS_PATH/$AUTO_CPUFREQ_GTK_DESKTOP_FILE"
update-desktop-database $APPLICATIONS_PATH
Gtk Application for auto-cpufreq (#486) * Squashed commit of the following: commit ec7e087b343f33af7a92b190ed666845dab60f20 Merge: 32b6e63 9912f9d Author: shadeyg56 <31134255+shadeyg56@users.noreply.github.com> Date: Mon Feb 13 14:11:21 2023 -0600 Merge branch 'AdnanHodzic:master' into gui commit 32b6e632830fe8a7c3a3ce601ef2ba5b254572d7 Author: shadeyg56 <shadeyg56@gmail.com> Date: Mon Feb 13 14:10:34 2023 -0600 increase MenuButton size commit 12a2cda82a5f56bfbb532c893d822341e9b2d7cb Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 23:35:33 2023 -0600 set app icon commit d170d07e866644bcb662bf342530c497390f0303 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 23:35:15 2023 -0600 remove unused pixbuf commit 993333fb5aad448103e24e38bc85fb04e7e4dd0c Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 22:43:56 2023 -0600 fix MenuButton icon commit d1b8bd74caab2cf216bf40bdfc35ef3520e891c7 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 17:19:32 2023 -0600 add icon commit 13f43fa0c7d59b2405bac688119690d01a7ec019 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 17:19:10 2023 -0600 add pkexec policy and change wrapper for gui commit 4ddbb9c6667aa97bb7cd242fb4a376e061c9b308 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 14:09:35 2023 -0600 add icon to destop entry and about dialog commit 9912f9d80935bb51c9cb759ab95c9ba7fde15524 Author: Siddharth Kumar Jha <101443068+siddharthkumarjha@users.noreply.github.com> Date: Sun Feb 12 12:55:14 2023 +0530 Update Readme for issue of auto-cpufreq not autostarting on AUR (#485) * Updated Readme for issue auto-cpufreq not autostarting Added solution to issue https://github.com/AdnanHodzic/auto-cpufreq/issues/463 * Fixed minor errors * Fixed auto-cpufreq.serivce Typo * Reprashed text as per suggestion commit 4379024adab282fcdb58a7091df2a6adf833e700 Author: shadeyg56 <shadeyg56@gmail.com> Date: Tue Feb 7 19:06:59 2023 -0600 add removal of gui and desktop entry commit 42693703324762418a7f810f04a3d77803afa236 Author: shadeyg56 <shadeyg56@gmail.com> Date: Mon Feb 6 23:28:44 2023 -0600 CPU stats refresh and style stuff commit 7149db72c0bb39af57ceccb16df8e9164c77fae3 Author: shadeyg56 <shadeyg56@gmail.com> Date: Mon Feb 6 23:10:29 2023 -0600 daemon detection, daemon install/removal, and layout stuff commit f7e03c9bcc2e2578703807ceeb7a652903571b71 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 19:26:42 2023 -0600 improve AboutDialog Please enter the commit message for your changes. Lines starting commit cb8cfe7b3194273dea229fe550fdf66cd6af82fa Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 18:28:19 2023 -0600 add dropdown menu and (not completed) about dialog commit ade1fed790f2ebbaae4e92ce8879ab812c9b2850 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 15:57:17 2023 -0600 actually fix css commit 67c8c97bcf2f2f408431bc162c38dee5c278ed0b Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 15:54:47 2023 -0600 fix css commit c65eac3472f724bed10a0f530b2a828463bbe7fe Author: Adnan Hodzic <adnan@hodzic.org> Date: Sun Feb 5 09:29:19 2023 +0100 Update readme, install psutil lib for power_helper commit bd3feae38824764155d31ccd6debc1fcf18830da Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 00:42:52 2023 -0600 add desktop entry for gui commit 5426a6a443c90a9d65b858ae1951219898cba332 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 00:33:08 2023 -0600 add gui to install file, update required packages, and create wrapper script commit 84124dfa605b930b3722ed852486cbe11c254092 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sat Feb 4 23:28:24 2023 -0600 create system tray commit 7b0d46d8ddafdeff9006a1ad10ccd99c24b9eb1e Author: shadeyg56 <shadeyg56@gmail.com> Date: Sat Feb 4 23:28:01 2023 -0600 small changes to layout commit cd51ea317085ac6ea5b4918ef057ad4c19a71640 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sat Feb 4 00:44:08 2023 -0600 css styling support commit 136b449febece04c036b72b4a14ccceb422f62dd Author: shadeyg56 <shadeyg56@gmail.com> Date: Sat Feb 4 00:14:52 2023 -0600 several improvements commit f9f7170391e1abc1499b7d5ae93327999e013730 Merge: 242a8d0 8f343df Author: shadeyg56 <31134255+shadeyg56@users.noreply.github.com> Date: Fri Feb 3 22:44:01 2023 -0600 Merge branch 'AdnanHodzic:master' into gui commit 8f343df8b8b82846364fbc14b2fc2e5144abebaa Merge: dadfae0 b38919f Author: shadeyg56 <31134255+shadeyg56@users.noreply.github.com> Date: Fri Feb 3 14:54:11 2023 -0600 Merge pull request #481 from shadeyg56/master Fix uncaught error in checking for snap commit b38919f56b6329c81c4c96eabe9bfd27d590d16e Author: shadeyg56 <shadeyg56@gmail.com> Date: Fri Feb 3 14:48:01 2023 -0600 fix uncaught error in checking for snap commit 242a8d0401d1ffd00c982aa731c04ef7ea726fee Merge: f50b982 dadfae0 Author: shadeyg56 <31134255+shadeyg56@users.noreply.github.com> Date: Fri Feb 3 14:19:01 2023 -0600 Merge branch 'AdnanHodzic:master' into gui commit dadfae087f102c0f69329d5ad79e3a648c35b459 Author: Adnan Hodzic <adnan@hodzic.org> Date: Fri Feb 3 20:02:03 2023 +0100 Update README with new config options commit 471611de7da97b7da8580646612d4f910311e16e Author: Adnan Hodzic <adnan@hodzic.org> Date: Fri Feb 3 18:44:33 2023 +0100 Remove GNOME Power Profiles Daemon performance install commit f574257dc475f942fa39179787acf09c567e76dd Author: Adnan Hodzic <adnan@hodzic.org> Date: Fri Feb 3 18:32:04 2023 +0100 Remove install_performance flag commit 04b878360c7dff4b0e44fc8935e9667a597806b4 Author: Adnan Hodzic <adnan@hodzic.org> Date: Fri Feb 3 17:52:20 2023 +0100 Snap tag 2.0-beta + governor_override improvements commit fe21ddf24585164ed0f8cfa8f9ad7d3db627ab79 Author: Adnan Hodzic <adnan@hodzic.org> Date: Fri Feb 3 17:28:12 2023 +0100 Working governor override on Snap package commit f50b9829e5438bb96ded73775668fa048fcd3951 Merge: a98225e 69ef913 Author: shadeyg56 <31134255+shadeyg56@users.noreply.github.com> Date: Thu Feb 2 18:19:10 2023 -0600 Merge branch 'AdnanHodzic:master' into gui commit a98225e7280802c2fb09a9a52a40f7e55b26b3b1 Author: shadeyg56 <shadeyg56@gmail.com> Date: Thu Feb 2 18:18:43 2023 -0600 Revert "basic GUI" This reverts commit d2610c921b7209fde7d7be13f187510631cc33b3. commit 9606472fdbbff6dd551cd291b37349df17098d2e Author: shadeyg56 <shadeyg56@gmail.com> Date: Thu Feb 2 18:13:41 2023 -0600 basic gui commit d2610c921b7209fde7d7be13f187510631cc33b3 Author: shadeyg56 <shadeyg56@gmail.com> Date: Thu Feb 2 17:47:55 2023 -0600 basic GUI commit bdbe12018b380ed70f100729c9ea3732ba24f572 Author: shadeyg56 <shadeyg56@gmail.com> Date: Thu Feb 2 15:21:42 2023 -0600 rename folder commit 31095c472e4af734a3a601f804787de89ad47964 Author: shadeyg56 <shadeyg56@gmail.com> Date: Wed Jan 25 23:39:52 2023 -0600 add tray * Squashed commit of the following: commit e2eaffc32b382f67f97d2e25858b5b5a4abffeae Author: shadeyg56 <shadeyg56@gmail.com> Date: Mon Feb 20 23:08:57 2023 -0600 move text to be inline with menu commit e1dae9d9de25f13c51dd983f5b4b0fbdf1bf0349 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 19 17:50:26 2023 -0600 move distro info to top of system stats box commit 959405bedc52dce14f5fd70d2fcd5fbee57e59a5 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 19 17:49:15 2023 -0600 fix app name on GNOME commit 346093dfce6ce0bfa1954ed3bb6f5364250d05b7 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 19 17:01:03 2023 -0600 fix snap dependencies commit ec7e087b343f33af7a92b190ed666845dab60f20 Merge: 32b6e63 9912f9d Author: shadeyg56 <31134255+shadeyg56@users.noreply.github.com> Date: Mon Feb 13 14:11:21 2023 -0600 Merge branch 'AdnanHodzic:master' into gui commit 32b6e632830fe8a7c3a3ce601ef2ba5b254572d7 Author: shadeyg56 <shadeyg56@gmail.com> Date: Mon Feb 13 14:10:34 2023 -0600 increase MenuButton size commit 12a2cda82a5f56bfbb532c893d822341e9b2d7cb Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 23:35:33 2023 -0600 set app icon commit d170d07e866644bcb662bf342530c497390f0303 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 23:35:15 2023 -0600 remove unused pixbuf commit 993333fb5aad448103e24e38bc85fb04e7e4dd0c Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 22:43:56 2023 -0600 fix MenuButton icon commit d1b8bd74caab2cf216bf40bdfc35ef3520e891c7 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 17:19:32 2023 -0600 add icon commit 13f43fa0c7d59b2405bac688119690d01a7ec019 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 17:19:10 2023 -0600 add pkexec policy and change wrapper for gui commit 4ddbb9c6667aa97bb7cd242fb4a376e061c9b308 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 12 14:09:35 2023 -0600 add icon to destop entry and about dialog commit 4379024adab282fcdb58a7091df2a6adf833e700 Author: shadeyg56 <shadeyg56@gmail.com> Date: Tue Feb 7 19:06:59 2023 -0600 add removal of gui and desktop entry commit 42693703324762418a7f810f04a3d77803afa236 Author: shadeyg56 <shadeyg56@gmail.com> Date: Mon Feb 6 23:28:44 2023 -0600 CPU stats refresh and style stuff commit 7149db72c0bb39af57ceccb16df8e9164c77fae3 Author: shadeyg56 <shadeyg56@gmail.com> Date: Mon Feb 6 23:10:29 2023 -0600 daemon detection, daemon install/removal, and layout stuff commit f7e03c9bcc2e2578703807ceeb7a652903571b71 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 19:26:42 2023 -0600 improve AboutDialog Please enter the commit message for your changes. Lines starting commit cb8cfe7b3194273dea229fe550fdf66cd6af82fa Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 18:28:19 2023 -0600 add dropdown menu and (not completed) about dialog commit ade1fed790f2ebbaae4e92ce8879ab812c9b2850 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 15:57:17 2023 -0600 actually fix css commit 67c8c97bcf2f2f408431bc162c38dee5c278ed0b Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 15:54:47 2023 -0600 fix css commit bd3feae38824764155d31ccd6debc1fcf18830da Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 00:42:52 2023 -0600 add desktop entry for gui commit 5426a6a443c90a9d65b858ae1951219898cba332 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sun Feb 5 00:33:08 2023 -0600 add gui to install file, update required packages, and create wrapper script commit 84124dfa605b930b3722ed852486cbe11c254092 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sat Feb 4 23:28:24 2023 -0600 create system tray commit 7b0d46d8ddafdeff9006a1ad10ccd99c24b9eb1e Author: shadeyg56 <shadeyg56@gmail.com> Date: Sat Feb 4 23:28:01 2023 -0600 small changes to layout commit cd51ea317085ac6ea5b4918ef057ad4c19a71640 Author: shadeyg56 <shadeyg56@gmail.com> Date: Sat Feb 4 00:44:08 2023 -0600 css styling support commit 136b449febece04c036b72b4a14ccceb422f62dd Author: shadeyg56 <shadeyg56@gmail.com> Date: Sat Feb 4 00:14:52 2023 -0600 several improvements commit f9f7170391e1abc1499b7d5ae93327999e013730 Merge: 242a8d0 8f343df Author: shadeyg56 <31134255+shadeyg56@users.noreply.github.com> Date: Fri Feb 3 22:44:01 2023 -0600 Merge branch 'AdnanHodzic:master' into gui commit 242a8d0401d1ffd00c982aa731c04ef7ea726fee Merge: f50b982 dadfae0 Author: shadeyg56 <31134255+shadeyg56@users.noreply.github.com> Date: Fri Feb 3 14:19:01 2023 -0600 Merge branch 'AdnanHodzic:master' into gui commit f50b9829e5438bb96ded73775668fa048fcd3951 Merge: a98225e 69ef913 Author: shadeyg56 <31134255+shadeyg56@users.noreply.github.com> Date: Thu Feb 2 18:19:10 2023 -0600 Merge branch 'AdnanHodzic:master' into gui commit a98225e7280802c2fb09a9a52a40f7e55b26b3b1 Author: shadeyg56 <shadeyg56@gmail.com> Date: Thu Feb 2 18:18:43 2023 -0600 Revert "basic GUI" This reverts commit d2610c921b7209fde7d7be13f187510631cc33b3. commit 9606472fdbbff6dd551cd291b37349df17098d2e Author: shadeyg56 <shadeyg56@gmail.com> Date: Thu Feb 2 18:13:41 2023 -0600 basic gui commit d2610c921b7209fde7d7be13f187510631cc33b3 Author: shadeyg56 <shadeyg56@gmail.com> Date: Thu Feb 2 17:47:55 2023 -0600 basic GUI commit bdbe12018b380ed70f100729c9ea3732ba24f572 Author: shadeyg56 <shadeyg56@gmail.com> Date: Thu Feb 2 15:21:42 2023 -0600 rename folder commit 31095c472e4af734a3a601f804787de89ad47964 Author: shadeyg56 <shadeyg56@gmail.com> Date: Wed Jan 25 23:39:52 2023 -0600 add tray * fix undefined var * app no longer needs root to start, only asks when needed * fix wmclass * create file in /bin for gui * fix bug with radio buttons and pkexec * snap: update snap to package GTK gui * update setup.py * requirements.txt: fix conflict * Merge master into dev * gui: fix pkexec on launch
2023-08-15 17:58:16 +02:00
# remove python virtual environment
remove_directory $venv_path
2020-02-09 14:44:06 +01:00
echo; echo "auto-cpufreq tool and all its supporting files successfully removed"; echo
2020-02-09 14:44:06 +01:00
}
# root check
if ((EUID != 0)); then
echo; echo "Must be run as root (i.e: 'sudo $0')."; echo
exit 1
fi
2020-02-09 14:44:06 +01:00
if [[ -z "$1" ]]; then ask_operation
2020-02-09 14:44:06 +01:00
else
case "$1" in
--install) answer="i";;
--remove) answer="r";;
*) ask_operation;;
2020-02-09 14:44:06 +01:00
esac
fi
case $answer in
I|i) tool_install;;
R|r) tool_remove;;
*)
echo "Unknown key, aborting ..."; echo
exit 1
;;
esac