if [ -n "${VIRTHUALENV}" ]; then if [ "" = "${VIRTHUALENV}" ]; then echo "${VIRTHUALENV_NAME} Virtual Haskell Environment is already active." else echo "There is already ${VIRTHUALENV_NAME} Virtual Haskell Environment activated." echo "Deactivate it first (using command 'deactivate'), to activate" echo " environment." fi return 1 fi export VIRTHUALENV="" export VIRTHUALENV_NAME="" echo "Activating ${VIRTHUALENV_NAME} Virtual Haskell Environment (at ${VIRTHUALENV})." echo "" echo "Use regular Haskell tools (ghc, ghci, ghc-pkg, cabal) to manage your Haskell environment." echo "" echo "To exit from this virtual environment, enter command 'deactivate'." export "VIRTHUALENV_PATH_BACKUP"="${PATH}" export "VIRTHUALENV_PS1_BACKUP"="${PS1}" deactivate() { echo "Deactivating ${VIRTHUALENV_NAME} Virtual Haskell Environment (at ${VIRTHUALENV})." echo "Restoring previous environment settings." export "PATH"="${VIRTHUALENV_PATH_BACKUP}" unset -v "VIRTHUALENV_PATH_BACKUP" export "PS1"="${VIRTHUALENV_PS1_BACKUP}" unset -v "VIRTHUALENV_PS1_BACKUP" unset -v VIRTHUALENV unset -v VIRTHUALENV_NAME unset -v GHC_PACKAGE_PATH unset -f deactivate if [ -n "$BASH" -o -n "$ZSH_VERSION" ]; then hash -r fi } PATH_PREPENDIX="$(cat /path_var_prependix)" export PATH="${PATH_PREPENDIX}:${PATH}" unset -v PATH_PREPENDIX export GHC_PACKAGE_PATH="$(cat /ghc_package_path_var)" export PS1="(${VIRTHUALENV_NAME})${PS1}" if [ -n "$BASH" -o -n "$ZSH_VERSION" ]; then hash -r fi