#!/bin/bash ######################################################## ######################################################## # installer for simple management a docker container ## # Author: Désiré Werner Menrath ## # Email: polunga40@unity-mail.de ## # Translate German to English with LibreTranslate ## # Translatefiles edit with Poedit ## # Use without warranty! ## ######################################################## ######################################################## Encoding=UTF-8 # i18n - Internationalization - Internationalisierung export TEXTDOMAIN=clidmanager export TEXTDOMAINDIR="/usr/share/locale" ############################################################################################################ ############################################################################################################ install() { dm=$(grep -i "alias dm='sudo clidmanager'" ~/.bashrc) if [ $? -ne 0 ] then echo "alias dm='sudo clidmanager'" >> ~/.bashrc echo "Alias dm angelegt... 15%" check="" sleep 0.8 else check="ok" fi cdm=$(grep -i "alias clidmanager='sudo clidmanager'" ~/.bashrc) if [ $? -ne 0 ] then echo "alias clidmanager='sudo clidmanager'" >> ~/.bashrc echo "Alias clidmanager angelegt... 30%" check1="" sleep 0.8 else check1="ok" fi dw=$(grep -i "alias dw='source docker_work'" ~/.bashrc) if [ $? -ne 0 ] then echo "alias dw='source docker_work'" >> ~/.bashrc echo "Alias clidmanager angelegt... 45%" check2="" sleep 0.8 else check2="ok" fi echo "$USER ALL = NOPASSWD:/usr/local/bin/clidmanager" > no_pwd_clidmanager sudo chown 0:0 no_pwd_clidmanager if [ $? -ne 0 ] then sed -i -e /"alias dm='sudo clidmanager'"/d ~/.bashrc && \ sed -i -e /"alias clidmanager='sudo clidmanager'"/d ~/.bashrc && \ sed -i -e /"alias dw='source docker_work'"/d ~/.bashrc rm no_pwd_clidmanager exit 0 else sudo cp -f clidmanager docker_work /usr/local/bin/ && sudo mv no_pwd_clidmanager /etc/sudoers.d/ if [ "$check" = "ok" ] && [ "$check1" = "ok" ] && [ "$check2" = "ok" ] then Bar=30 Bar2=60 echo "no_pwd_clidmanager installiert... $Bar%" sleep 0.8 echo "docker_work installiert... $Bar2%" sleep 0.8 echo "clidmanager installiert... 90%" sleep 0.8 echo echo "Update installiert. 100%" echo else Bar=60 Bar2=75 echo "no_pwd_clidmanager installiert... $Bar%" sleep 0.8 echo "docker_work installiert... $Bar2%" sleep 0.8 echo "clidmanager installiert... 90%" sleep 0.8 sudo usermod -aG docker $USER >/dev/null 2>&1 sleep 0.8 echo "Benutzer der Gruppe Docker hinzugefügt... 100%" echo echo "Bei der nächten anmeldung können sie clidmanager" echo echo "entweder über clidmanager oder über dm aufrufen." echo fi read -p "Enter zum beenden drücken..." fi } remove() { sudo rm -f /usr/local/bin/clidmanager /usr/local/bin/docker_work && sudo rm /etc/sudoers.d/no_pwd_clidmanager if [ $? -ne 0 ] then exit 0 else echo "docker_work entfernt.... 15%" sleep 0.5 echo "no_pwd_clidmanager.... 30%" sleep 0.5 echo "clidmanager entfernt.... 45%" sleep 0.5 sed -i -e /"alias dm='sudo clidmanager'"/d ~/.bashrc && \ echo "Alias dm entfernt.... 60%" sleep 0.5 sed -i -e /"alias clidmanager='sudo clidmanager'"/d ~/.bashrc && \ echo "Alias clidmanager entfernt.... 75%" sleep 0.5 sed -i -e /"alias dw='source docker_work'"/d ~/.bashrc echo "Alias dw entfernt.... 90%" sleep 0.5 echo "clidmanager vollständig entfernt.... 100%" sleep 0.5 echo read -p "Enter zum beenden drücken..." fi } which clidmanager >/dev/null if [ $? -eq 0 ] then echo "Möchten sie updaten/reinstallieren oder clidmanager deinstallieren?" echo echo "Update/reinstall: y drücken, deinstallieren r drücken" echo read -n 1 -s -r -p "Abbruch mit jeder anderen Taste..." result case $result in [y]* ) clear; install; exit;; [Y]* ) clear; install; exit;; [j]* ) clear; install; exit;; [J]* ) clear; install; exit;; [r]* ) clear; remove; exit;; [R]* ) clear; remove; exit;; esac clear else docker compose version >/dev/null 2>&1 if [ $? -ne 0 ] then echo "Docker Compose wird für die verwendung von clidmanager benötigt." echo "Bitte das Paket docker compose installieren." read -p "Zum beenden Enter drücken" exit 0 else install fi fi