72 lines
1.8 KiB
Plaintext
72 lines
1.8 KiB
Plaintext
|
#!/bin/sh
|
||
|
|
||
|
echo "This script will update your shell profile when the 'bin' directory"
|
||
|
echo "of python is not early enough of the PATH of your shell."
|
||
|
echo "These changes will be effective only in shell windows that you open"
|
||
|
echo "after running this script."
|
||
|
|
||
|
PYVER=@PYVER@
|
||
|
PYTHON_ROOT="/Library/Frameworks/Python.framework/Versions/Current"
|
||
|
|
||
|
# Make sure the directory ${PYTHON_ROOT}/bin is on the users PATH.
|
||
|
BSH="`basename "${SHELL}"`"
|
||
|
case "${BSH}" in
|
||
|
bash|ksh|sh|*csh)
|
||
|
P="`${SHELL} -c 'echo $PATH'`"
|
||
|
;;
|
||
|
*)
|
||
|
echo "Sorry, I don't know how to patch $BSH shells"
|
||
|
exit 0
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
# Now ensure that our bin directory is on $P and before /usr/bin at that
|
||
|
for elem in `echo $P | tr ':' ' '`
|
||
|
do
|
||
|
if [ "${elem}" == "${PYTHON_ROOT}/bin" ]; then
|
||
|
echo "All right, you're a python lover already"
|
||
|
exit 0
|
||
|
elif [ "${elem}" == "/usr/bin" ]; then
|
||
|
break
|
||
|
fi
|
||
|
done
|
||
|
|
||
|
echo "${PYTHON_ROOT}/bin is not on your PATH or at least not early enough"
|
||
|
case "${BSH}" in
|
||
|
*csh)
|
||
|
# Create backup copy before patching
|
||
|
if [ -f "${HOME}/.cshrc" ]; then
|
||
|
cp -fp "${HOME}/.cshrc" "${HOME}/.cshrc.pysave"
|
||
|
fi
|
||
|
echo "" >> "${HOME}/.cshrc"
|
||
|
echo "# Setting PATH for MacPython ${PYVER}" >> "${HOME}/.cshrc"
|
||
|
echo "# The orginal version is saved in .cshrc.pysave" >> "${HOME}/.cshrc"
|
||
|
echo "set path=(${PYTHON_ROOT}/bin "'$path'")" >> "${HOME}/.cshrc"
|
||
|
exit 0
|
||
|
;;
|
||
|
bash)
|
||
|
if [ -e "${HOME}/.profile" ]; then
|
||
|
PR="${HOME}/.profile"
|
||
|
else
|
||
|
PR="${HOME}/.bash_profile"
|
||
|
fi
|
||
|
;;
|
||
|
*sh)
|
||
|
PR="${HOME}/.profile"
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
# Create backup copy before patching
|
||
|
if [ -f "${PR}" ]; then
|
||
|
cp -fp "${PR}" "${PR}.pysave"
|
||
|
fi
|
||
|
echo "" >> "${PR}"
|
||
|
echo "# Setting PATH for MacPython ${PYVER}" >> "${PR}"
|
||
|
echo "# The orginal version is saved in `basename ${PR}`.pysave" >> "${PR}"
|
||
|
echo 'PATH="'"${PYTHON_ROOT}/bin"':${PATH}"' >> "${PR}"
|
||
|
echo 'export PATH' >> "${PR}"
|
||
|
if [ `id -ur` = 0 ]; then
|
||
|
chown "${LOGNAME}" "${PR}"
|
||
|
fi
|
||
|
exit 0
|