1
0
mirror of https://github.com/wting/autojump synced 2024-10-27 20:34:07 +00:00

Merge pull request #100 from wting/merge_uninstalls

Merge uninstallation scripts
This commit is contained in:
Joel Schaerer 2012-02-08 12:22:43 -08:00
commit ddbcab4b3d
2 changed files with 60 additions and 89 deletions

View File

@ -15,8 +15,45 @@
#You should have received a copy of the GNU General Public License #You should have received a copy of the GNU General Public License
#along with autojump. If not, see <http://www.gnu.org/licenses/>. #along with autojump. If not, see <http://www.gnu.org/licenses/>.
function show_help { function help_msg {
echo "sudo ./uninstall.sh [--prefix /usr/local]" echo "sudo ./uninstall.sh [--prefix /usr/local]"
}
# zsh: remove _j from fpath
function remove_j {
# autocompletion file in the first directory of the FPATH variable
fail=true
for f in $fpath
do
if [ -f ${f}/_j ]; then
rm -v ${f}/_j || sudo rm -v ${f}/_j
break
fi
done
}
function remove_msg {
if [ "${2}" == "bash" ]; then
echo
echo "Please remove the line from ${bashrc_file} :"
echo
if [ "${1}" == "global" ]; then
echo -e "\tsource /etc/profile.d/autojump.bash"
elif [ "${1}" == "local" ]; then
echo -e "\tsource ~/etc/profile.d/autojump.bash"
fi
echo
elif [ "${2}" == "zsh" ]; then
echo
echo "Please remove the line from ~/.zshrc :"
echo
if [ "${1}" == "global" ]; then
echo -e "\tsource /etc/profile.d/autojump.zsh"
elif [ "${1}" == "local" ]; then
echo -e "\tsource ~/etc/profile.d/autojump.zsh"
fi
echo
fi
} }
# Default install directory. # Default install directory.
@ -35,7 +72,7 @@ bashrc_file=${user_home}/.bashrc
# Command line parsing # Command line parsing
while true; do while true; do
case "$1" in case "$1" in
-h|--help|-\?) show_help; exit 0;; -h|--help|-\?) help_msg; exit 0;;
-p|--prefix) -p|--prefix)
if [ $# -gt 1 ]; then if [ $# -gt 1 ]; then
prefix=$2; shift 2 prefix=$2; shift 2
@ -45,7 +82,7 @@ while true; do
fi fi
;; ;;
--) shift; break;; --) shift; break;;
-*) echo "invalid option: $1" 1>&2; show_help; exit 1;; -*) echo "invalid option: $1" 1>&2; help_msg; exit 1;;
*) break;; *) break;;
esac esac
done done
@ -53,19 +90,22 @@ done
# UNINSTALL AUTOJUMP # UNINSTALL AUTOJUMP
# global / custom location installations # global / custom location installations
if [ -d "${prefix}/share/autojump/" ]; then if [ -d "${prefix}/share/autojump/" ]; then
echo -e "\nUninstalling from ${prefix} ...\n" echo
echo "Uninstalling from ${prefix} ..."
echo
sudo rm -rv ${prefix}/share/autojump/ sudo rm -rv ${prefix}/share/autojump/
sudo rm -v ${prefix}/bin/jumpapplet sudo rm -v ${prefix}/bin/jumpapplet
sudo rm -v ${prefix}/bin/autojump sudo rm -v ${prefix}/bin/autojump
sudo rm -v ${prefix}/share/man/man1/autojump.1 sudo rm -v ${prefix}/share/man/man1/autojump.1
sudo rm -v /etc/profile.d/autojump.bash
sudo rm -v /etc/profile.d/autojump.sh sudo rm -v /etc/profile.d/autojump.sh
if [ -f /etc/profile.d/autojump.bash ]; then
echo sudo rm -v /etc/profile.d/autojump.bash
echo "Please remove the line from ${bashrc_file} :" remove_msg "global" "bash"
echo fi
echo -e "\tsource /etc/profile.d/autojump.bash" if [ -f /etc/profile.d/autojump.zsh ]; then
echo sudo rm -v /etc/profile.d/autojump.zsh
remove_msg "global" "zsh"
fi
fi fi
# local installations # local installations
@ -73,11 +113,13 @@ if [ -d ~/.autojump/ ]; then
echo echo
echo "Uninstalling from ~/.autojump/ ..." echo "Uninstalling from ~/.autojump/ ..."
echo echo
rm -rv ~/.autojump/
echo if [ -f ~/.autojump/etc/profile.d/autojump.bash ]; then
echo "Please remove the line from ${bashrc_file} :" rm -rv ~/.autojump/
echo remove_msg "local" "bash"
echo -e "\tsource ~/.autojump/profile.d/autojump.bash" fi
echo if [ -f ~/.autojump/etc/profile.d/autojump.zsh ]; then
rm -rv ~/.autojump/
remove_msg "local" "zsh"
fi
fi fi

View File

@ -1,71 +0,0 @@
#!/usr/bin/env zsh
#Copyright Joel Schaerer 2008, 2009
#This file is part of autojump
#autojump is free software: you can redistribute it and/or modify
#it under the terms of the GNU General Public License as published by
#the Free Software Foundation, either version 3 of the License, or
#(at your option) any later version.
#
#autojump is distributed in the hope that it will be useful,
#but WITHOUT ANY WARRANTY; without even the implied warranty of
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#GNU General Public License for more details.
#
#You should have received a copy of the GNU General Public License
#along with autojump. If not, see <http://www.gnu.org/licenses/>.
function show_help {
echo "sudo ./uninstall.zsh [--prefix /usr/local]"
}
# Default install directory.
prefix=/usr
# Command line parsing
while true; do
case "$1" in
-h|--help|-\?) show_help; exit 0;;
-p|--prefix) if [ $# -gt 1 ]; then
prefix=$2; shift 2
else
echo "--prefix or -p require an argument" 1>&2
exit 1
fi ;;
--) shift; break;;
-*) echo "invalid option: $1" 1>&2; show_help; exit 1;;
*) break;;
esac
done
# UNINSTALL AUTOJUMP
# global / custom location installations
if [[ -d "${prefix}/share/autojump/" ]]; then
echo -e "\nUninstalling from ${prefix} ...\n"
sudo rm -rv ${prefix}/share/autojump/
sudo rm -v ${prefix}/bin/jumpapplet
sudo rm -v ${prefix}/bin/autojump
sudo rm -v ${prefix}/share/man/man1/autojump.1
sudo rm -v /etc/profile.d/autojump.zsh
sudo rm -v /etc/profile.d/autojump.sh
fi
# local installations
if [[ -d ~/.autojump/ ]]; then
echo -e "\nUninstalling from ~/.autojump/ ...\n"
rm -rv ~/.autojump/
fi
# autocompletion file in the first directory of the FPATH variable
fail=true
for f in $fpath
do
if [[ -f ${f}/_j ]]; then
sudo rm -v ${f}/_j
break
fi
done
echo -e "\nPlease remove the line from ~/.zshrc :\n"
echo -e "\tsource /etc/profile.d/autojump.zsh"