以下は当時の記事で今は動作しないかもしれません。
2019/01/09設定を見直しました
↓
https://nishikawasasaki.hatenablog.com/entry/2019/01/09/Macのssh-agentとfish_shell(4年ぶり2回目)
インフルエンザが周囲で大流行、最前線です。
Mac で fish shell を使っていると、linux で ssh-agent 用に書いた設定でエラーが発生。 どうも Mac では SSH_AUTH_SOCK の場所が違うみたい。
探してみるとどうやら
/private/var/folders/fw/
にあるようなので、その時作られていた
/private/var/folders/fw/_tkなんとかかんとか/T/ssh/agent
を SSH_AUTH_SOCK に設定するように暫定設定。 _tk なんとかの部分はもし変わるようなら対応しよう。
# ssh-agent set agentPID (ps gxww | grep "ssh-agent]*\$" | awk '{print $1}') | head -1 set agentSOCK (/bin/ls -t /private/var/folders/fw/_tkなんとかかんとか/T/ssh*/agent*|head -1) if test "$agentPID" = "" -o "$agentSOCK" = "" set -e SSH_AUTH_SOCK set -e SSH_AGENT_PID eval (ssh-agent) ssh-add else set --export SSH_AGENT_PID $agentPID set --export SSH_AUTH_SOCK $agentSOCK # if [ `ssh-add -l` = "" ]; then # ssh-add < /dev/null # fi end
~/.config/fish/config.fish
の中で
# 環境毎の設定読み込み ########################################## switch (uname) case Darwin . $HOME/.config/fish/config_mac.fish case Linux . $HOME/.config/fish/config_gentoo.fish end
なんてしてます。