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

139 lines
3.8 KiB
Bash
Raw Normal View History

#!/usr/bin/env zsh
2009-05-13 09:32:19 +00:00
#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/>.
2010-06-21 14:29:57 +00:00
function show_help {
echo "sudo ./install.zsh [--local] [--prefix /usr/local]"
2010-06-21 14:29:57 +00:00
}
prefix=/usr
local=false
2010-06-21 14:29:57 +00:00
#command line parsing
while true; do
case "$1" in
-h|--help|-\?)
show_help
exit 0
;;
-l|--local)
local=true
prefix=~/.autojump
shift
;;
-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
2011-12-23 19:47:58 +00:00
exit 1
;;
*)
break
;;
esac
2010-06-21 14:29:57 +00:00
done
if [[ ${UID} != 0 ]] && ! ${local}; then
echo "Please rerun as root or use the --local option."
exit 1
fi
echo "Installing main files to ${prefix} ..."
2010-06-21 14:29:57 +00:00
# add git revision to autojump
2011-09-16 06:35:20 +00:00
./git-version.sh
2011-12-23 19:47:58 +00:00
mkdir -p ${prefix}/share/autojump/
mkdir -p ${prefix}/bin/
mkdir -p ${prefix}/share/man/man1/
cp icon.png ${prefix}/share/autojump/
cp jumpapplet ${prefix}/bin/
cp autojump ${prefix}/bin/
cp autojump.1 ${prefix}/share/man/man1/
2009-03-29 20:47:15 +00:00
# autocompletion file in the first directory of the FPATH variable
if ( ! ${local} ); then
2011-12-23 19:47:58 +00:00
fail=true
for f in $fpath
do
cp _j $f && fail=false && break
2011-12-23 19:47:58 +00:00
done
if $fail
then
echo "Couldn't find a place to put the autocompletion file, please copy _j into your \$fpath"
2011-12-23 19:47:58 +00:00
echo "Still trying to install the rest of autojump..."
else
echo "Installed autocompletion file to $f"
fi
2009-03-29 20:47:15 +00:00
2011-12-23 19:47:58 +00:00
if [ -d "/etc/profile.d" ]; then
cp -v autojump.zsh /etc/profile.d/
cp -v autojump.sh /etc/profile.d/
echo
echo "Add the following line to your ~/.zshrc:"
echo
echo -e "\tsource /etc/profile.d/autojump.zsh"
2011-12-23 19:47:58 +00:00
echo
echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
2009-03-29 20:47:15 +00:00
else
2011-12-23 19:47:58 +00:00
echo "Your distribution does not have a /etc/profile.d directory, the default that we install one of the scripts to. Would you like us to copy it into your ~/.zshrc file to make it work? (If you have done this once before, delete the old version before doing it again.) [y/n]"
read ans
if [ ${#ans} -gt 0 ]; then
if [ $ans = "y" -o $ans = "Y" -o $ans = "yes" -o $ans = "Yes" ]; then
echo "" >> ~/.zshrc
echo "#autojump" >> ~/.zshrc
cat autojump.zsh >> ~/.zshrc
echo "Done!"
echo
echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
else
echo "Then you need to put autojump.zsh, or the code from it, somewhere where it will get read. Good luck!"
fi
2011-12-23 19:47:58 +00:00
else
echo "Then you need to put autojump.zsh, or the code from it, somewhere where it will get read. Good luck!"
fi
2009-03-29 20:47:15 +00:00
fi
2011-12-23 19:47:58 +00:00
else
mkdir -p ${prefix}/functions/
cp _j ${prefix}/functions/
mkdir -p ${prefix}/etc/profile.d/
cp autojump.zsh ${prefix}/etc/profile.d/
cp autojump.sh ${prefix}/etc/profile.d/
echo
2011-12-23 19:47:58 +00:00
echo "Add the following lines to your ~/.zshrc:"
echo
echo -e "\tpath=(${prefix}/bin \${path})"
echo -e "\tfpath=(${prefix}/functions \${fpath})"
echo -e "\tsource ${prefix}/etc/profile.d/autojump.zsh"
2011-12-23 19:47:58 +00:00
echo
echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
echo
echo "To remove autojump, delete the ${prefix} directory and relevant lines from ~/.zshrc."
2009-03-29 20:47:15 +00:00
fi