diff --git a/alpine/Dockerfile b/alpine/Dockerfile index 0fec824..ee016d9 100644 --- a/alpine/Dockerfile +++ b/alpine/Dockerfile @@ -161,7 +161,7 @@ FROM alpine-latex as alpine-extra COPY common/extra/packages.txt /root/extra_packages.txt COPY common/extra/requirements.txt /root/extra_requirements.txt -# The option `--break-system-packages` sounds bad but this is not +# The option `--break-system-packages` sounds bad but this is not # really a problem here because we are not using Python apk packages # anyway. RUN apk --no-cache add py-pip \ @@ -180,3 +180,6 @@ RUN mkdir -p ${TEMPLATES_DIR} && \ ARG EISVOGEL_REPO=https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template ARG EISVOGEL_VERSION=v2.4.0 RUN wget ${EISVOGEL_REPO}/${EISVOGEL_VERSION}/eisvogel.tex -O ${TEMPLATES_DIR}/eisvogel.latex + +# tectonic +RUN apk --no-cache add tectonic diff --git a/docs/extra.md b/docs/extra.md index 8adfc3c..df74fd1 100644 --- a/docs/extra.md +++ b/docs/extra.md @@ -8,11 +8,12 @@ and a curated selection of components: * Beamer Themes: [beamer-metropolis][] * Pandoc filters: [pandoc-latex-environment][] * Open Source Fonts: Font Awesome, Source Code Pro, Source Sans Pro - +* PDF engines: [Tectonic][] [Eisvogel]: https://github.com/Wandmalfarbe/pandoc-latex-template [beamer-metropolis]: https://github.com/matze/mtheme [pandoc-latex-environment]: https://github.com/chdemko/pandoc-latex-environment +[Tectonic]: tectonic-typesetting.github.io [pandoc]: https://pandoc.org/ [LaTeX]: https://latex-project.org/ diff --git a/test/Makefile b/test/Makefile index 10d7d4e..244c781 100644 --- a/test/Makefile +++ b/test/Makefile @@ -188,7 +188,8 @@ EXTRA_CMD = docker run --rm \ --fail-if-warnings .PHONY: test-extra -test-extra: output/eisvogel.pdf output/eisvogel_with_environment.pdf output/beamertheme-metropolis.pdf +test-extra: output/eisvogel.pdf output/eisvogel_with_environment.pdf \ + output/beamertheme-metropolis.pdf output/eisvogel-tectonic.pdf output/eisvogel.pdf: eisvogel.md $(EXTRA_CMD) $< \ @@ -210,6 +211,12 @@ output/beamertheme-metropolis.pdf: beamertheme-metropolis.md --variable=theme:metropolis \ --variable=themeoptions:numbering=none +output/eisvogel-tectonic.pdf: eisvogel.md + $(EXTRA_CMD) $< \ + --output=$@ \ + --template=eisvogel \ + --pdf-engine=tectonic + # ____ _ # / ___| | ___ __ _ _ __ # | | | |/ _ \/ _` | '_ \ diff --git a/ubuntu/Dockerfile b/ubuntu/Dockerfile index b527b45..4f5aa4b 100644 --- a/ubuntu/Dockerfile +++ b/ubuntu/Dockerfile @@ -199,3 +199,16 @@ RUN mkdir -p ${TEMPLATES_DIR} && \ ARG EISVOGEL_REPO=https://raw.githubusercontent.com/Wandmalfarbe/pandoc-latex-template ARG EISVOGEL_VERSION=v2.4.0 RUN wget ${EISVOGEL_REPO}/${EISVOGEL_VERSION}/eisvogel.tex -O ${TEMPLATES_DIR}/eisvogel.latex + +# tectonic +ARG TARGETARCH +ARG TECTONIC_REPO=https://github.com/tectonic-typesetting/tectonic/releases/download +ARG TECTONIC_VERSION=0.15.0 +RUN if [ "$TARGETARCH" = "amd64" ] ; then TECTONIC_ARCH='x86_64' ; \ + elif [ "$TARGETARCH" = "arm64" ] ; then TECTONIC_ARCH='aarch64' ; \ + else echo 'unsupported target arch for tectonic'; exit 1 ; \ + fi \ + && TECTONIC_TARBALL=tectonic-${TECTONIC_VERSION}-${TECTONIC_ARCH}-unknown-linux-gnu.tar.gz \ + && wget ${TECTONIC_REPO}/tectonic%40${TECTONIC_VERSION}/${TECTONIC_TARBALL} \ + && tar xzf ${TECTONIC_TARBALL} -C /usr/local/bin/ \ + && rm -f ${TECTONIC_TARBALL}