28 lines
682 B
Bash
28 lines
682 B
Bash
#!/bin/zsh
|
|
# set -x
|
|
|
|
if test -z $ROFI_RETV
|
|
then
|
|
rofi -show gopass -modi "gopass:$0" -kb-accept-custom "" -kb-accept-alt "" -kb-custom-2 "Control+Return" -kb-custom-1 "Shift+Return"
|
|
fi
|
|
|
|
# echo "args $* --- retv $ROFI_RETV" >&2
|
|
|
|
error() {
|
|
local msg=$1
|
|
|
|
echo -e "\0message\x1f<span color='red'>$(xargs <<< $msg)</span>\n"
|
|
gopass ls -f
|
|
}
|
|
|
|
case "$ROFI_RETV" in
|
|
# run it in backgroud and quit rofi
|
|
0) echo -e "\0use-hot-keys\x1ftrue\n"
|
|
echo -e "\0message\x1fShift-Enter for OTP\n"
|
|
gopass ls -f ;;
|
|
1) ( gopass show -c $1 > /dev/null ) & ;;
|
|
10) (
|
|
out=$(gopass otp -c $1 2>&1)
|
|
(( $? > 0 )) && error "$out"
|
|
) & ;;
|
|
esac
|