Subject: bug#62589: Help with patch with delayed evaluation

From: Ludovic Courtès <[email-masked]>
Date: Sat, 01 Apr 2023 12:28:36 +0200

Hi,

Nicolas Graves <[email-masked]> skribis:

> +(define* (make-nerd-dictation-package
> +          input-tool output-tool
> +          #:key (nerd-dictation-package nerd-dictation))
> +  "Construct a nerd-dictation package for OUTPUT-TOOL."
> +  (match-let* (((input-name output-name)
> +                (map (lambda (tool)
> +                       (lazy
> +                        (delay (package-name (force tool)))))
> +                     (list input-tool output-tool))))
> +    (package
> +      (inherit nerd-dictation-package)
> +      (name (string-append "nerd-dictation-"
> +                           (if (equal? (force input-name) "sox")
> +                               "sox-"
> +                              "")
> +                           (force output-name)))

I don’t understand the details of what the patch does, but as a rule of
thumb, make sure you only ever inherit from packages defined in the same
module.

Perhaps that’s what was going wrong?

HTH,
Ludo’.