Привет, написал небольшой скриптик для ввода паролей в различные окна через rofi, пароли беру из pass. Скрипт:
#!/bin/bash
passwords=$(find /home/user/.password-store/ -type f -name *.gpg)
selected_pass=$(echo -e "$passwords" | awk -F "/" '{printf "%s > %s\n", $5, $6}' | rofi -dmenu -p Pass)
item=$(echo "$selected_pass" | awk '{printf "%s/%s", $1, $3}' | sed 's/\.gpg//g')
data=$(pass show $item)
pass=$(echo -e "$data" | head -n1)
login=$(echo -e "$data" | grep -e "^login: " | sed 's/^login: //g')
xdotool type "$login"
xdotool key Tab
xdotool type "$pass"
В awesome wm забиндил клавишу которая его вызывает вот так:
awful.key({ modkey}, "p", function () awful.spawn.with_shell("/home/user/Scripts/rofi_pass.sh") end ,
{description = "rofi pass", group = "launcher"}),
Но эпизодически он не работает. Т.е. если я его вызываю по горячей клавише он не работает, если я вызываю его из консоли (или в консоли запущу pass) то начинает работать и с горячей клавиши тоже, через время опять отваливается пока не запущу из консоли.
Причина в том что gpg-agent перестает работать или устаревает его кеш хз. Но если я останавливаю gpg-agent сам: gpgconf --kill gpg-agent
, то сразу перестает работать и начинает после того как запущу из консоли.
Подозреваю что не правильно его вызываю в awesome wm, т.е. что то из окружения он может не видит. Как поправить ?