Message ID | a6b14210f78ccc3b2d0b9d28c5ba3a4c05c28316.1725930587.git.zimon.toutoune@gmail.com |
---|---|
State | New |
Headers | show |
Series | Allow origin inside inputs with "new style". | expand |
Simon Tournier <zimon.toutoune@gmail.com> skribis: > * 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 [...] > @@ -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)))) I would rather have this hack in ‘tzdata’ itself, along the lines of what I sent in a previous message. > @@ -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)))) I think this should be avoided, but what is it that causes a rebuild in this case? Thanks, Ludo’.
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))))