[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#62589: Help with patch with delayed evaluation
From: |
Nicolas Graves |
Subject: |
bug#62589: Help with patch with delayed evaluation |
Date: |
Sat, 01 Apr 2023 12:58:55 +0200 |
On 2023-04-01 12:28, Ludovic Courtès wrote:
> Hi,
>
> Nicolas Graves <ngraves@ngraves.fr> 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.
The patch defines a helper for defining variants of nerd-dictation. It
now supports wtype and I wasn't totally satisfied by international
support for ydotool, so I wanted to switch, but copying it make a lot of
repeated code.
I already defined such a helper with Liliana Marie Prinkler with
make-emacs-eval-in-repl, but this time I don't understand this error.
Josselin was suggesting a module import cycle, (gnu packages
machine-learning) is imported in (gnu packages audio), the error might
come from there.
>
> Perhaps that’s what was going wrong?
I've tried inheriting from the above package direclty, doesn't seem to
be that.
>
> HTH,
> Ludo’.
--
Best regards,
Nicolas Graves