From e6cf5963a6c4397bc7d4e2205926fd2b8cecdd25 Mon Sep 17 00:00:00 2001 From: Felix Buehler Date: Wed, 16 Sep 2020 15:16:13 +0200 Subject: [PATCH] [shell/paths] replace set_path with appendpath from bash config --- shell/paths.sh | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/shell/paths.sh b/shell/paths.sh index 4a1be10..3dee718 100755 --- a/shell/paths.sh +++ b/shell/paths.sh @@ -1,20 +1,26 @@ #!/bin/sh -function set_path(){ - if [[ -d "$1" ]]; then - export PATH=$1:$PATH - fi +# Append our default paths +appendpath () { + case ":$PATH:" in + *:"$1":*) + ;; + *) + if [[ -d "$1" ]]; then + export PATH="${PATH:+$PATH:}$1" + fi + esac } -set_path ~/.local/bin/ -set_path ~/.bin +appendpath ~/.local/bin/ +appendpath ~/.bin if which ruby >/dev/null 2>&1 && which gem >/dev/null 2>&1; then - set_path $(ruby -r rubygems -e 'puts Gem.user_dir')/bin + appendpath $(ruby -r rubygems -e 'puts Gem.user_dir')/bin fi # PERL cpan modules -set_path $HOME/.perl/5/bin +appendpath $HOME/.perl/5/bin export PERL5LIB="$HOME/.perl/5/lib/perl5:$PERL5LIB" export PERL_LOCAL_LIB_ROOT="$HOME/.perl/5:$PERL_LOCAL_LIB_ROOT" export PERL_MB_OPT="--install_base \"$HOME/.perl/5\"" @@ -22,5 +28,5 @@ export PERL_MM_OPT="INSTALL_BASE=$HOME/.perl/5" export GOPATH=$HOME/.go export GOBIN=$HOME/.gobin -set_path $GOPATH/bin -set_path $GOBIN +appendpath $GOPATH/bin +appendpath $GOBIN