#!/bin/sh PYVER=@PYVER@ PYTHON_ROOT="/Library/Frameworks/Python.framework/Versions/@PYVER@" # Run from the installer, do some trickery to fetch the information # we need. theShell="`finger $USER | grep Shell: | head -1 | awk '{ print $NF }'`" # Make sure the directory ${PYTHON_ROOT}/bin is on the users PATH. BSH="`basename "${theShell}"`" case "${BSH}" in bash|ksh|sh|*csh|zsh|fish) true ;; *) exit 0 ;; esac case "${BSH}" in *csh) if [ -f "${HOME}/.tcshrc" ]; then RC="${HOME}/.tcshrc" else RC="${HOME}/.cshrc" fi # Drop privileges while writing files. su -m ${USER} <> "${RC}" echo "# Setting PATH for Python ${PYVER}" >> "${RC}" echo "# The original version is saved in .cshrc.pysave" >> "${RC}" echo "set path=(${PYTHON_ROOT}/bin "'\$path'")" >> "${RC}" EOFC if [ `id -ur` = 0 ]; then chown -h "${USER}" "${RC}" fi exit 0 ;; bash) if [ -e "${HOME}/.bash_profile" ]; then PR="${HOME}/.bash_profile" elif [ -e "${HOME}/.bash_login" ]; then PR="${HOME}/.bash_login" elif [ -e "${HOME}/.profile" ]; then PR="${HOME}/.profile" else PR="${HOME}/.bash_profile" fi ;; fish) CONFIG_DIR="${HOME}/.config/fish/conf.d/" RC="${CONFIG_DIR}/python-${PYVER}.fish" # Drop privileges while writing files. su -m ${USER} < "${RC}" if [ -f "${RC}.pysave" ]; then echo "# The original version is saved in ${RC}.pysave" >> "${RC}" fi echo "fish_add_path -g \"${PYTHON_ROOT}/bin\"" >> "${RC}" EOFF if [ `id -ur` = 0 ]; then chown -h "${USER}" "${RC}" fi exit 0 ;; zsh) PR="${HOME}/.zprofile" ;; *sh) PR="${HOME}/.profile" ;; esac # Drop privileges while writing files. su -m ${USER} <> "${PR}" echo "# Setting PATH for Python ${PYVER}" >> "${PR}" echo "# The original version is saved in `basename ${PR}`.pysave" >> "${PR}" echo 'PATH="'"${PYTHON_ROOT}/bin"':\${PATH}"' >> "${PR}" echo 'export PATH' >> "${PR}" EOFS if [ `id -ur` = 0 ]; then chown -h "${USER}" "${PR}" fi exit 0