From e78d34b559a7e2f40bc4897ddf7bef62b381f2aa Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Sun, 1 Oct 2017 19:16:40 +0300 Subject: add python.sh This is a stupid way to add your user's pip binary directory to $PATH. --- %HOME%/.bash_utils/python.sh | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 %HOME%/.bash_utils/python.sh (limited to '%HOME%/.bash_utils') diff --git a/%HOME%/.bash_utils/python.sh b/%HOME%/.bash_utils/python.sh new file mode 100644 index 0000000..6f74f8b --- /dev/null +++ b/%HOME%/.bash_utils/python.sh @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +# Copyright (c) 2017 Egor Tensin +# This file is part of the "Cygwin configuration files" project. +# For details, see https://github.com/egor-tensin/cygwin-home. +# Distributed under the MIT License. + +# This is a half-assed way to automatically add your user's pip binary +# directory to $PATH. + +source "$HOME/.bash_utils/path.sh" + +python_setup_() ( + set -o errexit -o nounset -o pipefail + + if [ "$#" -ne 1 ]; then + echo "usage: ${FUNCNAME[0]} PYTHON_EXE" + return 1 + fi + + local python="$1" + + local user_base + user_base="$( "$python" -m site --user-base )" + + local user_bin="$user_base/bin" + [ -d "$user_bin" ] || return 1 + echo "$user_bin" +) + +python_setup() { + local user_bin + + if command -v python3 &> /dev/null; then + user_bin="$( python_setup_ python3 )" \ + && path_export "$user_bin" + elif command -v python &> /dev/null; then + user_bin="$( python_setup_ python )" \ + && path_export "$user_bin" + fi +} + +python_setup -- cgit v1.2.3