#!/usr/bin/sh # Taken from https://git.zx2c4.com/password-store/tree/contrib/dmenu/passmenu # and modified # Source settings from .bemenurc . ~/.config/bemenurc shopt -s nullglob globstar title="Copy password to clipboard" typeit=0 if [[ $1 == "--type" ]]; then title="Show and copy password to clipboard" typeit=1 shift fi 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[@]}" | bemenu -p "$title:" --tf="$BEMENU_TF" --tb="$BEMENU_NB" --fb="$BEMENU_NB" --fn="$BEMENU_FN" --nb="$BEMENU_NB" --nf="$BEMENU_NF" --hf="$BEMENU_HF" --hb="$BEMENU_HB") [[ -n $password ]] || exit oldclip=$(wl-paste) thepassword=$(pass show "$password") wl-copy "$thepassword" if [[ $typeit -eq 0 ]]; then notify-send "🔑 Password store" "The password for $password has been copied to the clipboard and will be cleared in 30 seconds" else notify-send "🔑 Password store" "Password for $password: $thepassword" fi sleep 30 wl-copy $oldclip notify-send "🔑 Password store" "Password cleared from clipboard"