跨平台软件包管理器,用于 CTAN 上不存在的软件包

跨平台软件包管理器,用于 CTAN 上不存在的软件包

我不想重新发明轮子,所以也许您可以帮我找到适合我需要的工具。

背景

据我所知,在 CTAN 上发布 LaTeX 包需要一些时间。有些人(包括我)在 Github 等上开发包。因此,如果有一个工具(就像apt-gettmgr)可以在 CTAN 之外管理 LaTeX 包,那就太好了。

要求

  • 跨平台该工具应在所有主流操作系统上运行,并应与 TeXLive 和 MiKTeX 兼容。
  • Github 支持从 Github / Sourceforge / Google Code 等服务下载并更新 LaTeX 包。
  • 命令行界面应该有选择更新所有已安装的软件包或安装来自给定 URL 的包

答案1

要培养这样的经理最大的问题是:如何从任意布局(由作者创建)自动转换为 TDS(TeX 目录标准)布局。

我们从 CTAN 拉取到 TeX Live 时使用了一个部分解决方案,这是一个名为 的脚本,ctan2tds它了解很多不同的包以及如何将它们转换为 TDS 布局。如果没有指定任何特殊内容,它甚至还有一个自动模式。这种自动模式对于简单的包来说非常有效,但对于稍微复杂的包则不行。

现在对于超级 tlmgr:有几个问题需要克服:

  • 包含/扩展 ctan2tds:这可能是最简单的部分
  • 教导超级 tlmgr 如何访问各种来源(git、svn、zip、tar.gz、平面文件……)
  • 使其独立于平台(祝你好运!我知道在 Windows 上这有多难)

话虽如此,这并非不可能。我设想一个 tlmgr 扩展,它包含 ctan2tds 代码库,此外还有用户模式补丁,以便可以安装到任意树中。超级 tlmgr 将从任何来源下载包,尝试在其中运行 ctan2tds 代码,并将其放入临时 TDS 文件夹中,并向用户显示结果,提供安装或删除。

当然,在这种情况下,版本检查、升级等可能会有问题。

最后一件事:我不认为永远没有时间去做这件事。还有一件事,即 ctan2tds 代码需要重新设计和精简...

相关内容