[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#51258: [PATCH] gnu: emacs: Handle pdump filenames that contain a fin
From: |
Liliana Marie Prikler |
Subject: |
bug#51258: [PATCH] gnu: emacs: Handle pdump filenames that contain a fingerprint |
Date: |
Tue, 19 Oct 2021 20:45:03 +0200 |
User-agent: |
Evolution 3.34.2 |
Hi,
Am Montag, den 18.10.2021, 19:50 -0400 schrieb
Morgan.J.Smith@outlook.com:
> From: Morgan Smith <Morgan.J.Smith@outlook.com>
>
> * gnu/packages/emacs.scm (emacs) [restore-emacs-pdmp]: Add regex to
> handle
> filenames that have a fingerprint in them
> ---
>
> Fixed your problem. Well it was also my problem. The regex is
> pretty simple but probably a little intimidating if you've never done
> it before. I highly recommend reading up on ERE's and BRE's from the
> POSIX specification if you have time. I still don't exactly know how
> guile does regex but knowing POSIX regex has served me quite well.
>
> I've tested this patch and it works great for me on the latest emacs
> commit. It should also be backwards compatible so that's nice.
>
>
> gnu/packages/emacs.scm | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
> index 6d9950d068..6ebcfecbc7 100644
> --- a/gnu/packages/emacs.scm
> +++ b/gnu/packages/emacs.scm
> @@ -183,9 +183,10 @@ (define* (emacs-byte-compile-directory dir)
> (let* ((libexec (string-append (assoc-ref outputs
> "out")
> "/libexec"))
> ;; each of these find-files should return one
> file
> - (pdmp (find-files libexec "^emacs\\.pdmp$"))
> + ;; there might be a fingerprint in the name
> + (pdmp (find-files libexec "^emacs(-
> [[:xdigit:]]+)?\\.pdmp$"))
> (pdmp-real (find-files libexec
> - "^\\.emacs\\.pdmp-
> real$")))
> + "^\\.emacs(-
> [[:xdigit:]]+)?\\.pdmp-real$")))
> (for-each (lambda (wrapper real)
> (delete-file wrapper)
> (rename-file real wrapper))
Hi, this might sound somewhat odd, but I think this solution could be a
little over-engineered (also it does not match the case where the
version is an actual version rather than a git hash). Perhaps instead
we ought to simply look for the .pdmp-real suffix, construct the old
file name and move the file back. WDYT?