Moving fzf-pass local versioning.
I'm loosing the versioning but I think I'm going to take this in a different direction. 1. work with standard browser pass format. Including with pass or as leading line. 2. Be fully system agnostic (ydotool, of clipboard stuff can be added on top) 3. Have option to print current full text. All of these will require significant changes.
This commit is contained in:
parent
099caf3d7a
commit
7999a4110e
|
@ -11,7 +11,7 @@ set $scripts $HOME/.config/sway/scripts
|
||||||
set $tty-popup $scripts/tty-popup
|
set $tty-popup $scripts/tty-popup
|
||||||
|
|
||||||
set $menu bash ~/.config/sway/scripts/menu
|
set $menu bash ~/.config/sway/scripts/menu
|
||||||
set $pass_menu $term --class fzf-pass -e sh -c /usr/bin/fzf-pass
|
set $pass_menu $tty-popup pass $scripts/fzf-pass
|
||||||
|
|
||||||
set $clipman_menu bash ~/.config/sway/scripts/menu_clipman
|
set $clipman_menu bash ~/.config/sway/scripts/menu_clipman
|
||||||
set $clipman_clear_menu bash ~/.config/sway/scripts/clipman_clear_menu
|
set $clipman_clear_menu bash ~/.config/sway/scripts/clipman_clear_menu
|
||||||
|
@ -23,9 +23,8 @@ set $printscreen bash ~/.config/sway/scripts/printscreen
|
||||||
set $PIP floating enabled ; sticky enabled ; border pixel 0
|
set $PIP floating enabled ; sticky enabled ; border pixel 0
|
||||||
for_window [class="mpv"] $PIP
|
for_window [class="mpv"] $PIP
|
||||||
for_window [class="pip"] $PIP
|
for_window [class="pip"] $PIP
|
||||||
for_window [window_role="PictureInPicture"] $PIP
|
for_window [class="feh"] $PIP
|
||||||
for_window [class="feh"] floating enabled ; border pixel 0
|
for_window [app_id="firefox" title="^Picture-in-Picture$"] $PIP
|
||||||
for_window [app_id="fzf-pass"] focus, floating enabled, border pixel 1
|
|
||||||
for_window [app_id="tty-popup"] focus; $PIP
|
for_window [app_id="tty-popup"] focus; $PIP
|
||||||
for_window [app_id="tty-popup" title="^pass$"] resize set 33 ppt 33 ppt
|
for_window [app_id="tty-popup" title="^pass$"] resize set 33 ppt 33 ppt
|
||||||
|
|
||||||
|
|
50
sway/scripts/fzf-pass
Executable file
50
sway/scripts/fzf-pass
Executable file
|
@ -0,0 +1,50 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
# Credit goes to https://git.reekynet.com/ReekyMarko/fzf-pass for this.
|
||||||
|
|
||||||
|
cd "$HOME/.password-store" || exit 1
|
||||||
|
PASSFILE=$(tree -Ffi \
|
||||||
|
| grep '.gpg' \
|
||||||
|
| sed 's/.gpg$//g' \
|
||||||
|
| sed 's/^..//' \
|
||||||
|
| fzf --reverse --no-info --prompt='pass::' --pointer='➜' --no-multi )
|
||||||
|
|
||||||
|
|
||||||
|
if [ -z "$PASSFILE" ]; then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
PASSDATA="$(pass "$PASSFILE")"
|
||||||
|
USRNAME="$(echo "$PASSDATA" | grep "username:" | cut -d' ' -f2-)"
|
||||||
|
PASS="$(echo "$PASSDATA" | head -n 1)"
|
||||||
|
URL="$(echo "$PASSDATA" | grep url: | cut -d' ' -f2-)"
|
||||||
|
|
||||||
|
RESP=$(cat <<EOF | fzf
|
||||||
|
Autotype
|
||||||
|
Username
|
||||||
|
Password
|
||||||
|
URL
|
||||||
|
Page
|
||||||
|
EOF
|
||||||
|
);
|
||||||
|
|
||||||
|
swaymsg move container to workspace 9
|
||||||
|
|
||||||
|
case "$RESP" in
|
||||||
|
Autotype)
|
||||||
|
ydotool type "$USRNAME" && ydotool key Tab && ydotool type "$PASS" && ydotool key Enter
|
||||||
|
;;
|
||||||
|
Username)
|
||||||
|
ydotool type "$USRNAME"
|
||||||
|
;;
|
||||||
|
Password)
|
||||||
|
ydotool type "$PASS"
|
||||||
|
;;
|
||||||
|
URL)
|
||||||
|
ydotool type "$URL"
|
||||||
|
;;
|
||||||
|
Page)
|
||||||
|
"$(dirname "$0")/tty-popup" info "bash -c 'echo ${PASSDATA} | LESS=R less'"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
exit 1
|
||||||
|
esac
|
|
@ -1,5 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
# -*- sh -*-
|
|
||||||
gopass ls --flat \
|
|
||||||
| rofi -dmenu -p pass -i \
|
|
||||||
| xargs --no-run-if-empty gopass show -c
|
|
Loading…
Reference in New Issue
Block a user