diff options
| author | Dylan <boss@tehbox.org> | 2026-04-29 23:15:45 +1200 |
|---|---|---|
| committer | Dylan <boss@tehbox.org> | 2026-04-29 23:19:15 +1200 |
| commit | f96e43f992211290e3287facc505bea0bc1a3931 (patch) | |
| tree | 02860a965002f0418847cedad2fac2e71208b443 /home-manager/i3/scripts/rofi-passmenu | |
| parent | da3a4174ae0a287871e36899893abe9c858ad7e5 (diff) | |
| download | nixos-configuration-master.tar.gz nixos-configuration-master.zip | |
Lots of updates
Diffstat (limited to 'home-manager/i3/scripts/rofi-passmenu')
| -rwxr-xr-x | home-manager/i3/scripts/rofi-passmenu | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/home-manager/i3/scripts/rofi-passmenu b/home-manager/i3/scripts/rofi-passmenu new file mode 100755 index 0000000..798961b --- /dev/null +++ b/home-manager/i3/scripts/rofi-passmenu @@ -0,0 +1,27 @@ +#!/usr/bin/env bash + +shopt -s nullglob globstar + +typeit=1 + +if [[ -n $WAYLAND_DISPLAY ]]; then + rofi=rofi-wl + xdotool="ydotool type --file -" +elif [[ -n $DISPLAY ]]; then + rofi=rofi + xdotool="xdotool type --clearmodifiers --file -" +else + echo "Error: No Wayland or X11 display detected" >&2 + exit 1 +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[@]}" | "$rofi" -dmenu "$@") + +[[ -n $password ]] || exit + +pass show "$password" | { IFS= read -r pass; printf %s "$pass"; } | $xdotool |
