docs: Studio's PDF export needs LaTeX, in AGENTS.md and Dockerfile.base too
Lint / skill-floor (push) Successful in 9s
Lint / hadolint (push) Successful in 12s
Lint / doc-drift (push) Successful in 14s
Lint / actionlint (push) Successful in 22s

AGENTS.md ("What we DON'T install") and two comments in Dockerfile.base's
typst block still said pi-studio's PDF export uses typst. Same correction
as 77929b7 for the README. AGENTS.md also warns maintainers not to ship
ENV PANDOC_PDF_ENGINE=typst, since pi-studio's LaTeX header is printed as
page text under typst while pandoc exits 0.

Corrects 77929b7: "texlive-xetex alone is not enough" holds only with
--no-install-recommends. With apt's defaults, texlive-xetex (and the old
AGENTS recipe, texlive-xetex texlive-latex-recommended: the same set) works,
but installs 202 packages / 1053 MB including systemd, D-Bus and a JRE.
The README recipe (4 packages, --no-install-recommends) is 37 / 491 MB.
All three recipes measured from the image's 401 packages on v1.11.2 +
pi-studio 0.10.1, checking the exported page, not only the exit code.

Dockerfile.base changes are comments only, but base_tag hashes the whole
file; the next release rebuilds the base anyway.
This commit is contained in:
2026-10-15 01:04:40 +02:00
parent 77929b73df
commit 5becbba6c8
4 changed files with 54 additions and 27 deletions
+17 -8
View File
@@ -84,15 +84,24 @@ base** rather than reusing `base-6f3b20266de1`.
(unless the document sets `header-includes`). Under typst, pandoc exits
0 and prints that header as text above the first heading. Seen in the same PDF through two renderers, MuPDF and
Chromium.
- **`texlive-xetex` alone, which the README offered as the fallback, is
not enough.** The export then still lacks `lmodern.sty`, `ulem.sty`
and the `pzdr` font. Adding `lmodern texlive-plain-generic
texlive-fonts-recommended` makes it work: 37 packages and 491 MB
installed, after `apt-get update`. Measured on v1.11.2 with pi-studio
0.10.1. The exported page was looked at, not only its exit code.
- **`texlive-xetex`, the README's old fallback, works but is twice the
size it needs to be.** Installed with apt's defaults it pulls in its
recommends: 202 packages and 1053 MB, including systemd, D-Bus and a
Java runtime (`openjdk-21-jre-headless`, 194 MB). The same 202 come from
the old `AGENTS.md` recipe, `texlive-xetex texlive-latex-recommended`.
With `--no-install-recommends`, `texlive-xetex` alone is not enough:
the export then lacks `lmodern.sty`, `ulem.sty` and the `pzdr` font.
The README's recipe adds the three packages that provide them,
`lmodern texlive-plain-generic texlive-fonts-recommended`, and comes to
37 packages and 491 MB, after `apt-get update`. Each recipe was
measured from the image's own 401 packages on v1.11.2 with pi-studio
0.10.1, and the exported page was looked at, not only its exit code.
The same claim also appears in `AGENTS.md` ("What we DON'T install") and
in comments in `Dockerfile.base`. Neither is changed here.
The same claim is corrected in `AGENTS.md` ("What we DON'T install"),
which now also warns against `ENV PANDOC_PDF_ENGINE=typst`, and in two
comments in `Dockerfile.base`'s typst block. `base_tag` hashes all of
`Dockerfile.base`, comments included, so this changes the base hash too.
The base is rebuilt in the next release anyway (above).
## v1.11.2 — 2026-10-14