-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.zshenv
40 lines (33 loc) · 1.79 KB
/
.zshenv
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
setopt no_global_rcs
if [ -z "$TMUX" ]; then
# Function to add a directory to an environment variable if it isn't already included
add_to_env_var() {
local env_var_name=$1
local dir=$2
local current_value
eval "current_value=\$$env_var_name"
case ":$current_value:" in
*":$dir:"*) ;;
*) eval "export $env_var_name=\"$current_value:$dir\"" ;;
esac
}
# Adding directories to PATH
[ -d /opt/local/bin ] && add_to_env_var PATH "/opt/local/bin"
[ -d /opt/local/sbin ] && add_to_env_var PATH "/opt/local/sbin"
[ -d "$HOME/.cargo/bin" ] && add_to_env_var PATH "$HOME/.cargo/bin"
[ -d "$HOME/.npm-global/bin" ] && add_to_env_var PATH "$HOME/.npm-global/bin"
[ -d /opt/homebrew/bin ] && add_to_env_var PATH "/opt/homebrew/bin"
[ -d /opt/homebrew/sbin ] && add_to_env_var PATH "/opt/homebrew/sbin"
[ -d "$HOME/.nix-profile/bin" ] && add_to_env_var PATH "$HOME/.nix-profile/bin"
[ -d "/etc/profiles/per-user/$USER/bin" ] && add_to_env_var PATH "/etc/profiles/per-user/$USER/bin"
[ -d /run/current-system/sw/bin ] && add_to_env_var PATH "/run/current-system/sw/bin"
[ -d /nix/var/nix/profiles/default/bin ] && add_to_env_var PATH "/nix/var/nix/profiles/default/bin"
[ -d "$HOME/.local/bin" ] && add_to_env_var PATH "$HOME/.local/bin"
[ -d "$HOME/.config/tmux/scripts" ] && add_to_env_var PATH "$HOME/.config/tmux/scripts"
[ -d /Applications/Docker.app/Contents/Resources/bin ] && add_to_env_var PATH "/Applications/Docker.app/Contents/Resources/bin"
[ -d /Library/TeX/texbin ] && add_to_env_var PATH "/Library/TeX/texbin"
# Adding directories to LIBRARY_PATH
[ -d "$HOME/.nix-profile/lib" ] && add_to_env_var LIBRARY_PATH "$HOME/.nix-profile/lib"
# Adding directories to MANPATH
[ -d /opt/local/share/man ] && add_to_env_var MANPATH "/opt/local/share/man"
fi