diff --git a/sysutils/password-store/Makefile b/sysutils/password-store/Makefile index f660cea73de8..12311686272f 100644 --- a/sysutils/password-store/Makefile +++ b/sysutils/password-store/Makefile @@ -1,74 +1,72 @@ PORTNAME= password-store -PORTVERSION= 1.7.3 -PORTREVISION= 2 +PORTVERSION= 1.7.4 CATEGORIES= sysutils MASTER_SITES= https://git.zx2c4.com/${PORTNAME}/snapshot/ MAINTAINER= rene@FreeBSD.org COMMENT= Stores, retrieves, generates, and synchronizes passwords securely LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING RUN_DEPENDS= bash:shells/bash \ getopt>=0:misc/getopt \ gnupg>=2:security/gnupg \ tree>=1.7:sysutils/tree USES= tar:xz NO_ARCH= yes NO_BUILD= yes OPTIONS_DEFINE= CONTRIB EXAMPLES GIT XCLIP WAYLAND QRENCODE OPTIONS_DEFAULT= CONTRIB XCLIP OPTIONS_SUB= yes GIT_DESC= Enable git storage XCLIP_DESC= Enable xclip feature WAYLAND_DESC= Enable wl-clipboard support CONTRIB_DESC= Include shell completions, import scripts, related projects QRENCODE_DESC= Enable QR code support GIT_RUN_DEPENDS= git>=0:devel/git XCLIP_RUN_DEPENDS= base64>=0:converters/base64 \ xclip>=0:x11/xclip CONTRIB_RUN_DEPENDS= pwgen>=0:sysutils/pwgen QRENCODE_RUN_DEPENDS= libqrencode>=0:graphics/libqrencode WAYLAND_RUN_DEPENDS= wl-clipboard>=0:x11/wl-clipboard -WAYLAND_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-wayland-copy-paste.diff:-p1 SUB_FILES= pass .include post-patch: @${REINPLACE_CMD} -Ee 's|/usr/local|${LOCALBASE}|g' ${WRKSRC}/src/platform/freebsd.sh @${REINPLACE_CMD} -Ee 's|^SYSTEM_EXTENSION_DIR=""|SYSTEM_EXTENSION_DIR="${PREFIX}/libexec/${PORTNAME}/extensions"|g' \ ${WRKSRC}/src/${PORTNAME}.sh do-install: ${INSTALL_SCRIPT} ${WRKDIR}/pass ${STAGEDIR}${PREFIX}/bin/ ${MKDIR} ${STAGEDIR}${PREFIX}/libexec/${PORTNAME}/extensions ${MKDIR} ${STAGEDIR}${PREFIX}/libexec/${PORTNAME}/platform ${INSTALL_SCRIPT} ${WRKSRC}/src/${PORTNAME}.sh ${STAGEDIR}${PREFIX}/libexec/${PORTNAME}/pass ${INSTALL_SCRIPT} ${WRKSRC}/src/platform/freebsd.sh ${STAGEDIR}${PREFIX}/libexec/${PORTNAME}/platform/ ${INSTALL_MAN} ${WRKSRC}/man/pass.1 ${STAGEDIR}${MANPREFIX}/man/man1/pass.1 do-install-CONTRIB-on: @${RM} ${WRKSRC}/contrib/emacs/.gitignore @${MKDIR} ${STAGEDIR}${DATADIR} (cd ${WRKSRC}/contrib && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}) (cd ${WRKSRC}/src/completion && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}) @${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions ${INSTALL_DATA} ${STAGEDIR}${DATADIR}/pass.zsh-completion ${STAGEDIR}${PREFIX}/share/zsh/site-functions/_pass @${MKDIR} ${STAGEDIR}${PREFIX}/etc/bash_completion.d ${INSTALL_DATA} ${STAGEDIR}${DATADIR}/pass.bash-completion ${STAGEDIR}${PREFIX}/etc/bash_completion.d/${PORTNAME} @${MKDIR} ${STAGEDIR}${PREFIX}/share/fish/completions ${INSTALL_DATA} ${STAGEDIR}${DATADIR}/pass.fish-completion ${STAGEDIR}${PREFIX}/share/fish/completions/${PORTNAME}.fish do-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${INSTALL_SCRIPT} ${WRKSRC}/man/example-filter.sh ${STAGEDIR}${EXAMPLESDIR} .include diff --git a/sysutils/password-store/distinfo b/sysutils/password-store/distinfo index af7702fada29..11837bdda8fb 100644 --- a/sysutils/password-store/distinfo +++ b/sysutils/password-store/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1533287832 -SHA256 (password-store-1.7.3.tar.xz) = 2b6c65846ebace9a15a118503dcd31b6440949a30d3b5291dfb5b1615b99a3f4 -SIZE (password-store-1.7.3.tar.xz) = 63416 +TIMESTAMP = 1623445616 +SHA256 (password-store-1.7.4.tar.xz) = cfa9faf659f2ed6b38e7a7c3fb43e177d00edbacc6265e6e32215ff40e3793c0 +SIZE (password-store-1.7.4.tar.xz) = 65272 diff --git a/sysutils/password-store/files/extra-patch-wayland-copy-paste.diff b/sysutils/password-store/files/extra-patch-wayland-copy-paste.diff deleted file mode 100644 index ac13f4c38372..000000000000 --- a/sysutils/password-store/files/extra-patch-wayland-copy-paste.diff +++ /dev/null @@ -1,110 +0,0 @@ -From b0b784b1a57c0b06936e6f5d6560712b4b810cd3 Mon Sep 17 00:00:00 2001 -From: Brett Cornwall -Date: Wed, 27 Feb 2019 00:08:33 -0700 -Subject: clip: Add support for wl-clipboard - ---- - README | 4 +++- - man/pass.1 | 5 +++++ - src/password-store.sh | 26 +++++++++++++++++++++----- - 3 files changed, 29 insertions(+), 6 deletions(-) - -diff --git a/README b/README -index 6b59965..1a46242 100644 ---- a/README -+++ b/README -@@ -19,8 +19,10 @@ Depends on: - http://www.gnupg.org/ - - git - http://www.git-scm.com/ --- xclip -+- xclip (for X11 environments) - http://sourceforge.net/projects/xclip/ -+- wl-clipboard (for wlroots Wayland-based environments) -+ https://github.com/bugaevc/wl-clipboard - - tree >= 1.7.0 - http://mama.indstate.edu/users/ice/tree/ - - GNU getopt -diff --git a/man/pass.1 b/man/pass.1 -index 01a3fbe..a555dcb 100644 ---- a/man/pass.1 -+++ b/man/pass.1 -@@ -99,6 +99,8 @@ Decrypt and print a password named \fIpass-name\fP. If \fI--clip\fP or \fI-c\fP - is specified, do not print the password but instead copy the first (or otherwise specified) - line to the clipboard using - .BR xclip (1) -+or -+.BR wl-clipboard(1) - and then restore the clipboard after 45 (or \fIPASSWORD_STORE_CLIP_TIME\fP) seconds. If \fI--qrcode\fP - or \fI-q\fP is specified, do not print the password but instead display a QR code using - .BR qrencode (1) -@@ -132,6 +134,8 @@ in generating passwords can be changed with the \fIPASSWORD_STORE_CHARACTER_SET\ - If \fI--clip\fP or \fI-c\fP is specified, do not print the password but instead copy - it to the clipboard using - .BR xclip (1) -+or -+.BR wl-clipboard(1) - and then restore the clipboard after 45 (or \fIPASSWORD_STORE_CLIP_TIME\fP) seconds. If \fI--qrcode\fP - or \fI-q\fP is specified, do not print the password but instead display a QR code using - .BR qrencode (1) -@@ -466,6 +470,7 @@ The location of the text editor used by \fBedit\fP. - .BR tr (1), - .BR git (1), - .BR xclip (1), -+.BR wl-clipboard (1), - .BR qrencode (1). - - .SH AUTHOR -diff --git a/src/password-store.sh b/src/password-store.sh -index d89d455..284eabf 100755 ---- a/src/password-store.sh -+++ b/src/password-store.sh -@@ -152,16 +152,32 @@ check_sneaky_paths() { - # - - clip() { -+ if [[ -n $WAYLAND_DISPLAY ]]; then -+ local copy_cmd=( wl-copy ) -+ local paste_cmd=( wl-paste -n ) -+ if [[ $X_SELECTION == primary ]]; then -+ copy_cmd+=( --primary ) -+ paste_cmd+=( --primary ) -+ fi -+ local display_name="$WAYLAND_DISPLAY" -+ elif [[ -n $DISPLAY ]]; 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" -+ fi -+ local sleep_argv0="password store sleep on display $display_name" -+ - # This base64 business is because bash cannot store binary data in a shell - # variable. Specifically, it cannot store nulls nor (non-trivally) store - # trailing new lines. -- local sleep_argv0="password store sleep on display $DISPLAY" - pkill -f "^$sleep_argv0" 2>/dev/null && sleep 0.5 -- local before="$(xclip -o -selection "$X_SELECTION" 2>/dev/null | $BASE64)" -- echo -n "$1" | xclip -selection "$X_SELECTION" || die "Error: Could not copy data to the clipboard" -+ local before="$("${paste_cmd[@]}" 2>/dev/null | $BASE64)" -+ echo -n "$1" | "${copy_cmd[@]}" || die "Error: Could not copy data to the clipboard" - ( - ( exec -a "$sleep_argv0" bash <<<"trap 'kill %1' TERM; sleep '$CLIP_TIME' & wait" ) -- local now="$(xclip -o -selection "$X_SELECTION" | $BASE64)" -+ local now="$("${paste_cmd[@]}" | $BASE64)" - [[ $now != $(echo -n "$1" | $BASE64) ]] && before="$now" - - # It might be nice to programatically check to see if klipper exists, -@@ -173,7 +189,7 @@ clip() { - # so we axe it here: - qdbus org.kde.klipper /klipper org.kde.klipper.klipper.clearClipboardHistory &>/dev/null - -- echo "$before" | $BASE64 -d | xclip -selection "$X_SELECTION" -+ echo "$before" | $BASE64 -d | "${copy_cmd[@]}" - ) >/dev/null 2>&1 & disown - echo "Copied $2 to clipboard. Will clear in $CLIP_TIME seconds." - } --- -cgit v1.2.3-4-ga26e -