mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-11 00:10:08 +00:00
ssh-agent: prevent environment file from flapping
On an OS X laptop, the variable `$HOST` changes a lot depending on what wifi network you're connected to. This causes a lot of `~/.ssh/environment-$HOST` files to be created and causes multiple ssh-agents to created. Instead, use `scutil --get ComputerName` to get something more stable.
This commit is contained in:
parent
b6cbba9dfe
commit
cfe468f6f6
1 changed files with 10 additions and 2 deletions
|
@ -27,7 +27,7 @@
|
||||||
# Florent Thoumie and Jonas Pfenniger
|
# Florent Thoumie and Jonas Pfenniger
|
||||||
#
|
#
|
||||||
|
|
||||||
local _plugin__ssh_env=$HOME/.ssh/environment-$HOST
|
local _plugin__ssh_env
|
||||||
local _plugin__forwarding
|
local _plugin__forwarding
|
||||||
|
|
||||||
function _plugin__start_agent()
|
function _plugin__start_agent()
|
||||||
|
@ -42,12 +42,20 @@ function _plugin__start_agent()
|
||||||
. ${_plugin__ssh_env} > /dev/null
|
. ${_plugin__ssh_env} > /dev/null
|
||||||
|
|
||||||
# load identies
|
# load identies
|
||||||
zstyle -a :omz:plugins:ssh-agent identities identities
|
zstyle -a :omz:plugins:ssh-agent identities identities
|
||||||
echo starting ssh-agent...
|
echo starting ssh-agent...
|
||||||
|
|
||||||
/usr/bin/ssh-add $HOME/.ssh/${^identities}
|
/usr/bin/ssh-add $HOME/.ssh/${^identities}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Get the filename to store/lookup the environment from
|
||||||
|
if (( $+commands[scutil] )); then
|
||||||
|
# It's OS X!
|
||||||
|
_plugin__ssh_env="$HOME/.ssh/environment-$(scutil --get ComputerName)"
|
||||||
|
else
|
||||||
|
_plugin__ssh_env="$HOME/.ssh/environment-$HOST"
|
||||||
|
fi
|
||||||
|
|
||||||
# test if agent-forwarding is enabled
|
# test if agent-forwarding is enabled
|
||||||
zstyle -b :omz:plugins:ssh-agent agent-forwarding _plugin__forwarding
|
zstyle -b :omz:plugins:ssh-agent agent-forwarding _plugin__forwarding
|
||||||
if [[ ${_plugin__forwarding} == "yes" && -n "$SSH_AUTH_SOCK" ]]; then
|
if [[ ${_plugin__forwarding} == "yes" && -n "$SSH_AUTH_SOCK" ]]; then
|
||||||
|
|
Loading…
Reference in a new issue