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

From: Ludovic Courtès <[email-masked]>
Date: Mon, 16 Sep 2024 22:19:37 +0200

Simon Tournier <[email-masked]> 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’.