Subject: [bug#75479] [PATCH] gnu: emacs-ledger-mode: Update to 4.0.0-1.356d804.

From: Morgan Smith <[email-masked]>
Date: Fri, 10 Jan 2025 15:05:05 -0500

* gnu/packages/finance.scm (emacs-ledger-mode): Update to 4.0.0-1.356d804.

Change-Id: Id6d23dc7c2d7a32c91c69a9c26d0d2a47d3f9fa9
---
 gnu/packages/finance.scm | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 149bebfa2f..a2992344d1 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -409,8 +409,8 @@ (define-public ledger
 
 (define-public emacs-ledger-mode
   ;; The last release was on Nov 8, 2019 and doesn't build with Emacs 28.
-  (let ((commit "11e850395448ee7012dba16bd6df103f5552ebfb")
-        (revision "0"))
+  (let ((commit "356d8049ede02c06db4f487d1d6076f74d6098c5")
+        (revision "1"))
     (package
       (name "emacs-ledger-mode")
       (version (git-version "4.0.0" revision commit))
@@ -422,18 +422,19 @@ (define-public emacs-ledger-mode
                (commit commit)))
          (file-name (git-file-name name version))
          (sha256
-          (base32 "0hzky36vrlb7kvpyz4gy3zn01zdlmlx0s58w6ggk5djbcvjc2rfx"))))
+          (base32 "1wssagczhils0nx12b2nq2jk2gp9j26jn8nrqdrj255nzl40aia1"))))
       (build-system emacs-build-system)
       (arguments
        (list
-        ;; ledger-test.el is needed at runtime (but probably not for a good reason).
-        #:exclude #~'()
         #:tests? #t
         #:phases
         #~(modify-phases %standard-phases
+            (add-after 'unpack 'do-not-require-tests-at-runtime
+              (lambda _
+                (substitute* "ledger-mode.el"
+                  (("\\(require 'ledger-test\\)") ""))))
             (add-after 'unpack 'patch-path
               (lambda* (#:key inputs #:allow-other-keys)
-                (make-file-writable "ledger-exec.el")
                 (emacs-substitute-variables "ledger-exec.el"
                   ("ledger-binary-path" (search-input-file inputs "/bin/ledger")))))
             (add-after 'build 'build-doc
@@ -446,7 +447,9 @@ (define-public emacs-ledger-mode
               (lambda* (#:key tests? #:allow-other-keys)
                 (when tests?
                   (with-directory-excursion "../source/test"
-                    (invoke "make" "test-batch"))))))))
+                    ;; Test does not respect `ledger-binary-path' and thus fails
+                    (delete-file-recursively "report-test.el")
+                    (invoke "make" "test"))))))))
       (inputs
        (list ledger))
       (native-inputs

base-commit: ef025dd4c4e8cc51498146ecde619cfef9eb0779
-- 
2.47.1