summaryrefslogtreecommitdiffstats
path: root/tv/5pkgs/simple/fzmenu/bin/otpmenu
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2023-03-22 18:04:21 +0100
committertv <tv@krebsco.de>2023-03-22 18:04:21 +0100
commit782c8652366c173626c2f1ddd40eb1b220bd97d6 (patch)
treec8a671f1a4b0fd8b04d28c572222b229f8afbb9a /tv/5pkgs/simple/fzmenu/bin/otpmenu
parentd873abf0a92c709ec9f79b49fa5d2e5bd244f0ad (diff)
tv fzmenu: admit symlinks
Diffstat (limited to 'tv/5pkgs/simple/fzmenu/bin/otpmenu')
-rwxr-xr-xtv/5pkgs/simple/fzmenu/bin/otpmenu11
1 files changed, 7 insertions, 4 deletions
diff --git a/tv/5pkgs/simple/fzmenu/bin/otpmenu b/tv/5pkgs/simple/fzmenu/bin/otpmenu
index 12bd60a9d..273a408e6 100755
--- a/tv/5pkgs/simple/fzmenu/bin/otpmenu
+++ b/tv/5pkgs/simple/fzmenu/bin/otpmenu
@@ -10,14 +10,17 @@ case ${FZMENU_PHASE-0} in
;;
1)
if result=$(
+ PASSWORD_STORE_DIR=${PASSWORD_STORE_DIR-$HOME/.password-store}
FZF_DEFAULT_OPTS=${FZMENU_FZF_DEFAULT_OPTS-}
if test -n "$FZF_DEFAULT_OPTS"; then
export FZF_DEFAULT_OPTS
fi
- pass git ls-files '*/otp.gpg' | \
- sed '
-
- s/\/otp\.gpg$//
+ find -L "$PASSWORD_STORE_DIR" -type f -name 'otp.gpg' |
+ awk -F / -v PASSWORD_STORE_DIR="$PASSWORD_STORE_DIR" '
+ { n = length(PASSWORD_STORE_DIR "/") }
+ $NF == "otp.gpg" {
+ print substr($0, 1 + n, length($0)-length("/otp.gpg")-n)
+ }
' |
exec fzf \
--history=/dev/null \