diff options
Diffstat (limited to '.local/bin/dmenu')
-rwxr-xr-x | .local/bin/dmenu/dm-pass | 24 | ||||
-rwxr-xr-x | .local/bin/dmenu/dm-power | 11 |
2 files changed, 35 insertions, 0 deletions
diff --git a/.local/bin/dmenu/dm-pass b/.local/bin/dmenu/dm-pass new file mode 100755 index 0000000..5420549 --- /dev/null +++ b/.local/bin/dmenu/dm-pass @@ -0,0 +1,24 @@ +#!/bin/sh + +DMENU_CMD="dmenu -p 'Pass:' -b -i -fn 'JetBrainsMono Nerd Font:size=11'" + +entry=$(find "$PASSWORD_STORE_DIR" -name '*.gpg' |\ + sed "s|$PASSWORD_STORE_DIR/||" |\ + sed "s|.gpg||" |\ + sort -n |\ + eval "$DMENU_CMD") || exit 1 + +details=$(pass "$entry") || exit 1 +user=$(echo "$details" | sed -n '2p' | sed 's|user: ||') +pass=$(echo "$details" | head -n1) + +case "$(printf "autotype\npass\nuser" | eval "$DMENU_CMD")" in + autotype) + xdotool type "$user" + xdotool key Tab + xdotool type "$pass" ;; + pass) + xdotool type "$pass" ;; + user) + xdotool type "$user" ;; +esac diff --git a/.local/bin/dmenu/dm-power b/.local/bin/dmenu/dm-power new file mode 100755 index 0000000..77bcfd9 --- /dev/null +++ b/.local/bin/dmenu/dm-power @@ -0,0 +1,11 @@ +#!/bin/sh + +case "$(printf "Shutdown\nRestart\nLogout\nSuspend\nLock" | dmenu \ + -fn 'JetBrainsMono NerdFont:size=11' -i \ + -b -p 'Power:')" in + Shutdown) exec systemctl poweroff;; + Restart) exec systemctl reboot;; + Logout) kill -HUP "$XDG_SESSION_PID";; + Suspend) exec systemctl suspend;; + Lock) exec systemctl --user start lock.target;; +esac |