# debian.sh --arch 'amd64' out/ 'testing' '@1745798400' |
ENV LANG=C.UTF-8 LC_ALL=C.UTF-8 TEXLIVE_INSTALL_NO_CONTEXT_CACHE=1 NOPERLDOC=1 DEBIAN_FRONTEND=noninteractive |
RUN /bin/sh -c apt-get update && apt-get install -qy --no-install-recommends curl git unzip make fontconfig perl default-jre libgetopt-long-descriptive-perl libdigest-perl-md5-perl libncurses6 libunicode-linebreak-perl libfile-homedir-perl libyaml-tiny-perl ghostscript libsm6 python3 python3-pygments python-is-python3 gnuplot-nox libglut3.12 libtirpc3t64 && rm -rf /var/lib/apt/lists/* && rm -rf /var/cache/apt/ && export LIBDIR && LIBDIR="$(find /usr/lib -type d -name '*-linux-*')" && export BASELIBDIR && BASELIBDIR="$(basename "${LIBDIR}")" && ln -sf "/usr/lib/${BASELIBDIR}/libglut.so.3.12" "/usr/lib/${BASELIBDIR}/libglut.so.3" # buildkit |
RUN /bin/sh -c useradd -m -s /bin/bash texlive && chown -R texlive:texlive /home/texlive # buildkit |
LABEL org.opencontainers.image.authors=Island of TeX org.opencontainers.image.url=https://gitlab.com/islandoftex/images/texlive org.opencontainers.image.source=https://gitlab.com/islandoftex/images/texlive/-/blob/master/Dockerfile.base |
ARG DOCFILES=no |
ARG SRCFILES=no |
ARG SCHEME=medium |
ARG TLMIRRORURL=rsync://rsync.dante.ctan.org/CTAN/systems/texlive/tlnet/ |
ARG GENERATE_CACHES=yes |
ENV DEBIAN_FRONTEND=noninteractive |
WORKDIR /tmp |
RUN |5 DOCFILES=no SRCFILES=no SCHEME=medium TLMIRRORURL=rsync://rsync.dante.ctan.org/CTAN/systems/texlive/tlnet/ GENERATE_CACHES=yes /bin/sh -c curl https://tug.org/texlive/files/debian-equivs-2023-ex.txt --output texlive-local && sed -i "s/2023/9999/" texlive-local && apt-get update && apt-get install -qy --no-install-recommends equivs gpg gpg-agent rsync libcurl4t64 && equivs-build texlive-local && dpkg -i texlive-local_9999.99999999-1_all.deb && apt-get install -qyf --no-install-recommends && rm -rf ./*texlive* && apt-get remove -y --purge equivs && apt-get autoremove -qy --purge && rm -rf /var/lib/apt/lists/* && apt-get clean && rm -rf /var/cache/apt/ # buildkit |
RUN |5 DOCFILES=no SRCFILES=no SCHEME=medium TLMIRRORURL=rsync://rsync.dante.ctan.org/CTAN/systems/texlive/tlnet/ GENERATE_CACHES=yes /bin/sh -c echo "Fetching installation from mirror $TLMIRRORURL" && rsync -a --stats "$TLMIRRORURL" texlive && cd texlive && echo "Building with documentation: $DOCFILES" && echo "Building with sources: $SRCFILES" && echo "Building with scheme: $SCHEME" && echo "selected_scheme scheme-$SCHEME" > install.profile && if [ "$DOCFILES" = "no" ]; then echo "tlpdbopt_install_docfiles 0" >> install.profile && echo "BUILD: Disabling documentation files"; fi && if [ "$SRCFILES" = "no" ]; then echo "tlpdbopt_install_srcfiles 0" >> install.profile && echo "BUILD: Disabling source files"; fi && echo "tlpdbopt_autobackup 0" >> install.profile && echo "tlpdbopt_sys_bin /usr/bin" >> install.profile && ./install-tl -profile install.profile && cd .. && rm -rf texlive # buildkit |
WORKDIR /workdir |
RUN |5 DOCFILES=no SRCFILES=no SCHEME=medium TLMIRRORURL=rsync://rsync.dante.ctan.org/CTAN/systems/texlive/tlnet/ GENERATE_CACHES=yes /bin/sh -c echo "Set PATH to $PATH" && $(find /usr/local/texlive -name tlmgr) path add && if [ "${TLMIRRORURL#*pretest}" != "$TLMIRRORURL" ]; then tlmgr option repository "$TLMIRRORURL"; fi && (sed -i '/package.loaded\["data-ini"\]/a if os.selfpath then environment.ownbin=lfs.symlinktarget(os.selfpath..io.fileseparator..os.selfname);environment.ownpath=environment.ownbin:match("^.*"..io.fileseparator) else environment.ownpath=kpse.new("luatex"):var_value("SELFAUTOLOC");environment.ownbin=environment.ownpath..io.fileseparator..(arg[-2] or arg[-1] or arg[0] or "luatex"):match("[^"..io.fileseparator.."]*$") end' /usr/bin/mtxrun.lua || true) && if [ "$GENERATE_CACHES" = "yes" ]; then echo "Generating caches and ConTeXt files" && (luaotfload-tool -u || true) && (cp "$(find /usr/local/texlive -name texlive-fontconfig.conf)" /etc/fonts/conf.d/09-texlive-fonts.conf || true) && fc-cache -fsv && if [ -f "/usr/bin/context" ]; then mtxrun --generate && texlua /usr/bin/mtxrun.lua --luatex --generate && context --make && context --luatex --make; fi else echo "Not generating caches or ConTeXt files"; fi # buildkit |
RUN |5 DOCFILES=no SRCFILES=no SCHEME=medium TLMIRRORURL=rsync://rsync.dante.ctan.org/CTAN/systems/texlive/tlnet/ GENERATE_CACHES=yes /bin/sh -c if [ "$SCHEME" = "full" ]; then latex --version && printf '\n' && biber --version && printf '\n' && xindy --version && printf '\n' && arara --version && printf '\n' && context --version && printf '\n' && context --luatex --version && printf '\n' && asy --version && printf '\n' && if [ "$DOCFILES" = "yes" ]; then texdoc -l geometry; fi && if [ "$SRCFILES" = "yes" ]; then kpsewhich amsmath.dtx; fi; fi && python --version && printf '\n' && pygmentize -V && printf '\n' # buildkit |
LABEL org.opencontainers.image.authors=Island of TeX org.opencontainers.image.url=https://gitlab.com/islandoftex/images/texlive org.opencontainers.image.source=https://gitlab.com/islandoftex/images/texlive/-/blob/master/Dockerfile |
RUN /bin/sh -c apt update && apt install nodejs -y && apt clean -y && tlmgr update --self && tlmgr update --all && tlmgr install europecv guitlogo ucs # buildkit |