dotfiles/bash_paths

53 lines
1.4 KiB
Bash

#!/usr/bin/env bash
# adapted based on https://github.com/necolas/dotfiles/blob/master/shell/bash_paths
# Directories to be prepended to PATH
declare -a dirs_to_prepend=(
"/usr/local/sbin"
"/usr/local/bin" # Ensure that this bin always takes precedence over `/usr/bin`
)
# Directories to be appended to PATH
declare -a dirs_to_append=(
"/usr/bin"
"$HOME/.bin"
"$HOME/.rvm/bin"
"$(brew --prefix node)/bin" # Add npm/yarn-installed package bin
)
# Prepend directories to PATH
for index in ${!dirs_to_prepend[*]}
do
if [ -d ${dirs_to_prepend[$index]} ]; then
# If these directories exist, then prepend them to existing PATH
PATH="${dirs_to_prepend[$index]}:$PATH"
fi
done
# Append directories to PATH
for index in ${!dirs_to_append[*]}
do
if [ -d ${dirs_to_append[$index]} ]; then
# If these bins exist, then append them to existing PATH
PATH="$PATH:${dirs_to_append[$index]}"
fi
done
unset dirs_to_prepend dirs_to_append
export PATH
# define CDPATHs which are autocompleted from when doing cd
export CDPATH=$CDPATH:~/Code:~/Projects
# ----------------------------------------------------------------------
# Google Cloud SDK
# ----------------------------------------------------------------------
if [ -s "$HOME/Code/google-cloud-sdk/" ]; then
source "$HOME/Code/google-cloud-sdk/path.bash.inc"
source "$HOME/Code/google-cloud-sdk/completion.bash.inc"
fi