appimage: install texlive so the images regenerate + ship docs

The AppImage builders already shipped the pre-built PostScript
documentation (each Dockerfile runs "make install", and INSTALL_CAD_DIRS
includes doc/), but they did not install latex/dvips, so the docs were
never regenerated from source.

Install texlive (latex + dvips + recommended fonts) before the magic
build in all four EL variants (yum on EL7, dnf on EL8/9/10), so configure
reports "LaTeX docs: yes" and the default "make" regenerates the docs
into the build before "make install" ships them.

The install is non-fatal (|| echo): if a texlive package is unavailable
on a given EL release it falls back to the pre-built PostScript, so the
release image build can never be broken by documentation, and docs are
shipped either way.

NOTE: not build-tested here (no Docker/EL toolchain available).  The
package names (texlive-latex, texlive-dvips,
texlive-collection-fontsrecommended) should be validated on each EL
image; the non-fatal guard protects the tag-triggered release builds in
the meantime.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Darryl L. Miles 2026-07-22 15:09:28 +00:00 committed by R. Timothy Edwards
parent 3f4a9633d6
commit 88411e3387
4 changed files with 32 additions and 0 deletions

View File

@ -18,6 +18,14 @@ RUN dnf install -y python3 zlib-devel ncurses-devel readline-devel cairo-devel f
&& rpm -qa | sort \
&& echo ""
# LaTeX + dvips (optional). When present, the default "make" regenerates the
# PostScript documentation from source (configure prints "LaTeX docs: yes");
# otherwise the pre-built PostScript shipped in the source tree is installed.
# Kept non-fatal so an unavailable package can never break the release image --
# the documentation is shipped either way.
RUN dnf install -y texlive-latex texlive-dvips texlive-collection-fontsrecommended \
|| echo "texlive unavailable; shipping the pre-built PostScript documentation"
# Tcl/Tk
WORKDIR /tcl
RUN set -eux; \

View File

@ -28,6 +28,14 @@ RUN yum install -y cairo-devel freeglut-devel gcc make git tcsh \
&& rpm -qa | sort \
&& echo ""
# LaTeX + dvips (optional). When present, the default "make" regenerates the
# PostScript documentation from source (configure prints "LaTeX docs: yes");
# otherwise the pre-built PostScript shipped in the source tree is installed.
# Kept non-fatal so an unavailable package can never break the release image --
# the documentation is shipped either way.
RUN yum install -y texlive-latex texlive-dvips texlive-collection-fontsrecommended \
|| echo "texlive unavailable; shipping the pre-built PostScript documentation"
# Tcl/Tk
WORKDIR /tcl
RUN set -eux; \

View File

@ -17,6 +17,14 @@ RUN dnf install -y python311 zlib-devel ncurses-devel readline-devel cairo-devel
&& rpm -qa | sort \
&& echo ""
# LaTeX + dvips (optional). When present, the default "make" regenerates the
# PostScript documentation from source (configure prints "LaTeX docs: yes");
# otherwise the pre-built PostScript shipped in the source tree is installed.
# Kept non-fatal so an unavailable package can never break the release image --
# the documentation is shipped either way.
RUN dnf install -y texlive-latex texlive-dvips texlive-collection-fontsrecommended \
|| echo "texlive unavailable; shipping the pre-built PostScript documentation"
# Tcl/Tk
WORKDIR /tcl
RUN set -eux; \

View File

@ -18,6 +18,14 @@ RUN dnf install -y python311 zlib-devel ncurses-devel readline-devel cairo-devel
&& rpm -qa | sort \
&& echo ""
# LaTeX + dvips (optional). When present, the default "make" regenerates the
# PostScript documentation from source (configure prints "LaTeX docs: yes");
# otherwise the pre-built PostScript shipped in the source tree is installed.
# Kept non-fatal so an unavailable package can never break the release image --
# the documentation is shipped either way.
RUN dnf install -y texlive-latex texlive-dvips texlive-collection-fontsrecommended \
|| echo "texlive unavailable; shipping the pre-built PostScript documentation"
# Tcl/Tk
WORKDIR /tcl
RUN set -eux; \