
Hi Bruce, thanks for your suggestions. Since I wanted to play with a solution similar to the one posted by Adityam on his blog https://adityam.github.io/context-blog/post/markdown-with-gpp/ I ended up with a custom Docker image to have gpp, pandoc and context in the same environment. Here's the Dockerfile, if one wants to try it out (or to improve it!)
FROM pandoc/core:latest
# Build GPP ARG GPP_VERSION=2.28 WORKDIR /build
RUN apk -U upgrade && \ apk add build-base wget && \ wget -q https://github.com/logological/gpp/releases/download/${GPP_VERSION}/gpp-${GPP_VERSION}.tar.bz2 && \ tar -xvjf gpp-${GPP_VERSION}.tar.bz2 && \ cd gpp-${GPP_VERSION} && \ ./configure && \ make && \ make install
# Install ConTeXt LMTX WORKDIR /opt
ENV PATH=/opt/context/tex/texmf-linuxmusl-64/bin:opt/context/bin:$PATH
RUN apk add unzip curl libc6-compat ca-certificates rsync && \ wget -q https://lmtx.pragma-ade.com/install-lmtx/context-linux-64.zip && \ unzip context-linux-64.zip -d context && \ cd context && \ chmod 755 install.sh && \ ./install.sh && \ cd tex && \ mtxrun --script install-modules --install filter && \ context --generate
ENTRYPOINT ["/opt/context/tex/texmf-linuxmusl-64/bin/context"]
WORKDIR /data
# Quick test RUN gpp --version && \ pandoc --version && \ context --version
# Last cleanup RUN apk del unzip curl wget build-base libc6-compat ca-certificates rsync
In the spirit of the context world, I think a good name for this image could be context-gppd ;) Best regards, MR On 4/10/25 22:49, Bruce Horrocks wrote:
On 10 Apr 2025, at 13:14, Marco Riggirello
wrote: installing modules into the docker image is not possible since the curl command is not part of the image. If I run $ docker run --rm --entrypoint "" contextgarden/context:lmtx /bin/sh -c "cd /context/tex/ && mtxrun --script install-module --install filter" Hi Marco,
I don't know who produces the contextgarden/context:lmtx build (presumably it's now part of the build farm?) but according to https://hub.docker.com/r/contextgarden/context it is supposed to have all modules already installed.
However, running
$ docker run --rm --entrypoint "" contextgarden/context:lmtx /bin/sh -c "cd /context/tex && mtxrun --script install-modules --installed"
suggests that there aren't any installed. So maybe Hans could prod whoever supports the build farm to look into it?
In the meantime, if you build your own container image using the Dockerfile on the Wiki https://wiki.contextgarden.net/Installing_ConTeXt_LMTX_into_a_Docker_contain... it is easy to include 'curl' - just add it after 'unzip' - however that doesn't seem to fix your problem since:
$ docker build -t context . $ docker run --rm --entrypoint "" context /bin/sh -c "cd /opt/context/tex/ && mtxrun --script install-module --install filter"
appears to do something and there is no obvious error message in the visible output, but
$ docker run --rm --entrypoint "" context /bin/sh -c "cd /opt/context/tex && mtxrun --script install-modules --installed"
shows that the filter module still wasn't installed.
Sorry I can't help you any further right now - I'm not familiar enough with the install script to be able to quickly zero in on the problem
Regards,
— Bruce Horrocks Hampshire, UK