aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/wsl
diff options
context:
space:
mode:
Diffstat (limited to 'wsl')
-rwxr-xr-xwsl/gpg.sh77
-rw-r--r--wsl/wsl.sh7
2 files changed, 63 insertions, 21 deletions
diff --git a/wsl/gpg.sh b/wsl/gpg.sh
index e099de4..2404f99 100755
--- a/wsl/gpg.sh
+++ b/wsl/gpg.sh
@@ -7,18 +7,58 @@
# GPG & SSH Socket
# Removing Linux Agent sockets and replace it with wsl2-ssh-pageant socket
+# gpg-init() (
+# if ! ss -a | grep -q "$SSH_AUTH_SOCK"; then
+# rm -f "$SSH_AUTH_SOCK"
+# wsl2_ssh_pageant_bin="$HOME/.ssh/wsl2-ssh-pageant.exe"
+# if test -x "$wsl2_ssh_pageant_bin"; then
+# (setsid nohup socat UNIX-LISTEN:"$SSH_AUTH_SOCK,fork" EXEC:"$wsl2_ssh_pageant_bin" >/dev/null 2>&1 &)
+# else
+# echo >&2 "WARNING: $wsl2_ssh_pageant_bin is not executable."
+# fi
+# unset wsl2_ssh_pageant_bin
+# fi
+
+# if ! ss -a | grep -q "$GPG_AGENT_SOCK"; then
+# rm -rf "$GPG_AGENT_SOCK"
+# wsl2_ssh_pageant_bin="$HOME/.ssh/wsl2-ssh-pageant.exe"
+# if test -x "$wsl2_ssh_pageant_bin"; then
+# (setsid nohup socat UNIX-LISTEN:"$GPG_AGENT_SOCK,fork" EXEC:"$wsl2_ssh_pageant_bin --gpg S.gpg-agent" >/dev/null 2>&1 &)
+# else
+# echo >&2 "WARNING: $wsl2_ssh_pageant_bin is not executable."
+# fi
+# unset wsl2_ssh_pageant_bin
+# fi
+
+# if ! ss -a | grep -q "${GPG_AGENT_SOCK}.extra"; then
+# rm -rf "${GPG_AGENT_SOCK}.extra"
+# wsl2_ssh_pageant_bin="$HOME/.ssh/wsl2-ssh-pageant.exe"
+# if test -x "$wsl2_ssh_pageant_bin"; then
+# (setsid nohup socat UNIX-LISTEN:"${GPG_AGENT_SOCK}.extra,fork" EXEC:"$wsl2_ssh_pageant_bin --gpg S.gpg-agent.extra" >/dev/null 2>&1 &)
+# else
+# echo >&2 "WARNING: $wsl2_ssh_pageant_bin is not executable."
+# fi
+# unset wsl2_ssh_pageant_bin
+# fi
+# )
+
start-pageant() {
local pageant="$HOME/.ssh/wsl2-ssh-pageant.exe"
- local sock=$1
- local cmd="${pageant}"
+ local sock="$1"
+ local cmd="$pageant"
- if echo "$sock" | grep -q "gpg"; then
- cmd+=" --gpg ${sock}"
- fi
+ case "$sock" in
+ *gpg*) cmd+=" --gpg $(basename $sock)" ;;
+ *discord*)
+ pageant="$(command -v npiperelay.exe)"
+ cmd="$pageant -ep -s //./pipe/discord-ipc-0"
+ ;;
+ esac
if ! ss -a | grep -q "$sock"; then
if test -x "$pageant"; then
rm -rf "$sock"
+ # echo "(setsid nohup socat UNIX-LISTEN:\"${sock},fork\" EXEC:\"$cmd\" >/dev/null 2>&1 &)"
(setsid nohup socat UNIX-LISTEN:"${sock},fork" EXEC:"$cmd" >/dev/null 2>&1 &)
else
echo >&2 "WARNING: $pageant is not executable."
@@ -26,19 +66,16 @@ start-pageant() {
fi
}
-start-pageants() {
- sockets=("$SSH_AUTH_SOCK", "$GPG_AGENT_SOCK", "${GPG_AGENT_SOCK}.extra")
- for sock in ${sockets[@]}; do
- start-pageant $sock
- done
-}
-
# Reload
gpg-reset() {
- gpg-connect-agent.exe KILLAGENT /bye &>/dev/null
- pkill -f 'socat.*wsl2-ssh-pageant.exe'
- gpg-connect-agent.exe /bye &>/dev/null
- start-pageants
+ $socket_relay restart --ssh
+ $socket_relay restart --gpg
+ $socket_relay restart --gpg-extra
+}
+
+discord-reset() {
+ sudo pkill -f 'socat.*/var/run/discord-ipc-0.*npiperelay.exe'
+ sudo -b ${HOME}/dotfiles/scripts/discord-relay.sh
}
# Relearn card serial number
@@ -49,4 +86,10 @@ gpg-learn() {
export SSH_AUTH_SOCK="$HOME/.ssh/agent.sock"
export GPG_AGENT_SOCK="$HOME/.gnupg/S.gpg-agent"
-start-pageants
+socket_relay="${HOME}/dotfiles/scripts/socket-relay.sh"
+
+$socket_relay start --ssh
+$socket_relay start --gpg
+$socket_relay start --gpg-extra
+
+sudo -b ${HOME}/dotfiles/scripts/discord-relay.sh
diff --git a/wsl/wsl.sh b/wsl/wsl.sh
index ef04633..b63e914 100644
--- a/wsl/wsl.sh
+++ b/wsl/wsl.sh
@@ -6,7 +6,6 @@ WINHOME="/mnt/c/Users/$USER"
export BROWSER=wslview
export EDITOR="code --wait"
-alias cb=clip.exe
alias wsl=wsl.exe
alias ykman='/mnt/c/Program\ Files/Yubico/YubiKey\ Manager/ykman.exe'
@@ -40,9 +39,9 @@ wsl_cmd_proxy() {
powershell.exe -NoProfile -c 'cd $HOME;' "$exe" "$cmd" "$args"
}
-function winget { wsl_cmd_proxy "winget.exe" "$@"; }
-function scoop { wsl_cmd_proxy "scoop" "$@"; }
-function alacritty { wsl_cmd_proxy "alacritty.exe" "$@"; }
+winget() { wsl_cmd_proxy "winget.exe" "$@"; }
+scoop() { wsl_cmd_proxy "scoop" "$@"; }
+alacritty() { wsl_cmd_proxy "alacritty.exe" "$@"; }
# https://github.com/validatedev/drop-cache-if-idle
[ -z "$(ps -ef | grep cron | grep -v grep)" ] && sudo /etc/init.d/cron start &>/dev/null