diff options
| author | Dylan <boss@tehbox.org> | 2026-10-17 21:53:43 +1300 |
|---|---|---|
| committer | Dylan <boss@tehbox.org> | 2026-10-17 21:53:43 +1300 |
| commit | 280e1bbe5e733128a451260685cc8ecd10a042a3 (patch) | |
| tree | 78bab82353bbfa00f9a781015e246c274a5c983b /modules/home-manager/i3/scripts/rofi-passmenu | |
| parent | bcfc69e424802276cc52fb6e00fb4a42e9c37816 (diff) | |
| download | nixos-configuration-280e1bbe5e733128a451260685cc8ecd10a042a3.tar.gz nixos-configuration-280e1bbe5e733128a451260685cc8ecd10a042a3.zip | |
feat: Dendritic pattern
This re-write was done with the help of claude, and still needs a
decent amount of changes before it properly follows the dendritic
pattern
Diffstat (limited to 'modules/home-manager/i3/scripts/rofi-passmenu')
| -rwxr-xr-x | modules/home-manager/i3/scripts/rofi-passmenu | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/modules/home-manager/i3/scripts/rofi-passmenu b/modules/home-manager/i3/scripts/rofi-passmenu new file mode 100755 index 0000000..798961b --- /dev/null +++ b/modules/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 |
