From 49daa1d96e6d756e5771e01c5968bf0e0df5ae71 Mon Sep 17 00:00:00 2001 From: Adam Hellberg Date: Tue, 9 Mar 2021 17:59:07 +0100 Subject: [PATCH] Use new solution for GPG and SSH on WSL2 --- zsh/.zshrc | 41 ++++++++++++++++++++++++++++++++--------- 1 file changed, 32 insertions(+), 9 deletions(-) diff --git a/zsh/.zshrc b/zsh/.zshrc index 4f6b29b..ae409fc 100644 --- a/zsh/.zshrc +++ b/zsh/.zshrc @@ -190,17 +190,40 @@ if [[ -d "$HOME/.rakubrew" ]]; then eval "$($HOME/.rakubrew/bin/rakubrew init Zsh)" fi +# Following two functions and utilities from: +# https://github.com/BlackReloaded/wsl2-ssh-pageant +wsl-gpg-proxy() { + export GPG_AGENT_SOCK=$HOME/.gnupg/S.gpg-agent + ss -a | grep -q $GPG_AGENT_SOCK + if [ $? -ne 0 ]; then + rm -rf $GPG_AGENT_SOCK + (setsid nohup socat UNIX-LISTEN:$GPG_AGENT_SOCK,fork EXEC:"$HOME/.ssh/wsl2-ssh-pageant.exe --gpg S.gpg-agent" >/dev/null 2>&1 &) + fi +} + +wsl-ssh-proxy() { + export SSH_AUTH_SOCK=$HOME/.ssh/agent.sock + ss -a | grep -q $SSH_AUTH_SOCK + if [ $? -ne 0 ]; then + echo "[WSL] Setting up WSL/GPG/SSH agent relay" + rm -f $SSH_AUTH_SOCK + (setsid nohup socat UNIX-LISTEN:$SSH_AUTH_SOCK,fork EXEC:$HOME/.ssh/wsl2-ssh-pageant.exe >/dev/null 2>&1 &) + fi +} + export GPG_TTY="$(tty)" if [[ $is_wsl ]]; then - wsl_gpg_agent_relay="$HOME/.local/bin/wsl-gpg-agent-relay.sh" - if [[ -f "$wsl_gpg_agent_relay" ]]; then - echo '[WSL] Launching WSL GPG agent relay' - $wsl_gpg_agent_relay & - else - echo "[WSL] Missing: ${wsl_gpg_agent_relay}" - fi - unset SSH_AGENT_PID - export SSH_AUTH_SOCK=$HOME/.local/wsl-ssh-pageant/ssh-agent.sock + #wsl_gpg_agent_relay="$HOME/.local/bin/wsl-gpg-agent-relay.sh" + #if [[ -f "$wsl_gpg_agent_relay" ]]; then + # echo '[WSL] Launching WSL GPG agent relay' + # $wsl_gpg_agent_relay & + #else + # echo "[WSL] Missing: ${wsl_gpg_agent_relay}" + #fi + #unset SSH_AGENT_PID + #export SSH_AUTH_SOCK=$HOME/.local/wsl-ssh-pageant/ssh-agent.sock + wsl-gpg-proxy + wsl-ssh-proxy else unset SSH_AGENT_PID export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket) -- 2.54.0