summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--emacs/29.2/01_all_sanity-check.patch13
-rw-r--r--emacs/29.2/02_all_epg-gpmsm.patch38
2 files changed, 51 insertions, 0 deletions
diff --git a/emacs/29.2/01_all_sanity-check.patch b/emacs/29.2/01_all_sanity-check.patch
new file mode 100644
index 0000000..6509cf7
--- /dev/null
+++ b/emacs/29.2/01_all_sanity-check.patch
@@ -0,0 +1,13 @@
+https://bugs.gentoo.org/916180
+
+--- emacs-29.1/Makefile.in
++++ emacs-29.1/Makefile.in
+@@ -417,7 +417,7 @@
+
+ sanity-check:
+ @[ -f .no-advice-on-failure ] && exit 0; true
+- @v=$$(src/emacs${EXEEXT} --batch --eval \
++ @v=$$(src/emacs${EXEEXT} --batch --quick --eval \
+ '(progn (defun f (n) (if (= 0 n) 1 (* n (f (- n 1))))) (princ (f 10)))' \
+ 2> /dev/null); \
+ [ "X$$v" = "X3628800" ] && exit 0; \
diff --git a/emacs/29.2/02_all_epg-gpmsm.patch b/emacs/29.2/02_all_epg-gpmsm.patch
new file mode 100644
index 0000000..646798c
--- /dev/null
+++ b/emacs/29.2/02_all_epg-gpmsm.patch
@@ -0,0 +1,38 @@
+Don't enable pinentry loopback mode for gpgsm
+Patch from master branch
+https://debbugs.gnu.org/67012
+
+commit e736a1b5a2aa2dd8dbaba32a408db70822fe434f
+Author: Ulrich Müller <ulm@gentoo.org>
+Date: Fri Nov 17 12:16:54 2023 +0100
+
+ Don't enable pinentry loopback mode for gpgsm
+
+--- a/doc/misc/epa.texi
++++ b/doc/misc/epa.texi
+@@ -640,6 +640,9 @@ GnuPG Pinentry
+ Emacs.
+ @end enumerate
+
++Note that loopback Pinentry does not work with @command{gpgsm},
++therefore EasyPG will ignore this setting for it.
++
+ There are other options available to use Emacs as Pinentry, you might
+ come across a Pinentry called @command{pinentry-emacs} or
+ @command{gpg-agent} option @code{allow-emacs-pinentry}. However,
+--- a/lisp/epg.el
++++ b/lisp/epg.el
+@@ -595,7 +595,12 @@ epg--start
+ (if (epg-context-textmode context) '("--textmode"))
+ (if (epg-context-output-file context)
+ (list "--output" (epg-context-output-file context)))
+- (if (epg-context-pinentry-mode context)
++ (if (and (epg-context-pinentry-mode context)
++ (not
++ ;; loopback doesn't work with gpgsm
++ (and (eq (epg-context-protocol context) 'CMS)
++ (eq (epg-context-pinentry-mode context)
++ 'loopback))))
+ (list "--pinentry-mode"
+ (symbol-name (epg-context-pinentry-mode
+ context))))