2021-04-14 08:51:39 -07:00
|
|
|
CURRENT_DIRECTORY="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
|
|
|
2021-04-29 02:53:01 -07:00
|
|
|
export PATH=$PATH:$CURRENT_DIRECTORY/bin:$CURRENT_DIRECTORY/scripts
|
2021-04-14 08:51:39 -07:00
|
|
|
|
2021-11-18 04:51:57 -08:00
|
|
|
# Automatically set up our virtual environment in .venv (same as poetry is configured to use).
|
|
|
|
# From: https://github.com/direnv/direnv/wiki/Python
|
|
|
|
realpath() {
|
|
|
|
[[ $1 = /* ]] && echo "$1" || echo "$PWD/${1#./}"
|
|
|
|
}
|
|
|
|
layout_python-venv() {
|
|
|
|
local python=${1:-python3}
|
|
|
|
[[ $# -gt 0 ]] && shift
|
|
|
|
unset PYTHONHOME
|
|
|
|
if [[ -n $VIRTUAL_ENV ]]; then
|
|
|
|
VIRTUAL_ENV=$(realpath "${VIRTUAL_ENV}")
|
|
|
|
else
|
|
|
|
local python_version
|
|
|
|
python_version=$("$python" -c "import platform; print(platform.python_version())")
|
|
|
|
if [[ -z $python_version ]]; then
|
|
|
|
log_error "Could not detect Python version"
|
|
|
|
return 1
|
|
|
|
fi
|
|
|
|
VIRTUAL_ENV=$PWD/.direnv/python-venv-$python_version
|
|
|
|
fi
|
|
|
|
export VIRTUAL_ENV
|
|
|
|
if [[ ! -d $VIRTUAL_ENV ]]; then
|
|
|
|
log_status "no venv found; creating $VIRTUAL_ENV"
|
|
|
|
"$python" -m venv "$VIRTUAL_ENV"
|
|
|
|
fi
|
|
|
|
|
|
|
|
PATH="${VIRTUAL_ENV}/bin:${PATH}"
|
|
|
|
export PATH
|
|
|
|
}
|
|
|
|
|
|
|
|
export VIRTUAL_ENV=.venv
|
|
|
|
|
|
|
|
layout python-venv
|