Skip to content

babel-english not auto-installed when rendering PDF with lang: en #13633

@cderv

Description

@cderv

Rendering a PDF with lang: en fails because babel-english is not automatically detected and installed.

---
title: title
format: pdf
lang: en
---

This is a test document.

Error:

Package babel Error: Unknown option 'english'.

Other LaTeX packages (e.g., koma-script, caption) are correctly auto-installed during rendering, but babel language support packages are not detected.

Workaround: tlmgr install babel-english

Dockerfile for reproduction
FROM rocker/r-ver:4.5.2

# Install system dependencies
RUN apt-get update && apt-get install -y \
    wget \
    curl \
    gdebi-core \
    perl \
    && rm -rf /var/lib/apt/lists/*

# Install tinytex R package and TinyTeX-1 bundle
RUN R -e "install.packages('tinytex', repos = 'https://cloud.r-project.org')" && \
    R -e "tinytex::install_tinytex(bundle = 'TinyTeX-1')"

# Add TinyTeX to PATH
ENV PATH="/root/.TinyTeX/bin/x86_64-linux:${PATH}"

# Install Quarto
ARG QUARTO_VERSION=1.8.25
RUN wget https://github.com/quarto-dev/quarto-cli/releases/download/v${QUARTO_VERSION}/quarto-${QUARTO_VERSION}-linux-amd64.deb && \
    gdebi --non-interactive quarto-${QUARTO_VERSION}-linux-amd64.deb && \
    rm quarto-${QUARTO_VERSION}-linux-amd64.deb

# Verify installations
RUN quarto --version
RUN R --version
RUN R -e "tinytex::tlmgr_version()"

# Create working directory
WORKDIR /test

# Create test.qmd file
RUN cat > test.qmd <<'EOF'
---
title: title
format: pdf
lang: en
---

This is a test document.
EOF

# Default command: demonstrate the failure and the workaround
CMD ["sh", "-c", "\
    echo '=== Attempting to render (should fail with babel error) ===' && \
    quarto render test.qmd --to pdf || echo 'Render failed as expected' && \
    echo '' && \
    echo '=== Installing babel-english workaround ===' && \
    tlmgr install babel-english && \
    echo '' && \
    echo '=== Rendering again (should succeed) ===' && \
    quarto render test.qmd --to pdf && \
    echo '' && \
    echo 'Success! PDF created after installing babel-english'"]
docker build -t quarto-babel-test .
docker run --rm quarto-babel-test

Found while working on pkgdown tests - affects Linux and macOS CI.


Note: Should check if the tinytex R package with Rmd documents correctly finds and auto-installs babel-english, to determine if this is Quarto-specific or a broader TinyTeX detection issue.

Here is the log file

test.log

Metadata

Metadata

Assignees

Labels

bugSomething isn't workinglatexLaTeX engines related libraries and technologies

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions