From 49d19b35cebd749510b7dddd773d76a3a96d1358 Mon Sep 17 00:00:00 2001 From: Morgan Smith Date: Tue, 19 Oct 2021 15:10:09 -0400 Subject: [PATCH] gnu: emacs: Handle pdump filenames that contain a fingerprint. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs.scm (emacs) [restore-emacs-pdmp]: Use lax regular expressions to match files by the “.pdmp” file ending only. Adjust comment accordingly. Signed-off-by: Liliana Marie Prikler --- gnu/packages/emacs.scm | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 6d9950d068..22d8db3839 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -182,15 +182,13 @@ (lambda* (#:key outputs target #:allow-other-keys) (let* ((libexec (string-append (assoc-ref outputs "out") "/libexec")) - ;; each of these find-files should return one file - (pdmp (find-files libexec "^emacs\\.pdmp$")) - (pdmp-real (find-files libexec - "^\\.emacs\\.pdmp-real$"))) - (for-each (lambda (wrapper real) - (delete-file wrapper) - (rename-file real wrapper)) - pdmp pdmp-real)) - #t)) + ;; each of these ought to only match a single file, + ;; but even if not (find-files) sorts by string<, + ;; so the Nth element in one maps to the Nth element of + ;; the other + (pdmp (find-files libexec "\\.pdmp$")) + (pdmp-real (find-files libexec "\\.pdmp-real$"))) + (for-each rename-file pdmp-real pdmp)))) (add-after 'glib-or-gtk-wrap 'strip-double-wrap (lambda* (#:key outputs #:allow-other-keys) ;; Directly copy emacs-X.Y to emacs, so that it is not wrapped