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

add local install, otherwise global install if run as root, text/formatting changes

This commit is contained in:
William Ting 2011-12-23 14:04:04 -10:00
parent 7085d8c5b4
commit 0f0ba550f9

View File

@ -16,18 +16,21 @@
#along with autojump. If not, see <http://www.gnu.org/licenses/>.
function show_help {
echo "sudo ./install.sh [--prefix /usr/local]"
echo "sudo ./install.zsh [--local] [--prefix /usr/local]"
}
prefix=/usr
local_install=false
local=false
#command line parsing
while true; do
case "$1" in
-h|--help|-\?) show_help; exit 0;;
-l|--local);
local_install=true
-h|--help|-\?)
show_help
exit 0
;;
-l|--local)
local=true
prefix=~/.autojump
shift
;;
@ -37,13 +40,28 @@ while true; do
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;;
fi
;;
--)
shift
break
;;
-*)
echo "invalid option: $1" 1>&2
show_help
exit 1
;;
*)
break
;;
esac
done
if [[ $(whoami) != "root" ]] && ! ${local}; then
echo "Please rerun as root or use the --local option."
exit 1
fi
echo "Installing main files to ${prefix} ..."
# add git revision to autojump
@ -58,28 +76,27 @@ cp autojump ${prefix}/bin/
cp autojump.1 ${prefix}/share/man/man1/
# autocompletion file in the first directory of the FPATH variable
if ( ! ${local_install} ); then
if ( ! ${local} ); then
fail=true
for f in $fpath
do
sudo cp _j $f && fail=false && break
cp _j $f && fail=false && break
done
if $fail
then
echo "Couldn't find a place to put the autocompletion file :-("
echo "Couldn't find a place to put the autocompletion file, please copy _j into your \$fpath"
echo "Still trying to install the rest of autojump..."
else
echo "Installed autocompletion file to $f"
fi
if [ -d "/etc/profile.d" ]; then
sudo cp autojump.zsh /etc/profile.d/
sudo cp autojump.sh /etc/profile.d/
echo "Remember to add the line"
echo " source /etc/profile.d/autojump.zsh"
echo "or"
echo " source /etc/profile"
echo "to your ~/.zshrc if it's not there already"
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"
echo
echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
else
@ -108,11 +125,12 @@ else
cp autojump.zsh ${prefix}/etc/profile.d/
cp autojump.sh ${prefix}/etc/profile.d/
echo
echo "Add the following lines to your ~/.zshrc:"
echo
echo " path=(${prefix}/bin \${path})"
echo " fpath=(${prefix}/functions \${fpath})"
echo " source ${prefix}/etc/profile.d/autojump.zsh"
echo -e "\tpath=(${prefix}/bin \${path})"
echo -e "\tfpath=(${prefix}/functions \${fpath})"
echo -e "\tsource ${prefix}/etc/profile.d/autojump.zsh"
echo
echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
echo