[ -f "$HOME/.bashrc" ] && source "$HOME/.bashrc" appendpath () { case ":$PATH:" in *:"$1":*) ;; *) PATH="${PATH:+$PATH:}$1" esac } user_paths=() # home paths # ---------- user_paths+=("$HOME/bin" "$HOME/.local/bin") user_paths+=("$HOME/scripts" "$HOME/.local/scripts") # language paths # -------------- # ruby if command -v ruby > /dev/null && command -v gem > /dev/null; then appendpath "$(ruby -r rubygems -e 'puts Gem.user_dir')/bin" fi # rust user_paths+=("$HOME/.cargo/bin") # go user_paths+=("$HOME/go/bin" "$HOME/.local/go/bin") for path in "${user_paths[@]}"; do if [ -d "$path" ]; then appendpath "$path" fi done # vim:ft=sh