Hello,
Isaac van Bakel <isaac.vanbakel@inf.ethz.ch> writes:
Toggle quote (14 lines)
> On 2023/12/06 22:39, Nicolas Goaziou wrote:
>> This is a limitation in TeX Live, not Guix's, package definitions. The
>> dependency is not reported in their "texlive.tlpdb" file.
>>
>> Note there are hundreds of such issues. We cannot realistically fix them
>> manually ; for example this change would need to be tested every time
>> Guix TeX packages are updated.
>
> Is there no way to declare that a package auto-generated from TeX Live
> should be "patched" in some way (in this case, to include the
> dependency)? I'm aware that Nix does something like this for their
> various package sets. Perhaps this would be more sustainable than
> a fully-manual process.
I don't know what Nix does. However, considering the sheer number of
packages involved, I don't believe in the sustainability of anything
even remotely manual.
Now let's suppose we solve this. E.g., the importer greps through ".ins"
or ".dtx" files to identify and declare a list of dependencies. Then
we'll face another, greater, issue: it will be no longer possible to
build TeX Live packages because of the dependencies loops we will have
just introduced. Let me insist of the fact that I'm not talking about an
hypothetical problem: I encountered it when I started to package the
missing TeX Live bits a few months ago.
If there's no solution, then there's no problem. ;)
Toggle quote (15 lines)
>> I suggest to use collections of packages to avoid messing too much with
>> individual dependencies, and possibly report those missing dependencies
>> to the TeX Live project.
>
> Unfortunately this particular package only appears in an unopinionated
> collection in latexextra, which is very heavy for something that
> I have to put in my manifest just to fix a dependency issue.
>
> I'll look into getting the dependency registered on TL, but it's worth
> noting that they also don't want the responsibility of dependency
> tracking. They also don't recommend that package authors bother to put
> dependency information in their packages.[0] I'm conscious that this
> is a complex burden, but ideally *someone* would take it on so that
> the software works.
The software works; the burden in on the user who wants to optimize
their TeX Live installation. I think this is a reasonable, and common,
expectation. I don't think the TeX Live installer takes a different
approach. On a different context, compare a user installing a full blown
DE, such as Gnome, to another one who picks a window manager, a file
manager, etc., and needs to glue these parts together to make them
behave as a coherent environment.
As a data point, I have a 20-ish TeX Live packages from latexetra
collection explicitly installed from my manifest as required
dependencies. This list hardly ever increases or changes, so this is
acceptable, at least for me.
Sorry for being pessimistic. Maybe Someone™ will find an unexpected
solution. Meanwhile, adding manually dependencies is, IMO, a no go.
Regards,
--
Nicolas Goaziou