运行 install-tl 时出错“collection-basic 的配置文件键必须为 0 或 1,而不是:1”

运行 install-tl 时出错“collection-basic 的配置文件键必须为 0 或 1,而不是:1”

当我尝试使用自定义配置文件在 Docker 中从头开始构建 texlive 时,出现了一个非常奇怪的错误,请注意,这个精确的代码曾经可以工作,但是在对 texlive 安装程序进行一些更新后,我现在收到这些错误。

./install-tl --profile ../texlive.profile当我运行时,我收到错误./install-tl: Quitting, profile key for collection-basic must be 0 or 1, not: 1,这对我来说毫无意义。

这是 TexLive 安装程序中发生这种情况的行,但说实话我不明白这一点,看不懂 perl

任何帮助都非常感谢,这阻碍了我们的开发流程。

这里的背景是,我需要构建和打包一个非常轻量级的 texlive 发行版,以便在 AWS 的 Lambda 服务中运行

这是我的 Dockerfile:

FROM lambci/lambda:build-python3.7

# The TeXLive installer needs md5 and wget.
RUN yum -y install perl-Digest-MD5 && \
    yum -y install wget

WORKDIR /opt

# Download TeXLive installer.
ADD http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz /opt

# Minimal TeXLive configuration profile.
COPY texlive.profile /opt

# Install base TeXLive system.
RUN tar xf install*.tar.gz
RUN cd install-tl-* && \
    ./install-tl --profile ../texlive.profile


ENV PATH=/opt/texlive/bin/x86_64-linux:$PATH


# Install latexmk.
RUN tlmgr install latexmk

# Remove LuaTeX.
RUN tlmgr remove --force luatex

# Remove large unneeded files.
RUN rm -rf /opt/texlive/tlpkg/texlive.tlpdb* \
           /opt/texlive/texmf-dist/source/latex/koma-script/doc \
           /opt/texlive/texmf-dist/doc 

RUN mkdir -p /opt/texlive/tlpkg/TeXLive/Digest/ && \
    mkdir -p /opt/texlive/tlpkg/TeXLive/auto/Digest/MD5/ && \
    cp /usr/lib64/perl5/vendor_perl/Digest/MD5.pm \
       /opt/texlive/tlpkg/TeXLive/Digest/ && \
    cp /usr/lib64/perl5/vendor_perl/auto/Digest/MD5/MD5.so \
       /opt/texlive/tlpkg/TeXLive/auto/Digest/MD5

FROM lambci/lambda:build-python3.6

WORKDIR /opt

ENV PATH=/opt/texlive/bin/x86_64-linux:$PATH
ENV PERL5LIB=/opt/texlive/tlpkg/TeXLive/

COPY --from=0 /opt/ /opt/

这是我的 texlive.profile

selected_scheme scheme-custom
TEXDIR /opt/texlive
TEXMFSYSCONFIG /opt/texlive/texmf-config
TEXMFSYSVAR /opt/texlive/texmf-var
TEXMFLOCAL /opt/texlive/texmf-local
TEXMFHOME /tmp/texmf
TEXMFCONFIG /tmp/texmf-config
TEXMFVAR /tmp/texmf-var
binary_x86_64-linux 1
collection-basic 1
collection-latex 1
instopt_adjustpath 0
instopt_adjustrepo 1
instopt_letter 0
instopt_portable 0
instopt_write18_restricted 1
tlpdbopt_autobackup 0
tlpdbopt_backupdir tlpkg/backups
tlpdbopt_create_formats 0
tlpdbopt_desktop_integration 0
tlpdbopt_file_assocs 0
tlpdbopt_generate_updmap 0
tlpdbopt_install_docfiles 0
tlpdbopt_install_srcfiles 0
tlpdbopt_post_code 1

我只是简单地调用它docker build -t local/lambdalatex .

答案1

texlive.profile 文件应该将行终止符设置为 Unix,如果该文件是在 Windows 上创建的,则可能不一定如此。

相关内容