diff --git a/config/shell/shenv b/config/shell/shenv index 50c9870..2488868 100644 --- a/config/shell/shenv +++ b/config/shell/shenv @@ -10,15 +10,34 @@ export EDITOR=nvim export VISUAL=nvim export BROWSER=firefox -# Program-specific +# Load ssh-agent... ONCE -[ -z "$SSH_AUTH_SOCK" ] && [ -x "$(command -v ssh-agent)" ] && eval "$(ssh-agent -s)" +SSH_ENV="$HOME/.ssh/environment" + +start_agent() { + ssh-agent > "${SSH_ENV}" + chmod 600 "${SSH_ENV}" + . "${SSH_ENV}" > /dev/null +} + +if [ -f "${SSH_ENV}" ] +then + . "${SSH_ENV}" > /dev/null + if [ ! -d "/proc/${SSH_AGENT_PID}" ] || [ "$(cat "/proc/${SSH_AGENT_PID}/comm")" != "ssh-agent" ] + then + start_agent + fi +else + start_agent +fi direnv() { # environment variable name, path export "$1"="$2" mkdir -p "$2" } +# Program-specific + export JAVA_FONTS=/usr/share/fonts/TTF # 2019-04-25 Attempt to remove .java/fonts remove if it didn't work # export ANDROID_HOME=/opt/android-sdk # export ARDUINO=/usr/share/arduino