nixos-config/scripts/wpass
2022-10-18 20:17:55 -03:00

44 lines
860 B
Plaintext

_gpg-unlock
set -xe
find_file() {
fd --strip-cwd-prefix '\.gpg$' |
sd ".gpg$" "" |
bmenu -p "Password" $@
}
main() {
test -n "$PASSWORD_STORE_DIR" &&
cd "$PASSWORD_STORE_DIR" ||
cd "$HOME/.password-store"
entry=`find_file "$@"`
test -n "$entry" || exit 0
username=`pass show "$entry" 2>/dev/null | perl -ne 'print $2 if /^(login|user|email): (.*)/'`
password=`pass show "$entry" 2>/dev/null | head -n 1`
action=`printf "Autotype\nUsername -> $username\nPassword" | bmenu -p Action`
case $action in
Autotype)
autotype
;;
Username*)
printf '%s' "$username" | wl-copy;;
Password)
printf '%s' "$password" | wl-copy;;
esac
}
autotype(){
env wtype -s 100 "$username"
env wtype -s 100 -k tab
env wtype -s 100 "$password"
}
main