pass-menu.sh (603B)
1 #!/bin/sh 2 3 deps="wofi pass wl-copy" 4 5 for dep in $deps; do 6 command -v $dep >/dev/null 2>&1 || { 7 echo "error: $dep is not installed" >&2 8 exit 1 9 } 10 done 11 12 store="${PASSWORD_STORE_DIR:-$HOME/.password-store}" 13 14 passwords="$(find "$store" -name "*.gpg" | sed -e 's|\.gpg$||' | sed -e "s|$store/||")" 15 16 selection=$(echo "$passwords" | wofi --prompt "Passwords" --dmenu) 17 18 [ -z "$selection" ] && exit 0 19 20 pass show "$selection" | head -n 1 | wl-copy 21 22 ( 23 sleep 15 24 wl-copy --clear 25 command -v qdbus6 >/dev/null 2>&1 && qdbus6 org.kde.klipper /klipper org.kde.klipper.klipper.clearClipboardHistory 26 27 ) &