Install / Uninstall & Disable scripts

This commit is contained in:
dmarakom6 2021-04-03 11:58:06 +03:00
parent 0fb6e4dc36
commit 274d6bea97
2 changed files with 215 additions and 0 deletions

95
install.sh Normal file
View file

@ -0,0 +1,95 @@
#!usr//bin/env bash
:<<'info'
shellnotes - install.sh
(C) Dimitris Marakomihelakis
Released under the "All rights reserved" category. See the RIGHTS.txt file
in /docs/github/ for its full text.
info
dir="$(pwd)"
VER_TO_INSTALL=3.0 #This is used when updating, it will be changed in every new update
if [ -e ~/.shellnotes/.shellnotes.sh ]; then
echo "Shellnotes is already installed."
echo "If you want to update, please run 'update.sh'."
cd ~/.shellnotes/util/failed
g++ ifailed.cpp -o ifailed
~/.shellnotes/util/failed/ifailed
rm -f ifailed
cd $dir
else
mkdir ~/.shellnotes
mv docs ~/.shellnotes/
mv util ~/.shellnotes/
mv def ~/.shellnotes/
mv logs ~/.shellnotes/
mv ver ~/.shellnotes/
mv image ~/.shellnotes/
mv shellnotes.sh ~/.shellnotes/.shellnotes.sh
mv $0 ~/.shellnotes/
mv set_defaults.sh ~/.shellnotes/
mv bash_update.sh ~/.shellnotes/
mv uninstall.sh ~/.shellnotes/
mv update.sh ~/.shellnotes/
sudo mkdir /usr/local/man/man1 2>/dev/null
sudo cp ~/.shellnotes/docs/manpages/* /usr/local/man/man1/
sudo gzip -f /usr/local/man/man1/*.1
sudo mandb >/dev/null
sudo apt install g++ >/dev/null
sudo apt install python3
sudo apt install python3-pip
pip install pathlib
sudo apt update
chmod +x ~/.shellnotes.sh
echo "$VER_TO_INSTALL" > ~/.shellnotes/ver/.shellnotes_version
if [ -n "`$SHELL -c 'echo $ZSH_VERSION'`" ]; then
echo "source ~/.shellnotes/.shellnotes.sh" >> ~/.zshrc
sed -i '1 i\#!/bin/zsh' ~/.shellnotes/.shellnotes.sh
clear
echo "Shellnotes was successfully istalled"
echo "------------------------------------"
echo "Please do 'source ~/.zshrc' and reopen your terminal to start using shellnotes."
echo "have fun taking notes!"
elif [ -n "`$SHELL -c 'echo $BASH_VERSION'`" ]; then
echo "source ~/.shellnotes/.shellnotes.sh" >> ~/.bashrc
sed -i '1 i\#!/bin/bash' ~/.shellnotes/.shellnotes.sh
clear
echo "Shellnotes was successfully istalled"
echo "------------------------------------"
echo "Please do 'source ~/.bashrc' and reopen your terminal to start using shellnotes."
echo "have fun taking notes!"
elif [ -n "`$SHELL -c 'echo $CSH_VERSION'`" ]; then
echo "source ~/.shellnotes/.shellnotes.sh" >> ~/.cshrc
sed -i '1 i\#!/bin/csh' ~/.shellnotes/.shellnotes.sh
clear
echo "Shellnotes was successfully istalled"
echo "------------------------------------"
echo "Please do 'source ~/.cshrc' and reopen your terminal to start using shellnotes."
echo "have fun taking notes!"
elif [ -n "`$SHELL -c 'echo $KSH_VERSION'`" ]; then
echo "source ~/.shellnotes/.shellnotes.sh~/.shellnotes.sh" >> ~/.kshrc
sed -i '1 i\#!/bin/ksh' ~/.shellnotes/.shellnotes.sh
clear
echo "Shellnotes was successfully istalled"
echo "------------------------------------"
echo "Please do 'source ~/.kshrc' and reopen your terminal to start using shellnotes."
echo "have fun taking notes!"
elif [ -n "`$SHELL -c 'echo $FISH_VERSION'`" ]; then
echo "source ~/.shellnotes/.shellnotes.sh" >> ~/.fishrc
sed -i '1 i\#!/bin/fish' ~/.shellnotes/.shellnotes.sh
clear
echo "Shellnotes was successfully istalled"
echo "------------------------------------"
echo "Please do 'source ~/.fishrc' and reopen your terminal to start using shellnotes."
echo "have fun taking notes!"
else
clear
echo "Your shell is not supported by shellnotes."
echo "Installation Failed."
cd ~/.shellnotes/util/failed
g++ ifailed.cpp -o ifailed
~/.shellnotes/util/failed/ifailed
rm -f ifailed
cd $dir
fi
fi
cd $dir

120
uninstall.sh Normal file
View file

@ -0,0 +1,120 @@
#!usr//bin/env bash
:<<'info'
shellnotes - uninstall.sh
(C) Dimitris Marakomihelakis
Released under the "All rights reserved" category. See the RIGHTS.txt file
in /docs/github/ for its full text.
info
clear
echo "Choose an option"
echo "----------------"
echo "1.Uninstall shellnotes and delete all files."
echo "2.Disable shellnotes and all its commands, but keep the files in your system."
echo "3.Enable shellnotes."
echo ""
echo -n "[1,2,3]: " && read option
if [ $option = "1" ]; then
if [ -e ~/.shellnotes/.shellnotes.sh ]; then
echo -n "Are you sure you want to delete Shellnotes?[Y/N]: " && read delete
case $delete in y|Y|YES|Yes|yes )
cd ~/.shellnotes/
rm -rfv ~/.shellnotes/.* 2>/dev/null
rm -f ~/.shellnotes/* 2>/dev/null
rm -rf ~/.shellnotes/docs 2>/dev/null
rm -rf ~/.shellnotes/util 2>/dev/null
rm -rf ~/.shellnotes/ver 2>/dev/null
rm -rf ~/.shellnotes/logs 2>/dev/null
rm -rf ~/.shellnotes/def 2>/dev/null
rm -rf ~/.shellnotes/image 2>/dev/null
cd ..
rmdir .shellnotes
if [ -n "`$SHELL -c 'echo $ZSH_VERSION'`" ]; then
if grep -q 'source ~/.shellnotes/.shellnotes.sh' ~/.zshrc; then
sed -i '/shellnotes/d' .zshrc
clear
echo "Shellnotes is uninstalled"
echo "--------------------------"
echo "It was fun taking notes with you!"
fi
elif [ -n "`$SHELL -c 'echo $BASH_VERSION'`" ]; then
if grep -q 'source ~/.shellnotes/.shellnotes.sh' ~/.bashrc; then
sed -i '/shellnotes/d' ~/.bashrc
clear
echo "Shellnotes is uninstalled"
echo "--------------------------"
echo "It was fun taking notes with you!"
fi
elif [ -n "`$SHELL -c 'echo $CSH_VERSION'`" ]; then
if grep -q 'source ~/.shellnotes/.shellnotes.sh' ~/.cshrc; then
sed -i '/shellnotes/d' ~/.cshrc
clear
echo "Shellnotes is uninstalled"
echo "--------------------------"
echo "It was fun taking notes with you!"
fi
elif [ -n "`$SHELL -c 'echo $KSH_VERSION'`" ]; then
if grep -q 'source ~/.shellnotes/.shellnotes.sh' ~/.kshrc; then
sed -i '/shellnotes/d' ~/.kshrc
clear
echo "Shellnotes is uninstalled"
echo "--------------------------"
echo "It was fun taking notes with you!"
fi
elif [ -n "`$SHELL -c 'echo $FISH_VERSION'`" ]; then
if grep -q 'source ~/.shellnotes/.shellnotes.sh' ~/.fishrc; then
sed -i '/shellnotes/d' ~/.fishrc
clear
echo "Shellnotes is uninstalled"
echo "--------------------------"
echo "It was fun taking notes with you!"
fi
else
echo "Your shell is not supported."
cd ~/.shellnotes/util/failed
g++ uninfailed.cpp -o uninfailed
~/.shellnotes/util/failed/uninfailed
rm -f uninfailed
cd $dir
fi
esac
else
echo "An error occured."
echo "Shellnotes is not installed."
cd ~/.shellnotes/util/failed
g++ uninfailed.cpp -o uninfailed
~/.shellnotes/util/failed/uninfailed
rm -f uninfailed
cd $dir
fi
elif [ $option = "2" ]; then
if grep 'return' <~/.shellnotes/.shellnotes.sh >/dev/null; then
echo "Shellnotes is already disabled."
cd ~/.shellnotes/util/failed
g++ disfailed.cpp -o disfailed
~/.shellnotes/util/failed/disfailed
rm -f disfailed
cd $dir
else
sed -i '2 i\return 0 #Shellnotes is disabled by the user. Do not change this line.' ~/.shellnotes/.shellnotes.sh
echo "Shellnotes is now disabled. To enable, run this script again and choose option (3)."
fi
elif [ $option = "3" ]; then
if grep 'return' <~/.shellnotes/.shellnotes.sh >/dev/null; then
sed -i '2d' ~/.shellnotes/.shellnotes.sh
echo "Shellnotes is now enabled. Please restart your terminal."
else
echo "Shellnotes is already enabled."
cd ~/.shellnotes/util/failed
g++ enfailed.cpp -o enfailed
~/.shellnotes/util/failed/enfailed
rm -f enfailed
cd $dir
fi
else
echo "This is not an option."
fi