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

From: Maxim Cournoyer <[email-masked]>
Date: Thu, 26 Sep 2024 22:30:57 +0900

Hi Simon,

That's an interesting series!

Simon Tournier <[email-masked]> writes:

[...]

>> I would rather have this hack in ‘tzdata’ itself, along the lines of
>> what I sent in a previous message.
>
> Yes, indeed tzdata can temporarily transformed into the old style.  It
> avoids the world rebuild and it’s a modification easier to change than
> the one about maybe-add-input-labels.  I agree that’s better.
>
>
>>> @@ -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?
>
> It’s about the package texlive-hyphen-complete; it leads to a world
> rebuild – as pointed in the cover letter of v2 ;-)
>
> It reads:
>
>     (native-inputs
>      (list ruby-2.7
>            ruby-hydra-minimal/pinned
>            ;; Build phase requires "docstrip.tex" from TEXLIVE-LATEX.
>            ;; However, adding this package to native inputs would initiate
>            ;; a circular dependency.  To work around this, use TEXLIVE-LATEX
>            ;; source, then add "docstrip.tex" to TEXINPUTS before build.
>            (package-source texlive-latex)
>            texlive-tex))
>
> then:
>
>           (add-before 'build 'include-docstrip.tex
>             (lambda* (#:key inputs native-inputs #:allow-other-keys)
>               (let ((docstrip.tex
>                      (search-input-file (or native-inputs inputs)
>                                         "tex/latex/base/docstrip.tex")))
>
>
> Well, we can apply the same hack as tzdata: temporarily revert to the
> old style.

Would you please send a v3 with the above implemented? Then we could
move forward, I think.

-- 
Thanks,
Maxim