#!/usr/bin/env bash # Set architecture flags export ARCHFLAGS="-arch x86_64" # Prefer US English and use UTF-8 export LC_ALL="en_US.UTF-8" export LANG="en_US" # --------------------------------------------------- # PATH # --------------------------------------------------- PATH_OPENSSL=$(brew --prefix openssl)/bin PATH_RUBY=$(brew --prefix ruby)/bin PATH_GEMS=/usr/local/lib/ruby/gems/2.6.0/bin PATH_PYTHON=$(brew --prefix python)/libexec/bin PATH_GO=$(brew --prefix go)/libexec/bin export GOPATH=$HOME/.go/ export PATH=$HOME/.bin:/usr/local/bin:$PATH_OPENSSL:$PATH_RUBY:$PATH_GEMS:$PATH_PYTHON:$GOPATH/bin:$PATH_GO:$PATH # define CDPATHs which are autocompleted from when doing cd export CDPATH=$CDPATH:~/Code # nvm # defer loading until needed for faster shell startup declare -a NODE_GLOBALS=(`find ~/.nvm/versions/node -maxdepth 3 -type l -wholename '*/bin/*' | xargs -n1 basename | sort | uniq`) NODE_GLOBALS+=("node") NODE_GLOBALS+=("nvm") load_nvm () { export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" } for cmd in "${NODE_GLOBALS[@]}"; do eval "${cmd}(){ unset -f ${NODE_GLOBALS}; load_nvm; ${cmd} \$@ }" done # pip should only run if there is a virtualenv currently activated #export PIP_REQUIRE_VIRTUALENV=true # cache pip-installed packages to avoid re-downloading export PIP_DOWNLOAD_CACHE=$HOME/.pip/cache