5f5b2dcf26
With the current patch, pass will try to use `xclip` when `$DISPLAY` is set. Termux (most of the time) doesn't have `xclip` even if `$DISPLAY` is set, so this change will check for `xclip` specifically (and `wl-copy`/`wl-paste` in case of `$WAYLAND_DISPLAY`). So, if a user has `xclip` and `$DISPLAY` set, it will still use `xclip`, otherwise it will use `termux-clipboard-set`.
47 lines
1.6 KiB
Diff
47 lines
1.6 KiB
Diff
--- password-store-1.7.4/src/password-store.sh 2021-06-11 18:49:06.000000000 +0200
|
|
+++ password-store-1.7.4.mod/src/password-store.sh 2021-07-26 10:10:09.076790995 +0200
|
|
@@ -155,7 +155,7 @@
|
|
#
|
|
|
|
clip() {
|
|
- if [[ -n $WAYLAND_DISPLAY ]]; then
|
|
+ if [[ -n $WAYLAND_DISPLAY ]] && hash wl-copy 2>/dev/null && hash wl-paste 2>/dev/null; then
|
|
local copy_cmd=( wl-copy )
|
|
local paste_cmd=( wl-paste -n )
|
|
if [[ $X_SELECTION == primary ]]; then
|
|
@@ -163,12 +163,14 @@
|
|
paste_cmd+=( --primary )
|
|
fi
|
|
local display_name="$WAYLAND_DISPLAY"
|
|
- elif [[ -n $DISPLAY ]]; then
|
|
+ elif [[ -n $DISPLAY ]] && hash xclip 2>/dev/null; then
|
|
local copy_cmd=( xclip -selection "$X_SELECTION" )
|
|
local paste_cmd=( xclip -o -selection "$X_SELECTION" )
|
|
local display_name="$DISPLAY"
|
|
else
|
|
- die "Error: No X11 or Wayland display detected"
|
|
+ local copy_cmd=( termux-clipboard-set )
|
|
+ local paste_cmd=( termux-clipboard-get )
|
|
+ local display_name="termux"
|
|
fi
|
|
local sleep_argv0="password store sleep on display $display_name"
|
|
|
|
@@ -225,7 +227,7 @@
|
|
}
|
|
trap remove_tmpfile EXIT
|
|
else
|
|
- [[ $warn -eq 1 ]] && yesno "$(cat <<-_EOF
|
|
+ [[ $(uname -o) == "Android" ]] || [[ $warn -eq 1 ]] && yesno "$(cat <<-_EOF
|
|
Your system does not have /dev/shm, which means that it may
|
|
be difficult to entirely erase the temporary non-encrypted
|
|
password file after editing.
|
|
@@ -233,7 +235,7 @@
|
|
Are you sure you would like to continue?
|
|
_EOF
|
|
)"
|
|
- SECURE_TMPDIR="$(mktemp -d "${TMPDIR:-/tmp}/$template")"
|
|
+ SECURE_TMPDIR="$(mktemp -d "${TMPDIR:-@TERMUX_PREFIX@/tmp}/$template")"
|
|
shred_tmpfile() {
|
|
find "$SECURE_TMPDIR" -type f -exec $SHRED {} +
|
|
rm -rf "$SECURE_TMPDIR"
|