#!/usr/bin/env sh
-# A POSIX compliant reimplementation of passmenu. Derived from:
+# A POSIX compliant reimplementation of passmenu for pash. Derived from:
# https://git.zx2c4.com/password-store/tree/contrib/dmenu/passmenu
typeit=0
if [ "$1" = "--type" ]; then
- typeit=1
- shift
+ typeit=1
+ shift
fi
-prefix=${PASSWORD_STORE_DIR-~/.password-store}
-password=$(find $prefix -name '*.gpg' | awk -v prefix="$prefix" \
- '{len = length(prefix) + 2; print substr($0, len, length($0) - len - 3)}' \
- | dmenu "$@")
+prefix=${PASH_DIR-~/.local/share/pash}
+password=$(find "$prefix" -name '*.gpg' \
+ | awk -v prefix="$prefix" \
+ '{len = length(prefix) + 2; print substr($0, len, length($0) - len - 3)}' \
+ | dmenu "$@")
-[ -n $password ] || exit
+[ -n "$password" ] || exit
if [ $typeit -eq 0 ]; then
- pass show -c "$password" 2>/dev/null
+ pash show "$password" | head -n 1 | xclip -sel c
else
- pass show "$password" | { IFS= read -r pass; printf %s "$pass"; } |
- xdotool type --clearmodifiers --file -
+ pash show "$password" | { IFS= read -r pass; printf %s "$pass"; } |
+ xdotool type --clearmodifiers --file -
fi