Subject: Re: [bug#55997] [PATCH staging 2/4] gnu: Remove texlive's dependence on ruby-rspec and ruby-byebug.

From: Maxime Devos <[email-masked]>
Date: Sun, 19 Jun 2022 16:47:51 +0200

Tom Fitzhenry schreef op ma 20-06-2022 om 00:01 [+1000]:
> (copy-recursively
>  (assoc-ref inputs "hyph-utf8-scripts") "scripts")
> 
> This fails because the assoc-ref call returns #f, presumably because
> native-inputs is no longer an alist.

It's still an alist under the hood.

> To try to find a new-style way to recursively copy an entire input, I
> read https://guix.gnu.org/blog/2021/the-big-change/ and searched the
> codebase, but I was unable to find any.
> 
> The closest I could find was to use search-input-directory, but 
> this seems to only be suitable to copy known subdirectories across
> all inputs, not an entire single input.

Two options: insert the input directly into the G-exp:

 (copy-recursively #+hyph-utf8-scripts "scripts")

or: search for a file in hyph-utf8-scripts and then extract the
directory name:

 (copy-recursively (dirname (search-input-file inputs "hyph-utf8.rb"))
                   "scripts")

.  I'd prefer the latter because that makes it easier to define a
custom texlive-hyphen-... package replacing hyph-utf8-scripts by a
custom hyph-utf8-scripts by using simple package transformations (e.g.:
inherit + replace the native-inputs).

Greetings,
Maxime