Compare commits
No commits in common. "c8s" and "c9s" have entirely different histories.
33
.gitignore
vendored
33
.gitignore
vendored
@ -1,4 +1,31 @@
|
|||||||
SOURCES/emacs-26.1.tar.xz
|
/emacs-23.3a.tar.bz2
|
||||||
SOURCES/package-keyring.gpg
|
/php-mode.el
|
||||||
|
/emacs-24.0.92.tar.gz
|
||||||
|
/emacs-24.0.93.tar.gz
|
||||||
|
/emacs-24.0.94.tar.gz
|
||||||
|
/emacs-24.0.95.tar.gz
|
||||||
|
/emacs-24.0.97.tar.gz
|
||||||
|
/emacs-24.1-rc.tar.gz
|
||||||
|
/emacs-24.1.tar.bz2
|
||||||
|
/emacs-24.2.tar.xz
|
||||||
|
/emacs-24.3.tar.xz
|
||||||
|
/emacs-24.4.tar.xz
|
||||||
|
/emacs-24.5.tar.xz
|
||||||
|
/emacs-25.0.92.tar.xz
|
||||||
|
/emacs-25.0.93.tar.xz
|
||||||
|
/emacs-25.0.94.tar.xz
|
||||||
|
/emacs-25.0.95.tar.xz
|
||||||
|
/emacs-25.1-rc1.tar.xz
|
||||||
|
/emacs-25.1-rc2.tar.xz
|
||||||
|
/emacs-25.1.tar.xz
|
||||||
|
/emacs-25.2-rc2.tar.xz
|
||||||
|
/emacs-25.2.tar.xz
|
||||||
|
/emacs-25.3.tar.xz
|
||||||
/emacs-26.1.tar.xz
|
/emacs-26.1.tar.xz
|
||||||
/package-keyring.gpg
|
/emacs-26.2.tar.xz
|
||||||
|
/emacs-26.3.tar.xz
|
||||||
|
/emacs-26.3.tar.xz.sig
|
||||||
|
/emacs-27.1.tar.xz
|
||||||
|
/emacs-27.1.tar.xz.sig
|
||||||
|
/emacs-27.2.tar.xz
|
||||||
|
/emacs-27.2.tar.xz.sig
|
31
emacs-64KB-page-size-for-pdump.patch
Normal file
31
emacs-64KB-page-size-for-pdump.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
From 216c65b135c2b0be7e048cdc6683873b03b99b9a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lars Ingebrigtsen <larsi@gnus.org>
|
||||||
|
Date: Sun, 28 Mar 2021 19:13:00 +0200
|
||||||
|
Subject: [PATCH] Use a 64KB page size for pdump
|
||||||
|
|
||||||
|
* src/pdumper.c (dump_get_page_size): Use a 64KB page size on all
|
||||||
|
architectures, as this many vary between systems (bug#47125).
|
||||||
|
---
|
||||||
|
src/pdumper.c | 6 +-----
|
||||||
|
1 file changed, 1 insertion(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/pdumper.c b/src/pdumper.c
|
||||||
|
index 337742fda4..fdd9b3bacb 100644
|
||||||
|
--- a/src/pdumper.c
|
||||||
|
+++ b/src/pdumper.c
|
||||||
|
@@ -162,11 +162,7 @@ ptrdiff_t_to_dump_off (ptrdiff_t value)
|
||||||
|
static int
|
||||||
|
dump_get_page_size (void)
|
||||||
|
{
|
||||||
|
-#if defined (WINDOWSNT) || defined (CYGWIN)
|
||||||
|
- return 64 * 1024; /* Worst-case allocation granularity. */
|
||||||
|
-#else
|
||||||
|
- return getpagesize ();
|
||||||
|
-#endif
|
||||||
|
+ return 64 * 1024;
|
||||||
|
}
|
||||||
|
|
||||||
|
#define dump_offsetof(type, member) \
|
||||||
|
--
|
||||||
|
2.36.1
|
||||||
|
|
@ -1,11 +1,14 @@
|
|||||||
---
|
---
|
||||||
emacs-27.2/doc/emacs/misc.texi | 33 +++++++++++++++++
|
emacs-27.2/doc/emacs/misc.texi | 33 +++++++++++++++++
|
||||||
|
emacs-27.2/doc/misc/efaq.texi | 7 +++
|
||||||
|
emacs-27.2/etc/NEWS | 23 ++++++++++++
|
||||||
emacs-27.2/lisp/emacs-lisp/macroexp.el | 10 ++++-
|
emacs-27.2/lisp/emacs-lisp/macroexp.el | 10 ++++-
|
||||||
emacs-27.2/lisp/files.el | 60 +++++++++++++++++++++++++++++---
|
emacs-27.2/lisp/files.el | 60 +++++++++++++++++++++++++++++---
|
||||||
emacs-27.2/lisp/ielm.el | 3 +
|
emacs-27.2/lisp/ielm.el | 3 +
|
||||||
emacs-27.2/lisp/progmodes/elisp-mode.el | 58 +++++++++++++++++++++++++-----
|
emacs-27.2/lisp/progmodes/elisp-mode.el | 58 +++++++++++++++++++++++++-----
|
||||||
emacs-27.2/lisp/simple.el | 1
|
emacs-27.2/lisp/simple.el | 1
|
||||||
6 files changed, 189 insertions(+), 20 deletions(-)
|
emacs-27.2/lisp/startup.el | 14 +++++--
|
||||||
|
9 files changed, 189 insertions(+), 20 deletions(-)
|
||||||
|
|
||||||
--- emacs-27.2/doc/emacs/misc.texi
|
--- emacs-27.2/doc/emacs/misc.texi
|
||||||
+++ emacs-27.2/doc/emacs/misc.texi 2025-03-03 09:18:41.368169799 +0000
|
+++ emacs-27.2/doc/emacs/misc.texi 2025-03-03 09:18:41.368169799 +0000
|
||||||
@ -49,6 +52,54 @@
|
|||||||
@xref{Security Considerations,,, elisp, The Emacs Lisp Reference
|
@xref{Security Considerations,,, elisp, The Emacs Lisp Reference
|
||||||
Manual}, for more information about security considerations when using
|
Manual}, for more information about security considerations when using
|
||||||
Emacs as part of a larger application.
|
Emacs as part of a larger application.
|
||||||
|
--- emacs-27.2/doc/misc/efaq.texi
|
||||||
|
+++ emacs-27.2/doc/misc/efaq.texi 2025-03-03 09:18:41.368169799 +0000
|
||||||
|
@@ -1001,6 +1001,13 @@ Native support for @acronym{JSON} parsin
|
||||||
|
@file{json.el}.
|
||||||
|
|
||||||
|
@item
|
||||||
|
+New user option @code{trusted-contents} to allow potentially dangerous
|
||||||
|
+Emacs features which could execute arbitrary Lisp code. Use this
|
||||||
|
+variable to list files and directories whose contents Emacs should
|
||||||
|
+trust, thus allowing those potentially dangerous features when those
|
||||||
|
+files are visited.
|
||||||
|
+
|
||||||
|
+@item
|
||||||
|
Cairo drawing is no longer experimental.
|
||||||
|
|
||||||
|
@cindex portable dumper
|
||||||
|
--- emacs-27.2/etc/NEWS
|
||||||
|
+++ emacs-27.2/etc/NEWS 2025-03-03 09:18:41.368169799 +0000
|
||||||
|
@@ -15,6 +15,29 @@ in older Emacs versions.
|
||||||
|
You can narrow news to a specific version by calling 'view-emacs-news'
|
||||||
|
with a prefix argument or by typing 'C-u C-h C-n'.
|
||||||
|
|
||||||
|
+* Changes for CVE-2024-53920
|
||||||
|
+
|
||||||
|
+** New user option 'trusted-content' to allow potentially dangerous features.
|
||||||
|
+This variable lists those files and directories whose content Emacs should
|
||||||
|
+consider as sufficiently trusted to run any part of the code contained
|
||||||
|
+therein even without any explicit user request.
|
||||||
|
+For example, Flymake's backend for Emacs Lisp consults this variable
|
||||||
|
+and disables itself with an "untrusted content" warning if the file
|
||||||
|
+is not listed.
|
||||||
|
+
|
||||||
|
+Emacs Lisp authors should note that a major or minor mode must never set
|
||||||
|
+this variable to the ':all' value.
|
||||||
|
+
|
||||||
|
+This option is used to fix CVE-2024-53920. See below for details.
|
||||||
|
+
|
||||||
|
+** Emacs Lisp mode
|
||||||
|
+
|
||||||
|
+*** 'elisp-flymake-byte-compile' is disabled for untrusted files.
|
||||||
|
+For security reasons, this backend can be used only in those files
|
||||||
|
+specified as trusted according to 'trusted-content' and emits an
|
||||||
|
+"untrusted content" warning otherwise.
|
||||||
|
+This fixes CVE-2024-53920.
|
||||||
|
+
|
||||||
|
|
||||||
|
* Changes in Emacs 27.2
|
||||||
|
|
||||||
--- emacs-27.2/lisp/emacs-lisp/macroexp.el
|
--- emacs-27.2/lisp/emacs-lisp/macroexp.el
|
||||||
+++ emacs-27.2/lisp/emacs-lisp/macroexp.el 2025-03-03 09:18:41.368169799 +0000
|
+++ emacs-27.2/lisp/emacs-lisp/macroexp.el 2025-03-03 09:18:41.368169799 +0000
|
||||||
@@ -94,12 +94,20 @@ each clause."
|
@@ -94,12 +94,20 @@ each clause."
|
||||||
@ -64,12 +115,12 @@
|
|||||||
+case return FORM unchanged."
|
+case return FORM unchanged."
|
||||||
+ (if macroexp-inhibit-compiler-macros
|
+ (if macroexp-inhibit-compiler-macros
|
||||||
+ form
|
+ form
|
||||||
(condition-case err
|
(condition-case-unless-debug err
|
||||||
(apply handler form (cdr form))
|
(apply handler form (cdr form))
|
||||||
(error
|
(error
|
||||||
(message "Compiler-macro error for %S: %S" (car form) err)
|
(message "Compiler-macro error for %S: %S" (car form) err)
|
||||||
- form)))
|
- form)))
|
||||||
+ form))))
|
+ form))))
|
||||||
|
|
||||||
(defun macroexp--funcall-if-compiled (_form)
|
(defun macroexp--funcall-if-compiled (_form)
|
||||||
"Pseudo function used internally by macroexp to delay warnings.
|
"Pseudo function used internally by macroexp to delay warnings.
|
||||||
@ -136,13 +187,13 @@
|
|||||||
--- emacs-27.2/lisp/ielm.el
|
--- emacs-27.2/lisp/ielm.el
|
||||||
+++ emacs-27.2/lisp/ielm.el 2025-03-03 09:18:41.372169725 +0000
|
+++ emacs-27.2/lisp/ielm.el 2025-03-03 09:18:41.372169725 +0000
|
||||||
@@ -616,7 +616,8 @@ See `inferior-emacs-lisp-mode' for detai
|
@@ -616,7 +616,8 @@ See `inferior-emacs-lisp-mode' for detai
|
||||||
(unless (comint-check-proc "*ielm*")
|
(unless (comint-check-proc buf-name)
|
||||||
(with-current-buffer (get-buffer-create "*ielm*")
|
(with-current-buffer (get-buffer-create buf-name)
|
||||||
(unless (zerop (buffer-size)) (setq old-point (point)))
|
(unless (zerop (buffer-size)) (setq old-point (point)))
|
||||||
- (inferior-emacs-lisp-mode)))
|
- (inferior-emacs-lisp-mode)))
|
||||||
+ (inferior-emacs-lisp-mode)
|
+ (inferior-emacs-lisp-mode)
|
||||||
+ (setq-local trusted-content :all)))
|
+ (setq-local trusted-content :all)))
|
||||||
(pop-to-buffer-same-window "*ielm*")
|
(pop-to-buffer-same-window buf-name)
|
||||||
(when old-point (push-mark old-point))))
|
(when old-point (push-mark old-point))))
|
||||||
|
|
||||||
--- emacs-27.2/lisp/progmodes/elisp-mode.el
|
--- emacs-27.2/lisp/progmodes/elisp-mode.el
|
||||||
@ -229,10 +280,33 @@
|
|||||||
--- emacs-27.2/lisp/simple.el
|
--- emacs-27.2/lisp/simple.el
|
||||||
+++ emacs-27.2/lisp/simple.el 2025-03-03 09:18:41.372169725 +0000
|
+++ emacs-27.2/lisp/simple.el 2025-03-03 09:18:41.372169725 +0000
|
||||||
@@ -1621,6 +1621,7 @@ display the result of expression evaluat
|
@@ -1621,6 +1621,7 @@ display the result of expression evaluat
|
||||||
(eldoc-mode 1)
|
;; `eldoc--eval-expression-setup')?
|
||||||
(add-hook 'completion-at-point-functions
|
(add-hook 'completion-at-point-functions
|
||||||
#'elisp-completion-at-point nil t)
|
#'elisp-completion-at-point nil t)
|
||||||
+ (setq-local trusted-content :all)
|
+ (setq-local trusted-content :all)
|
||||||
(run-hooks 'eval-expression-minibuffer-setup-hook))
|
(run-hooks 'eval-expression-minibuffer-setup-hook))
|
||||||
(read-from-minibuffer prompt initial-contents
|
(read-from-minibuffer prompt initial-contents
|
||||||
read-expression-map t
|
read-expression-map t
|
||||||
|
--- emacs-27.2/lisp/startup.el
|
||||||
|
+++ emacs-27.2/lisp/startup.el 2025-03-03 09:18:41.372169725 +0000
|
||||||
|
@@ -2316,9 +2316,17 @@ A fancy display is used on graphic displ
|
||||||
|
|
||||||
|
(defun startup--get-buffer-create-scratch ()
|
||||||
|
(or (get-buffer "*scratch*")
|
||||||
|
- (with-current-buffer (get-buffer-create "*scratch*")
|
||||||
|
- (set-buffer-major-mode (current-buffer))
|
||||||
|
- (current-buffer))))
|
||||||
|
+ (let ((scratch (get-buffer-create "*scratch*")))
|
||||||
|
+ ;; Don't touch the buffer contents or mode unless we know that
|
||||||
|
+ ;; we just created it.
|
||||||
|
+ (with-current-buffer scratch
|
||||||
|
+ (when initial-scratch-message
|
||||||
|
+ (insert (substitute-command-keys initial-scratch-message))
|
||||||
|
+ (set-buffer-modified-p nil))
|
||||||
|
+ (funcall initial-major-mode)
|
||||||
|
+ (when (eq initial-major-mode 'lisp-interaction-mode)
|
||||||
|
+ (setq-local trusted-content :all)))
|
||||||
|
+ scratch)))
|
||||||
|
|
||||||
|
(defun command-line-1 (args-left)
|
||||||
|
"A subroutine of `command-line'."
|
||||||
|
File diff suppressed because it is too large
Load Diff
28
emacs-fix-flymake-tests-with-gcc-14.patch
Normal file
28
emacs-fix-flymake-tests-with-gcc-14.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
From a769f171e7ebb8e30f198f4328d46f47fe7958fb Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Ulrich=20M=C3=BCller?= <ulm@gentoo.org>
|
||||||
|
Date: Mon, 24 Jun 2024 15:20:26 +0200
|
||||||
|
Subject: [PATCH] ; Fix flymake tests with GCC 14.
|
||||||
|
|
||||||
|
* test/lisp/progmodes/flymake-tests.el (included-c-header-files):
|
||||||
|
Fix test failure with GCC 14. (Bug#71749)
|
||||||
|
---
|
||||||
|
test/lisp/progmodes/flymake-tests.el | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/test/lisp/progmodes/flymake-tests.el b/test/lisp/progmodes/flymake-tests.el
|
||||||
|
index 21dbb0711d2..93bc9028031 100644
|
||||||
|
--- a/test/lisp/progmodes/flymake-tests.el
|
||||||
|
+++ b/test/lisp/progmodes/flymake-tests.el
|
||||||
|
@@ -174,7 +174,8 @@ included-c-header-files
|
||||||
|
(flymake-tests--with-flymake
|
||||||
|
("some-problems.h")
|
||||||
|
(flymake-goto-next-error)
|
||||||
|
- (should (eq 'flymake-warning (face-at-point)))
|
||||||
|
+ ;; implicit-int was promoted from warning to error in GCC 14
|
||||||
|
+ (should (memq (face-at-point) '(flymake-warning flymake-error)))
|
||||||
|
(flymake-goto-next-error)
|
||||||
|
(should (eq 'flymake-error (face-at-point)))
|
||||||
|
(should-error (flymake-goto-next-error nil nil t)))
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
40
emacs-glibc-2.34.patch
Normal file
40
emacs-glibc-2.34.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From f97e07ea807cc6d38774a3888a15091b20645ac6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||||
|
Date: Tue, 9 Mar 2021 11:22:59 -0800
|
||||||
|
Subject: [PATCH] Port alternate signal stack to upcoming glibc 2.34
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
* src/sysdep.c (sigsegv_stack): Increase size to 64 KiB and align
|
||||||
|
it to max_align_t. This copies from Gnulib’s c-stack.c, and works
|
||||||
|
around a portability bug in draft glibc 2.34, which no longer
|
||||||
|
defines SIGSTKSZ when _GNU_SOURCE is defined.
|
||||||
|
---
|
||||||
|
src/sysdep.c | 10 +++++++++-
|
||||||
|
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/sysdep.c b/src/sysdep.c
|
||||||
|
index 941b4e2fa2..24d8832b2f 100644
|
||||||
|
--- a/src/sysdep.c
|
||||||
|
+++ b/src/sysdep.c
|
||||||
|
@@ -1785,7 +1785,15 @@ handle_arith_signal (int sig)
|
||||||
|
|
||||||
|
/* Alternate stack used by SIGSEGV handler below. */
|
||||||
|
|
||||||
|
-static unsigned char sigsegv_stack[SIGSTKSZ];
|
||||||
|
+/* Storage for the alternate signal stack.
|
||||||
|
+ 64 KiB is not too large for Emacs, and is large enough
|
||||||
|
+ for all known platforms. Smaller sizes may run into trouble.
|
||||||
|
+ For example, libsigsegv 2.6 through 2.8 have a bug where some
|
||||||
|
+ architectures use more than the Linux default of an 8 KiB alternate
|
||||||
|
+ stack when deciding if a fault was caused by stack overflow. */
|
||||||
|
+static max_align_t sigsegv_stack[(64 * 1024
|
||||||
|
+ + sizeof (max_align_t) - 1)
|
||||||
|
+ / sizeof (max_align_t)];
|
||||||
|
|
||||||
|
|
||||||
|
/* Return true if SIGINFO indicates a stack overflow. */
|
||||||
|
--
|
||||||
|
2.29.2
|
||||||
|
|
57
emacs-latex-preview.patch
Normal file
57
emacs-latex-preview.patch
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
From 6f9ea396f49cbe38c2173e0a72ba6af3e03b271c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Ihor Radchenko <yantar92@posteo.net>
|
||||||
|
Date: Tue, 20 Feb 2024 12:47:24 +0300
|
||||||
|
Subject: org-latex-preview: Add protection when `untrusted-content' is non-nil
|
||||||
|
|
||||||
|
* lisp/org/org.el (org--latex-preview-when-risky): New variable
|
||||||
|
controlling how to handle LaTeX previews in Org files from untrusted
|
||||||
|
origin.
|
||||||
|
(org-latex-preview): Consult `org--latex-preview-when-risky' before
|
||||||
|
generating previews.
|
||||||
|
|
||||||
|
This patch adds a layer of protection when LaTeX preview is requested
|
||||||
|
for an email attachment, where `untrusted-content' is set to non-nil.
|
||||||
|
---
|
||||||
|
lisp/org/org.el | 19 +++++++++++++++++++
|
||||||
|
1 file changed, 19 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/lisp/org/org.el b/lisp/org/org.el
|
||||||
|
index c75afbf..0f5d17d 100644
|
||||||
|
--- a/lisp/org/org.el
|
||||||
|
+++ b/lisp/org/org.el
|
||||||
|
@@ -1140,6 +1140,24 @@ the following lines anywhere in the buffer:
|
||||||
|
:package-version '(Org . "8.0")
|
||||||
|
:type 'boolean)
|
||||||
|
|
||||||
|
+(defvar untrusted-content) ; defined in files.el
|
||||||
|
+(defvar org--latex-preview-when-risky nil
|
||||||
|
+ "If non-nil, enable LaTeX preview in Org buffers from unsafe source.
|
||||||
|
+
|
||||||
|
+Some specially designed LaTeX code may generate huge pdf or log files
|
||||||
|
+that may exhaust disk space.
|
||||||
|
+
|
||||||
|
+This variable controls how to handle LaTeX preview when rendering LaTeX
|
||||||
|
+fragments that originate from incoming email messages. It has no effect
|
||||||
|
+when Org mode is unable to determine the origin of the Org buffer.
|
||||||
|
+
|
||||||
|
+An Org buffer is considered to be from unsafe source when the
|
||||||
|
+variable `untrusted-content' has a non-nil value in the buffer.
|
||||||
|
+
|
||||||
|
+If this variable is non-nil, LaTeX previews are rendered unconditionally.
|
||||||
|
+
|
||||||
|
+This variable may be renamed or changed in the future.")
|
||||||
|
+
|
||||||
|
(defcustom org-insert-mode-line-in-empty-file nil
|
||||||
|
"Non-nil means insert the first line setting Org mode in empty files.
|
||||||
|
When the function `org-mode' is called interactively in an empty file, this
|
||||||
|
@@ -15695,6 +15713,7 @@ fragments in the buffer."
|
||||||
|
(interactive "P")
|
||||||
|
(cond
|
||||||
|
((not (display-graphic-p)) nil)
|
||||||
|
+ ((and untrusted-content (not org--latex-preview-when-risky)) nil)
|
||||||
|
;; Clear whole buffer.
|
||||||
|
((equal arg '(64))
|
||||||
|
(org-clear-latex-preview (point-min) (point-max))
|
||||||
|
--
|
||||||
|
cgit v1.1
|
||||||
|
|
@ -29,6 +29,29 @@ index 55cb938..d963964 100644
|
|||||||
(if Man-downcase-section-letters-flag
|
(if Man-downcase-section-letters-flag
|
||||||
(setq section (downcase section)))
|
(setq section (downcase section)))
|
||||||
(while slist
|
(while slist
|
||||||
|
diff --git a/test/lisp/man-tests.el b/test/lisp/man-tests.el
|
||||||
|
index 140482e..11f5f80 100644
|
||||||
|
--- a/test/lisp/man-tests.el
|
||||||
|
+++ b/test/lisp/man-tests.el
|
||||||
|
@@ -161,6 +161,18 @@ DESCRIPTION
|
||||||
|
(let ((button (button-at (match-beginning 0))))
|
||||||
|
(should (and button (eq 'Man-xref-header-file (button-type button))))))))))
|
||||||
|
|
||||||
|
+(ert-deftest man-tests-Man-translate-references ()
|
||||||
|
+ (should (equal (Man-translate-references "basename")
|
||||||
|
+ "basename"))
|
||||||
|
+ (should (equal (Man-translate-references "basename(3)")
|
||||||
|
+ "3 basename"))
|
||||||
|
+ (should (equal (Man-translate-references "basename(3v)")
|
||||||
|
+ "3v basename"))
|
||||||
|
+ (should (equal (Man-translate-references ";id")
|
||||||
|
+ "\\;id"))
|
||||||
|
+ (should (equal (Man-translate-references "-k basename")
|
||||||
|
+ "-k basename")))
|
||||||
|
+
|
||||||
|
(provide 'man-tests)
|
||||||
|
|
||||||
|
;;; man-tests.el ends here
|
||||||
--
|
--
|
||||||
cgit v1.1
|
cgit v1.1
|
||||||
|
|
||||||
|
@ -1,31 +0,0 @@
|
|||||||
From b73cde5e2815c531df7f5fd13e214a7d92f78239 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Mike Kupfer <mkupfer@alum.berkeley.edu>
|
|
||||||
Date: Wed, 4 Jul 2018 15:43:04 -0700
|
|
||||||
Subject: [PATCH] Fix MH-E mail composition with GNU Mailutils (SF#485)
|
|
||||||
|
|
||||||
* lisp/mh-e/mh-comp.el (mh-bare-components): Recursively delete
|
|
||||||
the temporary folder.
|
|
||||||
---
|
|
||||||
lisp/mh-e/mh-comp.el | 6 ++++--
|
|
||||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/lisp/mh-e/mh-comp.el b/lisp/mh-e/mh-comp.el
|
|
||||||
index a9f809cfa1..aa22df8b18 100644
|
|
||||||
--- a/lisp/mh-e/mh-comp.el
|
|
||||||
+++ b/lisp/mh-e/mh-comp.el
|
|
||||||
@@ -925,8 +925,10 @@ mh-bare-components
|
|
||||||
(list "-form" mh-comp-formfile)))
|
|
||||||
(setq new (make-temp-file "comp."))
|
|
||||||
(rename-file (concat temp-folder "/" "1") new t)
|
|
||||||
- (delete-file (concat temp-folder "/" ".mh_sequences"))
|
|
||||||
- (delete-directory temp-folder)
|
|
||||||
+ ;; The temp folder could contain various metadata files. Rather
|
|
||||||
+ ;; than trying to enumerate all the known files, just do a
|
|
||||||
+ ;; recursive delete on the directory.
|
|
||||||
+ (delete-directory temp-folder t)
|
|
||||||
new))
|
|
||||||
|
|
||||||
(defun mh-read-draft (use initial-contents delete-contents-file)
|
|
||||||
--
|
|
||||||
2.36.1
|
|
||||||
|
|
28
emacs-nsm-should-check.patch
Normal file
28
emacs-nsm-should-check.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
From 6dc4fc7d621008086388dae48f6794f7d69edff9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Robert Pluim <rpluim@gmail.com>
|
||||||
|
Date: Tue, 12 Jan 2021 18:36:01 +0100
|
||||||
|
Subject: Fix nsm-should-check for "google.com" failure
|
||||||
|
|
||||||
|
* lisp/net/nsm.el (nsm-should-check): Extract the mask from
|
||||||
|
'network-interface-list' rather than the broadcast
|
||||||
|
address (Bug#45798).
|
||||||
|
---
|
||||||
|
lisp/net/nsm.el | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/lisp/net/nsm.el b/lisp/net/nsm.el
|
||||||
|
index 3f3e7133713..0ce65a35ead 100644
|
||||||
|
--- a/lisp/net/nsm.el
|
||||||
|
+++ b/lisp/net/nsm.el
|
||||||
|
@@ -239,7 +239,7 @@ otherwise."
|
||||||
|
(mapc
|
||||||
|
(lambda (info)
|
||||||
|
(let ((local-ip (nth 1 info))
|
||||||
|
- (mask (nth 2 info)))
|
||||||
|
+ (mask (nth 3 info)))
|
||||||
|
(when
|
||||||
|
(nsm-network-same-subnet (substring local-ip 0 -1)
|
||||||
|
(substring mask 0 -1)
|
||||||
|
--
|
||||||
|
cgit v1.2.3
|
||||||
|
|
@ -3,44 +3,34 @@ From: Ihor Radchenko <yantar92@posteo.net>
|
|||||||
Date: Tue, 18 Jun 2024 13:06:44 +0200
|
Date: Tue, 18 Jun 2024 13:06:44 +0200
|
||||||
Subject: org-link-expand-abbrev: Do not evaluate arbitrary unsafe Elisp code
|
Subject: org-link-expand-abbrev: Do not evaluate arbitrary unsafe Elisp code
|
||||||
|
|
||||||
* lisp/org/org.el (org-link-expand-abbrev): Refuse expanding %(...) link
|
* lisp/org/ol.el (org-link-expand-abbrev): Refuse expanding %(...) link
|
||||||
abbrevs that specify unsafe function. Instead, display a warning, and
|
abbrevs that specify unsafe function. Instead, display a warning, and
|
||||||
do not expand the abbrev. Clear all the text properties from the
|
do not expand the abbrev. Clear all the text properties from the
|
||||||
returned link, to avoid any potential vulnerabilities caused by
|
returned link, to avoid any potential vulnerabilities caused by
|
||||||
properties that may contain arbitrary Elisp.
|
properties that may contain arbitrary Elisp.
|
||||||
---
|
---
|
||||||
lisp/org/org.el | 40 +++++++++++++++++++++++++++++-----------
|
lisp/org/ol.el | 40 +++++++++++++++++++++++++++++-----------
|
||||||
1 file changed, 29 insertions(+), 11 deletions(-)
|
1 file changed, 29 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
diff --git a/lisp/org/org.el b/lisp/org/org.el
|
diff --git a/lisp/org/ol.el b/lisp/org/ol.el
|
||||||
index 7a7f4f5..8a556c7 100644
|
index 7a7f4f5..8a556c7 100644
|
||||||
--- a/lisp/org/org.el
|
--- a/lisp/org/ol.el
|
||||||
+++ b/lisp/org/org.el
|
+++ b/lisp/org/ol.el
|
||||||
@@ -1152,26 +1152,44 @@ Abbreviations are defined in `org-link-abbrev-alist'."
|
@@ -1152,17 +1152,35 @@ Abbreviations are defined in `org-link-abbrev-alist'."
|
||||||
|
(if (not as)
|
||||||
(defun org-link-expand-abbrev (link)
|
link
|
||||||
"Apply replacements as defined in `org-link-abbrev-alist'."
|
(setq rpl (cdr as))
|
||||||
- (if (string-match "^\\([^:]*\\)\\(::?\\(.*\\)\\)?$" link)
|
- (cond
|
||||||
+ (if (not (string-match "^\\([^:]*\\)\\(::?\\(.*\\)\\)?$" link)) link
|
- ((symbolp rpl) (funcall rpl tag))
|
||||||
(let* ((key (match-string 1 link))
|
- ((string-match "%(\\([^)]+\\))" rpl)
|
||||||
(as (or (assoc key org-link-abbrev-alist-local)
|
- (replace-match
|
||||||
(assoc key org-link-abbrev-alist)))
|
- (save-match-data
|
||||||
(tag (and (match-end 2) (match-string 3 link)))
|
- (funcall (intern-soft (match-string 1 rpl)) tag))
|
||||||
rpl)
|
- t t rpl))
|
||||||
(if (not as)
|
- ((string-match "%s" rpl) (replace-match (or tag "") t t rpl))
|
||||||
link
|
- ((string-match "%h" rpl)
|
||||||
(setq rpl (cdr as))
|
- (replace-match (url-hexify-string (or tag "")) t t rpl))
|
||||||
- (cond
|
- (t (concat rpl tag)))))))
|
||||||
- ((symbolp rpl) (funcall rpl tag))
|
|
||||||
- ((string-match "%(\\([^)]+\\))" rpl)
|
|
||||||
- (replace-match
|
|
||||||
- (save-match-data
|
|
||||||
- (funcall (intern-soft (match-string 1 rpl)) tag)) t t rpl))
|
|
||||||
- ((string-match "%s" rpl) (replace-match (or tag "") t t rpl))
|
|
||||||
- ((string-match "%h" rpl)
|
|
||||||
- (replace-match (url-hexify-string (or tag "")) t t rpl))
|
|
||||||
- (t (concat rpl tag)))))
|
|
||||||
- link))
|
|
||||||
+ ;; Drop any potentially dangerous text properties like
|
+ ;; Drop any potentially dangerous text properties like
|
||||||
+ ;; `modification-hooks' that may be used as an attack vector.
|
+ ;; `modification-hooks' that may be used as an attack vector.
|
||||||
+ (substring-no-properties
|
+ (substring-no-properties
|
||||||
@ -71,8 +61,8 @@ index 7a7f4f5..8a556c7 100644
|
|||||||
+ (replace-match (url-hexify-string (or tag "")) t t rpl))
|
+ (replace-match (url-hexify-string (or tag "")) t t rpl))
|
||||||
+ (t (concat rpl tag))))))))
|
+ (t (concat rpl tag))))))))
|
||||||
|
|
||||||
;;; Storing and inserting links
|
(defun org-link-open (link &optional arg)
|
||||||
|
"Open a link object LINK.
|
||||||
--
|
--
|
||||||
cgit v1.1
|
cgit v1.1
|
||||||
|
|
||||||
|
71
emacs-pong-and-tetris-are-excluded.patch
Normal file
71
emacs-pong-and-tetris-are-excluded.patch
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
From 6f29ac0393bb0bb70c8122d9f1bda0ae5d8cee24 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Peter Oliver <git@mavit.org.uk>
|
||||||
|
Date: Thu, 26 Sep 2024 13:20:06 +0100
|
||||||
|
Subject: [PATCH] Pong and Tetris are excluded.
|
||||||
|
|
||||||
|
---
|
||||||
|
doc/emacs/ack.texi | 2 +-
|
||||||
|
doc/emacs/misc.texi | 7 +------
|
||||||
|
lisp/menu-bar.el | 6 ------
|
||||||
|
test/src/doc-tests.el | 4 ++--
|
||||||
|
4 files changed, 4 insertions(+), 15 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/doc/emacs/ack.texi b/doc/emacs/ack.texi
|
||||||
|
index 5ec5cd53fa6..26f174831ca 100644
|
||||||
|
--- a/doc/emacs/ack.texi
|
||||||
|
+++ b/doc/emacs/ack.texi
|
||||||
|
@@ -228,7 +228,7 @@ Acknowledgments
|
||||||
|
|
||||||
|
@item
|
||||||
|
Glynn Clements provided @file{gamegrid.el} and a couple of games that
|
||||||
|
-use it, Snake and Tetris.
|
||||||
|
+use it, including Snake.
|
||||||
|
|
||||||
|
@item
|
||||||
|
Andrew Cohen wrote @file{spam-wash.el}, to decode and clean email before
|
||||||
|
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
|
||||||
|
index 41e37fd094e..38e281bf59c 100644
|
||||||
|
--- a/doc/emacs/misc.texi
|
||||||
|
+++ b/doc/emacs/misc.texi
|
||||||
|
@@ -3248,14 +3248,9 @@ Amusements
|
||||||
|
nato-region} converts the text in the region to NATO phonetic
|
||||||
|
alphabet; @kbd{M-x denato-region} converts it back.
|
||||||
|
|
||||||
|
-@findex pong
|
||||||
|
-@cindex Pong game
|
||||||
|
-@findex tetris
|
||||||
|
-@cindex Tetris
|
||||||
|
@findex snake
|
||||||
|
@cindex Snake
|
||||||
|
- @kbd{M-x pong}, @kbd{M-x snake} and @kbd{M-x tetris} are
|
||||||
|
-implementations of the well-known Pong, Snake and Tetris games.
|
||||||
|
+ @kbd{M-x snake} is an implementation of the well-known Snake game.
|
||||||
|
|
||||||
|
@findex solitaire
|
||||||
|
@cindex solitaire
|
||||||
|
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
|
||||||
|
index bcfa83cf8e4..1b0a0bce6a5 100644
|
||||||
|
--- a/lisp/menu-bar.el
|
||||||
|
+++ b/lisp/menu-bar.el
|
||||||
|
@@ -1658,18 +1658,12 @@ menu-bar-games-menu
|
||||||
|
(bindings--define-key menu [zone]
|
||||||
|
'(menu-item "Zone Out" zone
|
||||||
|
:help "Play tricks with Emacs display when Emacs is idle"))
|
||||||
|
- (bindings--define-key menu [tetris]
|
||||||
|
- '(menu-item "Tetris" tetris
|
||||||
|
- :help "Falling blocks game"))
|
||||||
|
(bindings--define-key menu [solitaire]
|
||||||
|
'(menu-item "Solitaire" solitaire
|
||||||
|
:help "Get rid of all the stones"))
|
||||||
|
(bindings--define-key menu [snake]
|
||||||
|
'(menu-item "Snake" snake
|
||||||
|
:help "Move snake around avoiding collisions"))
|
||||||
|
- (bindings--define-key menu [pong]
|
||||||
|
- '(menu-item "Pong" pong
|
||||||
|
- :help "Bounce the ball to your opponent"))
|
||||||
|
(bindings--define-key menu [mult]
|
||||||
|
'(menu-item "Multiplication Puzzle" mpuz
|
||||||
|
:help "Exercise brain with multiplication"))
|
||||||
|
--
|
||||||
|
2.46.1
|
||||||
|
|
28
emacs-ruby-mode-local-command-injection-vulnerability.patch
Normal file
28
emacs-ruby-mode-local-command-injection-vulnerability.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
From 9a3b08061feea14d6f37685ca1ab8801758bfd1c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Xi Lu <lx@shellcodes.org>
|
||||||
|
Date: Fri, 23 Dec 2022 12:52:48 +0800
|
||||||
|
Subject: [PATCH] Fix ruby-mode.el local command injection vulnerability
|
||||||
|
(bug#60268)
|
||||||
|
|
||||||
|
* lisp/progmodes/ruby-mode.el
|
||||||
|
(ruby-find-library-file): Fix local command injection vulnerability.
|
||||||
|
---
|
||||||
|
lisp/progmodes/ruby-mode.el | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el
|
||||||
|
index 1f3e9b6ae7b..a4aa61905e4 100644
|
||||||
|
--- a/lisp/progmodes/ruby-mode.el
|
||||||
|
+++ b/lisp/progmodes/ruby-mode.el
|
||||||
|
@@ -1820,7 +1820,7 @@ ruby-find-library-file
|
||||||
|
(setq feature-name (read-string "Feature name: " init))))
|
||||||
|
(let ((out
|
||||||
|
(substring
|
||||||
|
- (shell-command-to-string (concat "gem which " feature-name))
|
||||||
|
+ (shell-command-to-string (concat "gem which " (shell-quote-argument feature-name)))
|
||||||
|
0 -1)))
|
||||||
|
(if (string-match-p "\\`ERROR" out)
|
||||||
|
(user-error "%s" out)
|
||||||
|
--
|
||||||
|
2.36.1
|
||||||
|
|
40
emacs-tests-for-tetris.patch
Normal file
40
emacs-tests-for-tetris.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From 81969482e23b1c046354d9d860e548259f118b4e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Glenn Morris <rgm@gnu.org>
|
||||||
|
Date: Mon, 28 Dec 2020 11:03:30 -0800
|
||||||
|
Subject: Fix package tests for tetris no longer existing as a package
|
||||||
|
|
||||||
|
* test/lisp/emacs-lisp/package-tests.el
|
||||||
|
(package-test-list-filter-by-name, package-test-list-clear-filter):
|
||||||
|
Use ansi-color instead of tetris, which no longer has a version:.
|
||||||
|
---
|
||||||
|
test/lisp/emacs-lisp/package-tests.el | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test/lisp/emacs-lisp/package-tests.el b/test/lisp/emacs-lisp/package-tests.el
|
||||||
|
index 23267545f83..92e593328c6 100644
|
||||||
|
--- a/test/lisp/emacs-lisp/package-tests.el
|
||||||
|
+++ b/test/lisp/emacs-lisp/package-tests.el
|
||||||
|
@@ -405,9 +405,9 @@ Must called from within a `tar-mode' buffer."
|
||||||
|
"Ensure package list is filtered correctly by package name."
|
||||||
|
(with-package-test ()
|
||||||
|
(let ((buf (package-list-packages)))
|
||||||
|
- (package-menu-filter-by-name "tetris")
|
||||||
|
+ (package-menu-filter-by-name "ansi-color")
|
||||||
|
(goto-char (point-min))
|
||||||
|
- (should (re-search-forward "^\\s-+tetris" nil t))
|
||||||
|
+ (should (re-search-forward "^\\s-+ansi-color" nil t))
|
||||||
|
(should (= (count-lines (point-min) (point-max)) 1))
|
||||||
|
(kill-buffer buf))))
|
||||||
|
|
||||||
|
@@ -463,7 +463,7 @@ Must called from within a `tar-mode' buffer."
|
||||||
|
(let ((buf (package-list-packages)))
|
||||||
|
(let ((num-packages (count-lines (point-min) (point-max))))
|
||||||
|
(should (> num-packages 1))
|
||||||
|
- (package-menu-filter-by-name "tetris")
|
||||||
|
+ (package-menu-filter-by-name "ansi-color")
|
||||||
|
(should (= (count-lines (point-min) (point-max)) 1))
|
||||||
|
(package-menu-clear-filter)
|
||||||
|
(should (= (count-lines (point-min) (point-max)) num-packages)))
|
||||||
|
--
|
||||||
|
cgit v1.2.3
|
||||||
|
|
33
emacs-untrusted-content.patch
Normal file
33
emacs-untrusted-content.patch
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
From ccc188fcf98ad9166ee551fac9d94b2603c3a51b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Ihor Radchenko <yantar92@posteo.net>
|
||||||
|
Date: Tue, 20 Feb 2024 12:43:51 +0300
|
||||||
|
Subject: * lisp/files.el (untrusted-content): New variable.
|
||||||
|
|
||||||
|
The new variable is to be used when buffer contents comes from untrusted
|
||||||
|
source.
|
||||||
|
---
|
||||||
|
lisp/files.el | 8 ++++++++
|
||||||
|
1 file changed, 8 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/lisp/files.el b/lisp/files.el
|
||||||
|
index c0d26b2343c..5536af014f6 100644
|
||||||
|
--- a/lisp/files.el
|
||||||
|
+++ b/lisp/files.el
|
||||||
|
@@ -695,6 +695,14 @@ Also see the `permanently-enabled-local-variables' variable."
|
||||||
|
Some modes may wish to set this to nil to prevent directory-local
|
||||||
|
settings being applied, but still respect file-local ones.")
|
||||||
|
|
||||||
|
+(defvar-local untrusted-content nil
|
||||||
|
+ "Non-nil means that current buffer originated from an untrusted source.
|
||||||
|
+Email clients and some other modes may set this non-nil to mark the
|
||||||
|
+buffer contents as untrusted.
|
||||||
|
+
|
||||||
|
+This variable might be subject to change without notice.")
|
||||||
|
+(put 'untrusted-content 'permanent-local t)
|
||||||
|
+
|
||||||
|
(defcustom trusted-content nil
|
||||||
|
"List of files and directories whose content we trust.
|
||||||
|
Be extra careful here since trusting means that Emacs might execute the
|
||||||
|
--
|
||||||
|
cgit v1.2.3
|
||||||
|
|
324
emacs.spec
324
emacs.spec
@ -4,37 +4,49 @@
|
|||||||
Summary: GNU Emacs text editor
|
Summary: GNU Emacs text editor
|
||||||
Name: emacs
|
Name: emacs
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
Version: 26.1
|
Version: 27.2
|
||||||
Release: 15%{?dist}
|
Release: 18%{?dist}
|
||||||
License: GPLv3+ and CC0-1.0
|
License: GPLv3+ and CC0-1.0
|
||||||
URL: http://www.gnu.org/software/emacs/
|
URL: http://www.gnu.org/software/emacs/
|
||||||
Group: Applications/Editors
|
|
||||||
Source0: https://ftp.gnu.org/gnu/emacs/emacs-%{version}.tar.xz
|
Source0: https://ftp.gnu.org/gnu/emacs/emacs-%{version}.tar.xz
|
||||||
Source1: emacs.desktop
|
Source1: https://ftp.gnu.org/gnu/emacs/emacs-%{version}.tar.xz.sig
|
||||||
Source3: dotemacs.el
|
# generate the keyring via:
|
||||||
Source4: site-start.el
|
# wget https://ftp.gnu.org/gnu/gnu-keyring.gpg
|
||||||
Source5: default.el
|
# gpg2 --keyring ./gnu-keyring.gpg --armor --export E6C9029C363AD41D787A8EBB91C1262F01EB8D39 > gpgkey-E6C9029C363AD41D787A8EBB91C1262F01EB8D39.gpg
|
||||||
|
Source2: gpgkey-E6C9029C363AD41D787A8EBB91C1262F01EB8D39.gpg
|
||||||
|
Source3: emacs.desktop
|
||||||
|
Source4: dotemacs.el
|
||||||
|
Source5: site-start.el
|
||||||
|
Source6: default.el
|
||||||
# Emacs Terminal Mode, #551949, #617355
|
# Emacs Terminal Mode, #551949, #617355
|
||||||
Source6: emacs-terminal.desktop
|
Source7: emacs-terminal.desktop
|
||||||
Source7: emacs-terminal.sh
|
Source8: emacs-terminal.sh
|
||||||
Source8: emacs.service
|
Source9: emacs.service
|
||||||
Source9: %{name}.appdata.xml
|
Source10: %{name}.appdata.xml
|
||||||
# rhbz#1810729
|
|
||||||
Source10: package-keyring.gpg
|
|
||||||
# rhbz#713600
|
# rhbz#713600
|
||||||
Patch1: emacs-spellchecker.patch
|
Patch1: emacs-spellchecker.patch
|
||||||
Patch2: emacs-system-crypto-policies.patch
|
Patch2: emacs-system-crypto-policies.patch
|
||||||
Patch3: emacs-ctags-local-command-execute-vulnerability.patch
|
Patch3: emacs-glibc-2.34.patch
|
||||||
Patch4: emacs-mh-rmail-nonempty-dir.patch
|
Patch4: emacs-ctags-local-command-execute-vulnerability.patch
|
||||||
Patch5: emacs-etags-local-command-injection-vulnerability.patch
|
Patch5: emacs-64KB-page-size-for-pdump.patch
|
||||||
Patch6: emacs-htmlfontify-command-injection-vulnerability.patch
|
Patch6: emacs-etags-local-command-injection-vulnerability.patch
|
||||||
Patch7: emacs-ob-latex-command-injection-vulnerability.patch
|
Patch7: emacs-htmlfontify-command-injection-vulnerability.patch
|
||||||
Patch8: emacs-consider-org-file-contents-unsafe.patch
|
Patch8: emacs-ruby-mode-local-command-injection-vulnerability.patch
|
||||||
Patch9: emacs-org-link-expand-abbrev-unsafe-elisp.patch
|
Patch9: emacs-ob-latex-command-injection-vulnerability.patch
|
||||||
Patch10: emacs-mark-contents-untrusted.patch
|
Patch10: emacs-consider-org-file-contents-unsafe.patch
|
||||||
Patch11: emacs-man-el-shell-injection-vulnerability.patch
|
Patch11: emacs-mark-contents-untrusted.patch
|
||||||
Patch12: emacs-CVE-2024-53920.patch
|
Patch12: emacs-latex-preview.patch
|
||||||
|
Patch13: emacs-org-link-expand-abbrev-unsafe-elisp.patch
|
||||||
|
Patch14: emacs-man-el-shell-injection-vulnerability.patch
|
||||||
|
Patch15: emacs-CVE-2024-53920.patch
|
||||||
|
# Avoid trademark issues
|
||||||
|
Patch16: emacs-pong-and-tetris-are-excluded.patch
|
||||||
|
Patch17: emacs-fix-flymake-tests-with-gcc-14.patch
|
||||||
|
Patch18: emacs-nsm-should-check.patch
|
||||||
|
Patch19: emacs-tests-for-tetris.patch
|
||||||
|
Patch20: emacs-untrusted-content.patch
|
||||||
|
|
||||||
|
BuildRequires: gcc
|
||||||
BuildRequires: atk-devel
|
BuildRequires: atk-devel
|
||||||
BuildRequires: cairo-devel
|
BuildRequires: cairo-devel
|
||||||
BuildRequires: freetype-devel
|
BuildRequires: freetype-devel
|
||||||
@ -60,26 +72,33 @@ BuildRequires: librsvg2-devel
|
|||||||
BuildRequires: m17n-lib-devel
|
BuildRequires: m17n-lib-devel
|
||||||
BuildRequires: libotf-devel
|
BuildRequires: libotf-devel
|
||||||
BuildRequires: libselinux-devel
|
BuildRequires: libselinux-devel
|
||||||
BuildRequires: GConf2-devel
|
|
||||||
BuildRequires: alsa-lib-devel
|
BuildRequires: alsa-lib-devel
|
||||||
BuildRequires: gpm-devel
|
BuildRequires: gpm-devel
|
||||||
BuildRequires: liblockfile-devel
|
BuildRequires: liblockfile-devel
|
||||||
BuildRequires: libxml2-devel
|
BuildRequires: libxml2-devel
|
||||||
|
BuildRequires: autoconf
|
||||||
BuildRequires: bzip2
|
BuildRequires: bzip2
|
||||||
BuildRequires: cairo
|
BuildRequires: cairo
|
||||||
BuildRequires: texinfo
|
BuildRequires: texinfo
|
||||||
BuildRequires: gzip
|
BuildRequires: gzip
|
||||||
BuildRequires: desktop-file-utils
|
BuildRequires: desktop-file-utils
|
||||||
BuildRequires: libacl-devel
|
BuildRequires: libacl-devel
|
||||||
|
BuildRequires: harfbuzz-devel
|
||||||
|
BuildRequires: jansson-devel
|
||||||
|
BuildRequires: systemd-devel
|
||||||
|
|
||||||
BuildRequires: gtk3-devel
|
BuildRequires: gtk3-devel
|
||||||
|
|
||||||
|
BuildRequires: gnupg2
|
||||||
|
|
||||||
# For lucid
|
# For lucid
|
||||||
BuildRequires: Xaw3d-devel
|
BuildRequires: Xaw3d-devel
|
||||||
|
|
||||||
%ifarch %{ix86}
|
%ifarch %{ix86}
|
||||||
BuildRequires: util-linux
|
BuildRequires: util-linux
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: make
|
||||||
|
|
||||||
|
|
||||||
# Emacs doesn't run without dejavu-sans-mono-fonts, rhbz#732422
|
# Emacs doesn't run without dejavu-sans-mono-fonts, rhbz#732422
|
||||||
Requires: desktop-file-utils
|
Requires: desktop-file-utils
|
||||||
@ -105,7 +124,6 @@ This package provides an emacs binary with support for X windows.
|
|||||||
|
|
||||||
%package lucid
|
%package lucid
|
||||||
Summary: GNU Emacs text editor with LUCID toolkit X support
|
Summary: GNU Emacs text editor with LUCID toolkit X support
|
||||||
Group: Applications/Editors
|
|
||||||
Requires(preun): %{_sbindir}/alternatives
|
Requires(preun): %{_sbindir}/alternatives
|
||||||
Requires(posttrans): %{_sbindir}/alternatives
|
Requires(posttrans): %{_sbindir}/alternatives
|
||||||
Requires: emacs-common = %{epoch}:%{version}-%{release}
|
Requires: emacs-common = %{epoch}:%{version}-%{release}
|
||||||
@ -122,7 +140,6 @@ using LUCID toolkit.
|
|||||||
|
|
||||||
%package nox
|
%package nox
|
||||||
Summary: GNU Emacs text editor without X support
|
Summary: GNU Emacs text editor without X support
|
||||||
Group: Applications/Editors
|
|
||||||
Requires(preun): %{_sbindir}/alternatives
|
Requires(preun): %{_sbindir}/alternatives
|
||||||
Requires(posttrans): %{_sbindir}/alternatives
|
Requires(posttrans): %{_sbindir}/alternatives
|
||||||
Requires: emacs-common = %{epoch}:%{version}-%{release}
|
Requires: emacs-common = %{epoch}:%{version}-%{release}
|
||||||
@ -142,11 +159,8 @@ Summary: Emacs common files
|
|||||||
# The entire source code is GPLv3+ except lib-src/etags.c which is
|
# The entire source code is GPLv3+ except lib-src/etags.c which is
|
||||||
# also BSD. Manual (info) is GFDL.
|
# also BSD. Manual (info) is GFDL.
|
||||||
License: GPLv3+ and GFDL and BSD
|
License: GPLv3+ and GFDL and BSD
|
||||||
Group: Applications/Editors
|
|
||||||
Requires(preun): /sbin/install-info
|
|
||||||
Requires(preun): %{_sbindir}/alternatives
|
Requires(preun): %{_sbindir}/alternatives
|
||||||
Requires(posttrans): %{_sbindir}/alternatives
|
Requires(posttrans): %{_sbindir}/alternatives
|
||||||
Requires(post): /sbin/install-info
|
|
||||||
Requires: %{name}-filesystem = %{epoch}:%{version}-%{release}
|
Requires: %{name}-filesystem = %{epoch}:%{version}-%{release}
|
||||||
Provides: %{name}-el = %{epoch}:%{version}-%{release}
|
Provides: %{name}-el = %{epoch}:%{version}-%{release}
|
||||||
Obsoletes: emacs-el < 1:24.3-29
|
Obsoletes: emacs-el < 1:24.3-29
|
||||||
@ -162,7 +176,6 @@ or emacs-nox.
|
|||||||
|
|
||||||
%package terminal
|
%package terminal
|
||||||
Summary: A desktop menu item for GNU Emacs terminal.
|
Summary: A desktop menu item for GNU Emacs terminal.
|
||||||
Group: Applications/Editors
|
|
||||||
Requires: emacs = %{epoch}:%{version}-%{release}
|
Requires: emacs = %{epoch}:%{version}-%{release}
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
@ -175,44 +188,51 @@ removed when another terminal becomes capable of handling Malayalam.
|
|||||||
|
|
||||||
%package filesystem
|
%package filesystem
|
||||||
Summary: Emacs filesystem layout
|
Summary: Emacs filesystem layout
|
||||||
Group: Applications/Editors
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
%description filesystem
|
%description filesystem
|
||||||
This package provides some directories which are required by other
|
This package provides some directories which are required by other
|
||||||
packages that add functionality to Emacs.
|
packages that add functionality to Emacs.
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: Development header files for Emacs
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
Development header files for Emacs.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
|
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
|
||||||
%setup -q
|
%setup -q
|
||||||
|
|
||||||
%patch1 -p1 -b .spellchecker
|
%patch -P 1 -p1 -b .spellchecker
|
||||||
%patch2 -p1 -b .system-crypto-policies
|
%patch -P 2 -p1 -b .system-crypto-policies
|
||||||
%patch3 -p1 -b .ctags-local-command-execute-vulnerability
|
%patch -P 3 -p1 -b .glibc2.34
|
||||||
%patch4 -p1 -b .mh-rmail-nonempty-dir.patch
|
%patch -P 4 -p1 -b .ctags-local-command-execute-vulnerability
|
||||||
%patch5 -p1 -b .etags-local-command-injection-vulnerability
|
%patch -P 5 -p1 -b .64KB-page-size-for-pdump
|
||||||
%patch6 -p1 -b .htmlfontify-command-injection-vulnerability
|
%patch -P 6 -p1 -b .etags-local-command-injection-vulnerability
|
||||||
%patch7 -p1 -b .ob-latex-command-injection-vulnerability
|
%patch -P 7 -p1 -b .htmlfontify-command-injection-vulnerability
|
||||||
%patch8 -p1 -b .consider-org-file-contents-unsafe
|
%patch -P 8 -p1 -b .ruby-mode-local-command-injection-vulnerability
|
||||||
%patch9 -p1 -b .org-link-expand-abbrev-unsafe-elisp
|
%patch -P 9 -p1 -b .ob-latex-command-injection-vulnerability
|
||||||
%patch10 -p1 -b .mark-contents-untrusted
|
%patch -P 10 -p1 -b .consider-org-file-contents-unsafe
|
||||||
%patch11 -p1 -b .emacs-man-el-shell-injection-vulnerability
|
%patch -P 11 -p1 -b .mark-contents-untrusted
|
||||||
%patch12 -p1 -b .CVE-2024-53920
|
%patch -P 12 -p1 -b .latex-preview
|
||||||
|
%patch -P 13 -p1 -b .org-link-expand-abbrev-unsafe-elisp
|
||||||
|
%patch -P 14 -p1 -b .man-el-shell-injection-vulnerability
|
||||||
|
%patch -P 15 -p1 -b .CVE-2024-53920
|
||||||
|
%patch -P 16 -p1 -b .pong-and-tetris-are-excluded
|
||||||
|
%patch -P 17 -p1 -b .fix-flymake-tests-with-gcc-14
|
||||||
|
%patch -P 18 -p1 -b .nsm-should-check
|
||||||
|
%patch -P 19 -p1 -b .tests-for-tetris
|
||||||
|
%patch -P 20 -p1 -b .untrusted-content
|
||||||
|
|
||||||
|
# Avoid trademark issues
|
||||||
|
rm lisp/play/pong.el lisp/play/pong.elc \
|
||||||
|
lisp/play/tetris.el lisp/play/tetris.elc
|
||||||
|
|
||||||
autoconf
|
autoconf
|
||||||
|
|
||||||
# We prefer our emacs.desktop file
|
# We prefer our emacs.desktop file
|
||||||
cp %SOURCE1 etc/emacs.desktop
|
cp %SOURCE3 etc/emacs.desktop
|
||||||
|
|
||||||
# GPG key for GNU ELPA packages backported from Emacs 26.3 (#1810729)
|
|
||||||
cp %SOURCE10 etc/package-keyring.gpg
|
|
||||||
|
|
||||||
grep -v "tetris.elc" lisp/Makefile.in > lisp/Makefile.in.new \
|
|
||||||
&& mv lisp/Makefile.in.new lisp/Makefile.in
|
|
||||||
grep -v "pong.elc" lisp/Makefile.in > lisp/Makefile.in.new \
|
|
||||||
&& mv lisp/Makefile.in.new lisp/Makefile.in
|
|
||||||
|
|
||||||
# Avoid trademark issues
|
|
||||||
rm -f lisp/play/tetris.el lisp/play/tetris.elc
|
|
||||||
rm -f lisp/play/pong.el lisp/play/pong.el
|
|
||||||
|
|
||||||
# Sorted list of info files
|
# Sorted list of info files
|
||||||
%define info_files ada-mode auth autotype bovine calc ccmode cl dbus dired-x ebrowse ede ediff edt efaq-w32 efaq eieio eintr elisp emacs-gnutls emacs-mime emacs epa erc ert eshell eudc eww flymake forms gnus htmlfontify idlwave ido info mairix-el message mh-e newsticker nxml-mode octave-mode org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses sieve smtpmail speedbar srecode todo-mode tramp url vhdl-mode vip viper widget wisent woman
|
%define info_files ada-mode auth autotype bovine calc ccmode cl dbus dired-x ebrowse ede ediff edt efaq-w32 efaq eieio eintr elisp emacs-gnutls emacs-mime emacs epa erc ert eshell eudc eww flymake forms gnus htmlfontify idlwave ido info mairix-el message mh-e newsticker nxml-mode octave-mode org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses sieve smtpmail speedbar srecode todo-mode tramp url vhdl-mode vip viper widget wisent woman
|
||||||
@ -243,8 +263,8 @@ ln -s ../../%{name}/%{version}/etc/NEWS doc
|
|||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
export CFLAGS="-DMAIL_USE_LOCKF $RPM_OPT_FLAGS"
|
export CFLAGS="-DMAIL_USE_LOCKF %{build_cflags}"
|
||||||
export LDFLAGS="$LDFLAGS -Wl,-z,relro,-z,now -fpie"
|
%set_build_flags
|
||||||
|
|
||||||
# Build GTK+ binary
|
# Build GTK+ binary
|
||||||
mkdir build-gtk && cd build-gtk
|
mkdir build-gtk && cd build-gtk
|
||||||
@ -252,9 +272,9 @@ ln -s ../configure .
|
|||||||
|
|
||||||
%configure --with-dbus --with-gif --with-jpeg --with-png --with-rsvg \
|
%configure --with-dbus --with-gif --with-jpeg --with-png --with-rsvg \
|
||||||
--with-tiff --with-xft --with-xpm --with-x-toolkit=gtk3 --with-gpm=no \
|
--with-tiff --with-xft --with-xpm --with-x-toolkit=gtk3 --with-gpm=no \
|
||||||
--with-modules
|
--with-modules --with-harfbuzz --with-cairo --with-json
|
||||||
make bootstrap
|
make bootstrap
|
||||||
%{setarch} make %{?_smp_mflags}
|
%{setarch} %make_build
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
# Build Lucid binary
|
# Build Lucid binary
|
||||||
@ -263,16 +283,16 @@ ln -s ../configure .
|
|||||||
|
|
||||||
%configure --with-dbus --with-gif --with-jpeg --with-png --with-rsvg \
|
%configure --with-dbus --with-gif --with-jpeg --with-png --with-rsvg \
|
||||||
--with-tiff --with-xft --with-xpm --with-x-toolkit=lucid --with-gpm=no \
|
--with-tiff --with-xft --with-xpm --with-x-toolkit=lucid --with-gpm=no \
|
||||||
--with-modules
|
--with-modules --with-harfbuzz --with-cairo --with-json
|
||||||
make bootstrap
|
make bootstrap
|
||||||
%{setarch} make %{?_smp_mflags}
|
%{setarch} %make_build
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
# Build binary without X support
|
# Build binary without X support
|
||||||
mkdir build-nox && cd build-nox
|
mkdir build-nox && cd build-nox
|
||||||
ln -s ../configure .
|
ln -s ../configure .
|
||||||
%configure --with-x=no --with-modules
|
%configure --with-x=no --with-modules --with-json
|
||||||
%{setarch} make %{?_smp_mflags}
|
%{setarch} %make_build
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
# Remove versioned file so that we end up with .1 suffix and only one DOC file
|
# Remove versioned file so that we end up with .1 suffix and only one DOC file
|
||||||
@ -300,29 +320,37 @@ EOF
|
|||||||
|
|
||||||
%install
|
%install
|
||||||
cd build-gtk
|
cd build-gtk
|
||||||
make install INSTALL="%{__install} -p" DESTDIR=%{buildroot}
|
%make_install
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
# Let alternatives manage the symlink
|
# Let alternatives manage the symlink
|
||||||
rm %{buildroot}%{_bindir}/emacs
|
rm %{buildroot}%{_bindir}/emacs
|
||||||
touch %{buildroot}%{_bindir}/emacs
|
touch %{buildroot}%{_bindir}/emacs
|
||||||
|
|
||||||
|
# Remove emacs.pdmp from common
|
||||||
|
rm %{buildroot}%{emacs_libexecdir}/emacs.pdmp
|
||||||
|
|
||||||
# Do not compress the files which implement compression itself (#484830)
|
# Do not compress the files which implement compression itself (#484830)
|
||||||
gunzip %{buildroot}%{_datadir}/emacs/%{version}/lisp/jka-compr.el.gz
|
gunzip %{buildroot}%{_datadir}/emacs/%{version}/lisp/jka-compr.el.gz
|
||||||
gunzip %{buildroot}%{_datadir}/emacs/%{version}/lisp/jka-cmpr-hook.el.gz
|
gunzip %{buildroot}%{_datadir}/emacs/%{version}/lisp/jka-cmpr-hook.el.gz
|
||||||
|
|
||||||
|
# Install emacs.pdmp of the emacs with GTK+
|
||||||
|
install -p -m 0644 build-gtk/src/emacs.pdmp %{buildroot}%{_bindir}/emacs-%{version}.pdmp
|
||||||
|
|
||||||
# Install the emacs with LUCID toolkit
|
# Install the emacs with LUCID toolkit
|
||||||
install -p -m 0755 build-lucid/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-lucid
|
install -p -m 0755 build-lucid/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-lucid
|
||||||
|
install -p -m 0644 build-lucid/src/emacs.pdmp %{buildroot}%{_bindir}/emacs-%{version}-lucid.pdmp
|
||||||
|
|
||||||
# Install the emacs without X
|
# Install the emacs without X
|
||||||
install -p -m 0755 build-nox/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-nox
|
install -p -m 0755 build-nox/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-nox
|
||||||
|
install -p -m 0644 build-nox/src/emacs.pdmp %{buildroot}%{_bindir}/emacs-%{version}-nox.pdmp
|
||||||
|
|
||||||
# Make sure movemail isn't setgid
|
# Make sure movemail isn't setgid
|
||||||
chmod 755 %{buildroot}%{emacs_libexecdir}/movemail
|
chmod 755 %{buildroot}%{emacs_libexecdir}/movemail
|
||||||
|
|
||||||
mkdir -p %{buildroot}%{site_lisp}
|
mkdir -p %{buildroot}%{site_lisp}
|
||||||
install -p -m 0644 %SOURCE4 %{buildroot}%{site_lisp}/site-start.el
|
install -p -m 0644 %SOURCE5 %{buildroot}%{site_lisp}/site-start.el
|
||||||
install -p -m 0644 %SOURCE5 %{buildroot}%{site_lisp}
|
install -p -m 0644 %SOURCE6 %{buildroot}%{site_lisp}
|
||||||
|
|
||||||
# This solves bz#474958, "update-directory-autoloads" now finally
|
# This solves bz#474958, "update-directory-autoloads" now finally
|
||||||
# works the path is different each version, so we'll generate it here
|
# works the path is different each version, so we'll generate it here
|
||||||
@ -340,7 +368,7 @@ mkdir -p %{buildroot}%{site_lisp}/site-start.d
|
|||||||
|
|
||||||
# Default initialization file
|
# Default initialization file
|
||||||
mkdir -p %{buildroot}%{_sysconfdir}/skel
|
mkdir -p %{buildroot}%{_sysconfdir}/skel
|
||||||
install -p -m 0644 %SOURCE3 %{buildroot}%{_sysconfdir}/skel/.emacs
|
install -p -m 0644 %SOURCE4 %{buildroot}%{_sysconfdir}/skel/.emacs
|
||||||
|
|
||||||
# Install pkgconfig file
|
# Install pkgconfig file
|
||||||
mkdir -p %{buildroot}/%{pkgconfig}
|
mkdir -p %{buildroot}/%{pkgconfig}
|
||||||
@ -348,30 +376,32 @@ install -p -m 0644 emacs.pc %{buildroot}/%{pkgconfig}
|
|||||||
|
|
||||||
# Install app data
|
# Install app data
|
||||||
mkdir -p %{buildroot}/%{_datadir}/appdata
|
mkdir -p %{buildroot}/%{_datadir}/appdata
|
||||||
cp -a %SOURCE9 %{buildroot}/%{_datadir}/appdata
|
cp -a %SOURCE10 %{buildroot}/%{_datadir}/appdata
|
||||||
|
# Upstream ships its own appdata file, but it's quite terse.
|
||||||
|
rm %{buildroot}/%{_datadir}/metainfo/emacs.appdata.xml
|
||||||
|
|
||||||
# Install rpm macro definition file
|
# Install rpm macro definition file
|
||||||
mkdir -p %{buildroot}%{_rpmconfigdir}/macros.d
|
mkdir -p %{buildroot}%{_rpmconfigdir}/macros.d
|
||||||
install -p -m 0644 macros.emacs %{buildroot}%{_rpmconfigdir}/macros.d/
|
install -p -m 0644 macros.emacs %{buildroot}%{_rpmconfigdir}/macros.d/
|
||||||
|
|
||||||
# Installing emacs-terminal binary
|
# Installing emacs-terminal binary
|
||||||
install -p -m 755 %SOURCE7 %{buildroot}%{_bindir}/emacs-terminal
|
install -p -m 755 %SOURCE8 %{buildroot}%{_bindir}/emacs-terminal
|
||||||
|
|
||||||
# After everything is installed, remove info dir
|
# After everything is installed, remove info dir
|
||||||
rm -f %{buildroot}%{_infodir}/dir
|
rm -f %{buildroot}%{_infodir}/dir
|
||||||
|
|
||||||
# Installing service file
|
# Installing service file
|
||||||
mkdir -p %{buildroot}%{_userunitdir}
|
mkdir -p %{buildroot}%{_userunitdir}
|
||||||
install -p -m 0644 %SOURCE8 %{buildroot}%{_userunitdir}/emacs.service
|
install -p -m 0644 %SOURCE9 %{buildroot}%{_userunitdir}/emacs.service
|
||||||
# Emacs 26.1 installs the upstream unit file to /usr/lib64 on 64bit archs, we don't want that
|
# Emacs 26.1 installs the upstream unit file to /usr/lib64 on 64bit archs, we don't want that
|
||||||
rm -f %{buildroot}/usr/lib64/systemd/user/emacs.service
|
rm -f %{buildroot}/usr/lib64/systemd/user/emacs.service
|
||||||
|
|
||||||
# Install desktop files
|
# Install desktop files
|
||||||
mkdir -p %{buildroot}%{_datadir}/applications
|
mkdir -p %{buildroot}%{_datadir}/applications
|
||||||
desktop-file-install --dir=%{buildroot}%{_datadir}/applications \
|
desktop-file-install --dir=%{buildroot}%{_datadir}/applications \
|
||||||
%SOURCE1
|
%SOURCE3
|
||||||
desktop-file-install --dir=%{buildroot}%{_datadir}/applications \
|
desktop-file-install --dir=%{buildroot}%{_datadir}/applications \
|
||||||
%SOURCE6
|
%SOURCE7
|
||||||
|
|
||||||
#
|
#
|
||||||
# Create file lists
|
# Create file lists
|
||||||
@ -417,18 +447,8 @@ rm %{buildroot}%{_datadir}/icons/hicolor/scalable/mimetypes/emacs-document23.svg
|
|||||||
%{_sbindir}/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-%{version}-nox 70
|
%{_sbindir}/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-%{version}-nox 70
|
||||||
%{_sbindir}/alternatives --install %{_bindir}/emacs-nox emacs-nox %{_bindir}/emacs-%{version}-nox 60
|
%{_sbindir}/alternatives --install %{_bindir}/emacs-nox emacs-nox %{_bindir}/emacs-%{version}-nox 60
|
||||||
|
|
||||||
%post common
|
|
||||||
for f in %{info_files}; do
|
|
||||||
/sbin/install-info %{_infodir}/$f.info.gz %{_infodir}/dir 2> /dev/null || :
|
|
||||||
done
|
|
||||||
|
|
||||||
%preun common
|
%preun common
|
||||||
%{_sbindir}/alternatives --remove emacs.etags %{_bindir}/etags.emacs
|
%{_sbindir}/alternatives --remove emacs.etags %{_bindir}/etags.emacs
|
||||||
if [ "$1" = 0 ]; then
|
|
||||||
for f in %{info_files}; do
|
|
||||||
/sbin/install-info --delete %{_infodir}/$f.info.gz %{_infodir}/dir 2> /dev/null || :
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
%posttrans common
|
%posttrans common
|
||||||
%{_sbindir}/alternatives --install %{_bindir}/etags emacs.etags %{_bindir}/etags.emacs 80 \
|
%{_sbindir}/alternatives --install %{_bindir}/etags emacs.etags %{_bindir}/etags.emacs 80 \
|
||||||
@ -436,20 +456,24 @@ fi
|
|||||||
|
|
||||||
%files
|
%files
|
||||||
%{_bindir}/emacs-%{version}
|
%{_bindir}/emacs-%{version}
|
||||||
|
%{_bindir}/emacs-%{version}.pdmp
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
||||||
%{_datadir}/applications/emacs.desktop
|
%{_datadir}/applications/emacs.desktop
|
||||||
%{_datadir}/appdata/%{name}.appdata.xml
|
%{_datadir}/appdata/%{name}.appdata.xml
|
||||||
%{_datadir}/icons/hicolor/*/apps/emacs.png
|
%{_datadir}/icons/hicolor/*/apps/emacs.png
|
||||||
%{_datadir}/icons/hicolor/scalable/apps/emacs.svg
|
%{_datadir}/icons/hicolor/scalable/apps/emacs.svg
|
||||||
|
%{_datadir}/icons/hicolor/scalable/apps/emacs.ico
|
||||||
%{_datadir}/icons/hicolor/scalable/mimetypes/emacs-document.svg
|
%{_datadir}/icons/hicolor/scalable/mimetypes/emacs-document.svg
|
||||||
|
|
||||||
%files lucid
|
%files lucid
|
||||||
%{_bindir}/emacs-%{version}-lucid
|
%{_bindir}/emacs-%{version}-lucid
|
||||||
|
%{_bindir}/emacs-%{version}-lucid.pdmp
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs-lucid
|
%attr(0755,-,-) %ghost %{_bindir}/emacs-lucid
|
||||||
|
|
||||||
%files nox
|
%files nox
|
||||||
%{_bindir}/emacs-%{version}-nox
|
%{_bindir}/emacs-%{version}-nox
|
||||||
|
%{_bindir}/emacs-%{version}-nox.pdmp
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs-nox
|
%attr(0755,-,-) %ghost %{_bindir}/emacs-nox
|
||||||
|
|
||||||
@ -482,53 +506,127 @@ fi
|
|||||||
%dir %{_datadir}/emacs/site-lisp
|
%dir %{_datadir}/emacs/site-lisp
|
||||||
%dir %{_datadir}/emacs/site-lisp/site-start.d
|
%dir %{_datadir}/emacs/site-lisp/site-start.d
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%{_includedir}/emacs-module.h
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Wed May 21 2025 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-15
|
* Mon Jun 23 2025 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-18
|
||||||
- Restore definition of variable "enable-dir-local-variables" (RHEL-92830)
|
- Fix nsm-should-check for "google.com" failure (RHEL-94297)
|
||||||
|
- Fix package tests for tetris no longer existing as a package (RHEL-94297)
|
||||||
|
- Introduce untrusted-content variable (RHEL-94297)
|
||||||
|
|
||||||
* Mon May 05 2025 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-14
|
* Wed Jun 18 2025 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-17
|
||||||
- Fix arbitrary code execution via Lisp macro expansion (RHEL-69394)
|
- Pong and Tetris are excluded (RHEL-94297)
|
||||||
|
- Fix flymake tests with GCC 14 (RHEL-94297)
|
||||||
|
|
||||||
* Wed Feb 19 2025 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-13
|
* Fri May 09 2025 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-16
|
||||||
- Fix man.el shell injection vulnerability (RHEL-79016)
|
- Restore definition of variable "enable-dir-local-variables" (RHEL-92550)
|
||||||
|
|
||||||
* Fri Aug 23 2024 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-12
|
* Fri May 09 2025 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-15
|
||||||
|
- Fix arbitrary code execution via Lisp macro expansion (RHEL-90181)
|
||||||
|
|
||||||
|
* Mon Apr 28 2025 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-14
|
||||||
|
- Fix arbitrary code execution via Lisp macro expansion (RHEL-69399)
|
||||||
|
|
||||||
|
* Mon Feb 24 2025 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-13
|
||||||
|
- Bump release
|
||||||
|
|
||||||
|
* Mon Feb 24 2025 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-12
|
||||||
|
- Eliminate use of obsolete patch syntax (RHEL-80443)
|
||||||
|
|
||||||
|
* Wed Feb 19 2025 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-11
|
||||||
|
- Fix man.el shell injection vulnerability (RHEL-79025)
|
||||||
|
|
||||||
|
* Fri Mar 15 2024 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-10
|
||||||
|
- Disable xwidgets (RHEL-14551)
|
||||||
- org-file-contents: Consider all remote files unsafe (CVE-2024-30205)
|
- org-file-contents: Consider all remote files unsafe (CVE-2024-30205)
|
||||||
- org-link-expand-abbrev: Do not evaluate arbitrary unsafe Elisp code (CVE-2024-39331)
|
|
||||||
- Make Gnus treats inline MIME contents as untrusted (CVE-2024-30203)
|
- Make Gnus treats inline MIME contents as untrusted (CVE-2024-30203)
|
||||||
- Disable xwidgets (RHEL-14549)
|
- Add protection for LaTeX preview (CVE-2024-30204)
|
||||||
|
- org-link-expand-abbrev: Do not evaluate arbitrary unsafe Elisp code (CVE-2024-39331)
|
||||||
|
|
||||||
* Wed Apr 12 2023 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-11
|
* Sun Apr 2 2023 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-9
|
||||||
- Bump version
|
- Fix etags local command injection vulnerability (#2175190)
|
||||||
|
- Fix htmlfontify.el command injection vulnerability (#2175179)
|
||||||
|
- Fix ruby-mode.el local command injection vulnerability (#2175142)
|
||||||
|
- Fix ob-latex.el command injection vulnerability (#2180590)
|
||||||
|
|
||||||
* Fri Apr 7 2023 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-10
|
* Tue Jan 10 2023 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-8
|
||||||
- Fix etags local command injection vulnerability (#2175189)
|
- Use a 64KB page size for pdump (#1979804)
|
||||||
- Fix htmlfontify.el command injection vulnerability (#2175178)
|
|
||||||
- Fix ob-latex.el command injection vulnerability (#2180587)
|
|
||||||
|
|
||||||
* Tue Jan 10 2023 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-9
|
* Wed Jan 04 2023 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-7
|
||||||
- Fix MH-E mail composition with GNU Mailutils (#1991156)
|
- Fix ctags local command execute vulnerability (#2149387)
|
||||||
|
|
||||||
* Thu Jan 05 2023 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-8
|
* Wed Sep 22 2021 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-6
|
||||||
- Fix ctags local command execute vulnerability (#2149386)
|
- Adapt hardening options from _hardened_build macro (#2006856)
|
||||||
|
|
||||||
* Thu Aug 5 2021 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-7
|
* Wed Aug 18 2021 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-5
|
||||||
- provide gating.yaml for CI
|
- Provide gating.yaml for CI (#1975151)
|
||||||
|
|
||||||
* Mon Jul 19 2021 Jacek Migacz <jmigacz@redhat.com> - 1:26.1-6
|
* Tue Aug 10 2021 Jacek Migacz <jmigacz@redhat.com> - 1:27.2-4
|
||||||
- a new GPG key for GNU ELPA packages (#1810729)
|
- Fix FTBFS with glibc 2.34 (#1975151)
|
||||||
|
|
||||||
* Mon Sep 10 2018 Jan Synáček <jsynacek@redhat.com> - 1:26.1-5
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1:27.2-3
|
||||||
- review annocheck distro flag failures (#1624109)
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||||
|
Related: rhbz#1991688
|
||||||
|
|
||||||
* Tue Aug 14 2018 Jan Synáček <jsynacek@redhat.com> - 1:26.1-4
|
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 1:27.2-2
|
||||||
- remove ImageMagick dependency (#1564992)
|
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
||||||
|
|
||||||
* Mon Aug 13 2018 Jan Synáček <jsynacek@redhat.com> - 1:26.1-3
|
* Sat Mar 27 2021 Bhavin Gandhi <bhavin7392@gmail.com> - 1:27.2-1
|
||||||
|
- emacs-27.2 is available
|
||||||
|
|
||||||
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:27.1-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Aug 18 2020 Jan Synáček <jsynacek@redhat.com> - 1:27.1-2
|
||||||
|
- use make macros (original patch provided by Tom Stellard)
|
||||||
|
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
|
||||||
|
|
||||||
|
* Tue Aug 11 2020 Bhavin Gandhi <bhavin7392@gmail.com> - 1:27.1-1
|
||||||
|
- emacs-27.1 is available (#1867841)
|
||||||
|
- Add systemd-devel to support Type=notify in unit file
|
||||||
|
- Build with Cairo and Jansson support
|
||||||
|
- Remove ImageMagick dependency as it's no longer used
|
||||||
|
|
||||||
|
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:26.3-4
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Apr 16 2020 Dan Čermák <dan.cermak@cgc-instruments.com> - 1:26.3-3
|
||||||
|
- Drop dependency on GConf2
|
||||||
|
|
||||||
|
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:26.3-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||||
|
|
||||||
|
* Sun Sep 08 2019 Maximiliano Sandoval <msandoval@protonmail.com> - 1:26.3-1
|
||||||
|
- emacs-26.3 is available (#1747101)
|
||||||
|
|
||||||
|
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:26.2-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Apr 17 2019 Jan Synáček <jsynacek@redhat.com> - 1:26.2-1
|
||||||
|
- emacs-26.2 is available (#1699434)
|
||||||
|
|
||||||
|
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:26.1-8
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Aug 28 2018 Michael Cronenworth <mike@cchtml.com> - 1:26.1-7
|
||||||
|
- Rebuild for new ImageMagick 6.9.10
|
||||||
|
|
||||||
|
* Mon Aug 13 2018 Jan Synáček <jsynacek@redhat.com> - 1:26.1-6
|
||||||
- remove python dependencies, emacs*.py have not been there for a while
|
- remove python dependencies, emacs*.py have not been there for a while
|
||||||
|
|
||||||
* Mon Jun 18 2018 Jan Synáček <jsynacek@redhat.com> - 1:26.1-2
|
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:26.1-5
|
||||||
- remove build dependency on python2 (#1591707)
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jul 02 2018 Miro Hrončok <mhroncok@redhat.com> - 1:26.1-4
|
||||||
|
- Rebuilt for Python 3.7
|
||||||
|
|
||||||
|
* Tue Jun 26 2018 Jan Synáček <jsynacek@redhat.com> - 1:26.1-3
|
||||||
|
- Refix: Emacs crashes when loading color fonts (#1519038)
|
||||||
|
+ emacs SIGABRT after XProtocolError on displaying an email in Gnus (#1591223)
|
||||||
|
|
||||||
|
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 1:26.1-2
|
||||||
|
- Rebuilt for Python 3.7
|
||||||
|
|
||||||
* Wed May 30 2018 Jan Synáček <jsynacek@redhat.com> - 1:26.1-1
|
* Wed May 30 2018 Jan Synáček <jsynacek@redhat.com> - 1:26.1-1
|
||||||
- emacs-26.1 is available (#1583433)
|
- emacs-26.1 is available (#1583433)
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- !Policy
|
--- !Policy
|
||||||
product_versions:
|
product_versions:
|
||||||
- rhel-8
|
- rhel-9
|
||||||
decision_context: osci_compose_gate
|
decision_context: osci_compose_gate
|
||||||
rules:
|
rules:
|
||||||
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
|
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
|
||||||
|
29
gpgkey-E6C9029C363AD41D787A8EBB91C1262F01EB8D39.gpg
Normal file
29
gpgkey-E6C9029C363AD41D787A8EBB91C1262F01EB8D39.gpg
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
|
||||||
|
mQENBF+pf4UBCAC6vjkWLSAsQpe8YIGKLQzNOJx/IjGtCdFF8uzmO5jmME+SD8RO
|
||||||
|
uJN+t5KXVw58uzu75EFD0vHTY9e+udJ2gkpuy0NnzkFcbumdLLo2ERKCoSctZZRh
|
||||||
|
zKXI5z5cHxCqW0B2ygHRrRLtoNlGID7bAgcgSViT1ptGqTXO7zGVu4Airok7dNzc
|
||||||
|
PtHgns8GlR5YAFX0TvE6oGd0l2VPghNeVJKJOjrbfhoDxl3ucFpqbqMH8z9HTLDO
|
||||||
|
Fpz8UaYYUdJMi3xX6vwTZxI2sM2RRVLUpZyllAkSMI4lln1OOgazM/62DJUs/rKI
|
||||||
|
HKBnF6h3/qsJUjUYXaAHbrXY26mWllAd536lABEBAAG0I0VsaSBaYXJldHNraWkg
|
||||||
|
KGVsaXopIDxlbGl6QGdudS5vcmc+iQE4BBMBAgAiBQJfqX+FAhsDBgsJCAcDAgYV
|
||||||
|
CAIJCgsEFgIDAQIeAQIXgAAKCRCRwSYvAeuNOYUQB/4/iIKKOG45ijNaRoTvmJJZ
|
||||||
|
Mvj1S07WQxEm7c5SHEeEQbLOAxB9vESOV7sLueuN3oqEndtzyYt4x1WTSBmHFF7h
|
||||||
|
5fcCMjBs41siOIp5Sj/xD0Bvaa0IKGCRSZ7PAo8Mq3wgajXpTpn9vxE2PmtzA8Kd
|
||||||
|
EE0K1+f9pVAfOpUIcCl44rIxLUW352XG0y7iz6c/O6LB1deOKMiKFctKO7pBti1d
|
||||||
|
JEm1ImewLH3H8uTbwspLOs3EB8xhsESxmTidnze68HX2jt+2EeMgCdkiNU+LWbex
|
||||||
|
QZPfIS7+ZmE06ll0v6+Jy7ZdTkCCRypKWTnW7pIFsq/p4kybV8O/kHSV6B4vvQBf
|
||||||
|
uQENBF+pf4UBCACvFrdx/m22lgObypSmSS4TNlNvQnMUorrMmp0U32hv5adt6CKX
|
||||||
|
eMjk05F+GcIfVMrpxqMBn4sEUIXWhhogQJa9ZbWEP/HbS8XjMMbz0Q0Siaty9+DS
|
||||||
|
spK/9u2GWKsz3uQzLCexIJtzmXvjAVmvoMCAU/F2t038ggygjYLRgyLRNLgbbart
|
||||||
|
u2dMkvrfxRjheip60S4S3utOcwUf/qdoa1grNannCFluHr/ftXCeeuGB4H8iO0BX
|
||||||
|
WNby6NZPizxJttx9gdcH8/OmDOJkXyRMTT/3sSem76CSOjfXcz7saJlg680NQhG5
|
||||||
|
TmuYERjJD4+U02K5RuqTsEnOuWeFy4p+/mslABEBAAGJAR8EGAECAAkFAl+pf4UC
|
||||||
|
GwwACgkQkcEmLwHrjTno7Af/a1XoLHxAUkS43nmF8iazn3ZnuwWKWLEAsNrxk56y
|
||||||
|
UxhUPRzNs0/fsABDQR1o0DyTqbScKOcOMSG2YMCctLiDd7FdfMWwkUsV9GUpPBiR
|
||||||
|
tD60Ewmn9sbNJKrEoZ5L6sqOUEslJRVABu5taOzVIRfeUPPaMRjvCcr0d+epKjW8
|
||||||
|
1J9Aqj8SskuNkHwvHchTYFYVT22aemjjZ1MGOUm7QiybWQgYL6aSPV2gR+NQQ7pE
|
||||||
|
hOBoEi6GLEiBkoYOIXvmxsqQLBrUPbsJq8lItYEaw4HGt8BaPxtK2yZ9mSqC2xhW
|
||||||
|
Yr1j1YAIHffzubC0jxc5znXERsRANoJOwNUXmiddD7UM9A==
|
||||||
|
=g4R7
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
4
sources
4
sources
@ -1,2 +1,2 @@
|
|||||||
SHA512 (emacs-26.1.tar.xz) = 537c2cfdd281151b360002419dde6280c313e07a937ed96405c67f754b3401ec5541091a3c0aa6690929bc33dd79e8e0d8844e7a6b014b7798c63cb15de210c2
|
SHA512 (emacs-27.2.tar.xz) = 0f63a5a8709b113ef790c1a64845dad05ead096f93f62164ff221c517a35b91ea7bced75a992d794981a85382cda03cca7338da2f5ef8f6ef1459b88018a4ce9
|
||||||
SHA512 (package-keyring.gpg) = ca0dfa2edda9a6de5837dd6d754d574b13e007561e8dcc99c178d24f6a5dbb6880edc95db9d6afbea8bdf0b409671657fe22a778003ea0ccf351dce5e4fd429f
|
SHA512 (emacs-27.2.tar.xz.sig) = 60d273c537aed3c996d065374307b043c3a92d803668f6ab770dd6cab6814a32959d8632d2809c7389c4bc51c7a75b13ecd68a9ea9ca11df3bb63281816132c6
|
||||||
|
Loading…
Reference in New Issue
Block a user