Subject: [PATCH v2 1/8] guix: packages: Allow origin inside inputs with "new style".

From: Simon Tournier <[email-masked]>
Date: Tue, 10 Sep 2024 03:27:09 +0200

* guix/packages.scm (add-input-label): Rely on 'origin-actual-file-name' for
internal inputs labels.
(maybe-add-input-labels): Special case to avoid world rebuild.

Change-Id: I6ba5352b1b1b8ab810da3730b09cb9db61d6429c
---
 guix/packages.scm | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/guix/packages.scm b/guix/packages.scm
index f373136d22..35dba6adc3 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -444,6 +444,9 @@ (define (maybe-add-input-labels inputs)
         ((and (pair? (car inputs))
               (string? (caar inputs)))
          inputs)
+        ((and (origin? (car inputs))    ;XXXX: Remove next world rebuild
+              (null? (cdr inputs)))     ;special case tzdata
+         (list (list "_" (car inputs))))
         (else (map add-input-label inputs))))
 
 (define (add-input-labels . inputs)
@@ -676,6 +679,13 @@ (define (add-input-label input)
               "_")
          ,obj
          ,@(if (string=? output "out") '() (list output)))))
+    ((? origin? origin)                 ;XXXX: Remove next world rebuild
+     (let ((texlive (package-source
+                     (module-ref (resolve-interface '(gnu packages tex))
+                                 'texlive-latex))))
+       (if (eq? input texlive)
+           (list "_" origin)
+           (list (or (origin-actual-file-name origin) "_") origin))))
     (x
      `("_" ,x))))
 
-- 
2.45.2