我创建了一个新包并将其上传到 CTAN.org。然后,我用 安装它,tlmgr install
它可以正常工作,并且只安装我的包。但是,当我安装时,例如,beamer
它的所有依赖项也会被安装。在我的情况下,没有安装任何依赖项。
我究竟做错了什么?
答案1
要声明对软件包的依赖关系,您可以像 Joseph 所说的那样,向 TeX Live 维护者发送邮件,他们会相应地进行处理。最近(2020 年中左右),引入了一种声明依赖关系的新方法:您上传软件包的同时,DEPENDS.txt
还将上传一个名为 (exactly) 的文件,该文件将与README
.
您可以声明两种类型的依赖项:hard
和soft
。 hard
表示您的包始终需要依赖项,soft
表示依赖项以某种方式有条件。 例如,DEPENDS.txt
数学排版包中的文件可能如下所示:
hard amsfonts
soft unicode-math
whenamsfonts
总是需要,并且unicode-math
仅在使用 XeTeX 或 LuaTeX 时才需要。
您可以找到DEPENDS.txt
您可以在以下位置找到该文件https://www.tug.org/texlive/pkgcontrib.html#deps。
请注意,包名称是加拿大运输安全局包名称,可能与您加载的包不同\usepackage
。例如,在我编写的包中,我有DEPENDS.txt
:
hard l3kernel
因为包确实如此\usepackage{expl3}
。
答案2
你没有做错什么。依赖项是根据手动添加的数据在 TeX Live 配置文件中列出的 - 没有什么是自动的。你最好通过电子邮件向 TeX Live 列表发送详细信息必需的依赖项,Karl 等人可能会添加它们。