m-chrzan.xyz
aboutsummaryrefslogtreecommitdiff
path: root/contrib/dmenu/passmenu
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/dmenu/passmenu')
-rwxr-xr-xcontrib/dmenu/passmenu12
1 files changed, 12 insertions, 0 deletions
diff --git a/contrib/dmenu/passmenu b/contrib/dmenu/passmenu
new file mode 100755
index 0000000..5d9d454
--- /dev/null
+++ b/contrib/dmenu/passmenu
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+shopt -s nullglob globstar
+
+prefix=${PASSWORD_STORE_DIR-~/.password-store}
+password_files=( "$prefix"/**/*.gpg )
+password_files=( "${password_files[@]#"$prefix"/}" )
+password_files=( "${password_files[@]%.gpg}" )
+
+password=$(printf '%s\n' "${password_files[@]}" | dmenu "$@")
+
+[ $? -eq 0 ] && pass -c "$password"