Loading Dockerfile +34 −28 Original line number Diff line number Diff line FROM debian:bullseye FROM debian:buster # The following originates from the 'haskell-8.6.5' Dockerfile ENV LANG C.UTF-8 ENV DEBIAN_FRONTEND noninteractive RUN apt-get update && \ apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git RUN echo 'deb http://downloads.haskell.org/debian stretch main' > /etc/apt/sources.list.d/ghc.list && \ apt-get install -y --no-install-recommends \ gnupg ca-certificates dirmngr curl git apt-utils \ zlib1g-dev libtinfo-dev libsqlite3-dev g++ netbase xz-utils make locales wget RUN echo 'deb http://downloads.haskell.org/debian buster main' > /etc/apt/sources.list.d/ghc.list && \ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA3CBA3FFE22B574 && \ apt-get update RUN apt-get install -y --no-install-recommends \ zlib1g-dev libtinfo-dev libsqlite3-dev g++ netbase xz-utils make locales RUN apt-get install -y --no-install-recommends \ ghc-8.4.4 ghc-8.6.5 ghc-8.8.3 ghc-8.10.1 cabal-install-3.2 RUN curl -fSL https://github.com/commercialhaskell/stack/releases/download/v1.9.3/stack-1.9.3-linux-x86_64.tar.gz -o stack.tar.gz && \ curl -fSL https://github.com/commercialhaskell/stack/releases/download/v1.9.3/stack-1.9.3-linux-x86_64.tar.gz.asc -o stack.tar.gz.asc && \ export GNUPGHOME="$(mktemp -d)" && \ gpg --batch --keyserver ha.pool.sks-keyservers.net --recv-keys C5705533DA4F78D8664B5DC0575159689BEFB442 && \ gpg --batch --verify stack.tar.gz.asc stack.tar.gz && \ tar -xf stack.tar.gz -C /usr/local/bin --strip-components=1 && \ /usr/local/bin/stack config set system-ghc --global true && \ /usr/local/bin/stack config set install-ghc --global false && \ rm -rf "$GNUPGHOME" /var/lib/apt/lists/* /stack.tar.gz.asc /stack.tar.gz ENV PATH /root/.cabal/bin:/root/.local/bin:/opt/cabal/3.2/bin:/opt/ghc/8.10.1/bin:$PATH:/opt/ghc/8.8.3/bin:/opt/ghc/8.6.5/bin:/opt/ghc/8.4.4/bin RUN ghc --version && ghci --version RUN echo "Europe/Prague" > /etc/timezone && \ unlink /etc/localtime && \ Loading @@ -34,26 +27,39 @@ RUN echo "Europe/Prague" > /etc/timezone && \ ENV LANG en_US.UTF-8 RUN cabal v1-update && cabal v1-install pandoc-2.10 QuickCheck HUnit data-default-class # New TeX Live COPY texlive.profile /root/texlive.profile RUN cd /root && \ wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz && \ tar xaf install-tl-unx.tar.gz && \ cd install-tl-* && \ ./install-tl --profile=/root/texlive.profile RUN ls /opt/texlive/bin/x86_64-linux ENV PATH /opt/texlive/bin/x86_64-linux:$PATH ENV MANPATH /opt/texlive/texmf-dist/doc/man:$MANPATH ENV INFOPATH /opt/texlive/texmf-dist/doc/info:$INFOPATH RUN pdflatex --version && lualatex --version && context --version && latexmk --version # install dependencies for Haskell study materials RUN cabal v1-update && cabal v1-install pandoc-2.10 QuickCheck HUnit data-default-class RUN for GHC in ghc-8.4.4 ghc-8.6.5 ghc-8.8.3 ghc-8.10.1; do cabal v1-install --with-ghc $GHC HUnit QuickCheck; done RUN apt-get update && \ apt-get install -y --no-install-recommends \ texlive texlive-publishers texlive-lang-czechslovak texlive-pictures \ texlive-fonts-extra texlive-xetex fonts-liberation texlive-science \ texlive-plain-generic texlive-latex-extra texlive-latex-recommended \ lmodern latexmk make rubber \ hlint zip swi-prolog graphviz inkscape \ dot2tex python3-pkg-resources python3-yaml python3-pip pandoc-citeproc \ python3-pygments rsync ssh ca-certificates wget \ fonts-lmodern make rubber pandoc-citeproc \ hlint zip swi-prolog graphviz inkscape dot2tex \ python3-pkg-resources python3-yaml python3-pip python3-setuptools \ python3-pygments rsync ssh ca-certificates \ libicu-dev context texlive-font-utils \ python3-hypothesis python3-pytest flake8 mypy python3-mypy-extensions libpoppler-glib-dev # make ConTeXt work RUN fmtutil -sys --all RUN pip3 install flake8 pylint pycodestyle mypy mypy-extensions pytest hypothesis RUN pytest --version && mypy --version && flake8 --version # for the sake of minted and other stupid programs that expect python to exist RUN ln -s /usr/bin/python3 /usr/bin/python # needed on bullseye and newer # RUN ln -s /usr/bin/python3 /usr/bin/python RUN ls -l /usr/bin/python CMD ["bash"] Makefile +1 −1 Original line number Diff line number Diff line DOCKER = docker IMAGE = haskell-ib015 TAG = v2020.0.1 TAG = v2020.1.0 -include local.make Loading texlive.profile 0 → 100644 +27 −0 Original line number Diff line number Diff line selected_scheme scheme-full TEXDIR /opt/texlive/ TEXMFCONFIG ~/.texlive/texmf-config TEXMFHOME ~/texmf TEXMFLOCAL /opt/texlive/texmf-local TEXMFSYSCONFIG /opt/texlive/texmf-config TEXMFSYSVAR /opt/texlive/texmf-var TEXMFVAR ~/.texlive/texmf-var binary_x86_64-linux 1 instopt_adjustpath 0 instopt_adjustrepo 1 instopt_letter 0 instopt_portable 0 instopt_write18_restricted 1 tlpdbopt_autobackup 1 tlpdbopt_backupdir tlpkg/backups tlpdbopt_create_formats 1 tlpdbopt_desktop_integration 1 tlpdbopt_file_assocs 1 tlpdbopt_generate_updmap 0 tlpdbopt_install_docfiles 1 tlpdbopt_install_srcfiles 1 tlpdbopt_post_code 1 tlpdbopt_sys_bin /usr/local/bin tlpdbopt_sys_info /usr/local/info tlpdbopt_sys_man /usr/local/man tlpdbopt_w32_multi_user 1 Loading
Dockerfile +34 −28 Original line number Diff line number Diff line FROM debian:bullseye FROM debian:buster # The following originates from the 'haskell-8.6.5' Dockerfile ENV LANG C.UTF-8 ENV DEBIAN_FRONTEND noninteractive RUN apt-get update && \ apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git RUN echo 'deb http://downloads.haskell.org/debian stretch main' > /etc/apt/sources.list.d/ghc.list && \ apt-get install -y --no-install-recommends \ gnupg ca-certificates dirmngr curl git apt-utils \ zlib1g-dev libtinfo-dev libsqlite3-dev g++ netbase xz-utils make locales wget RUN echo 'deb http://downloads.haskell.org/debian buster main' > /etc/apt/sources.list.d/ghc.list && \ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA3CBA3FFE22B574 && \ apt-get update RUN apt-get install -y --no-install-recommends \ zlib1g-dev libtinfo-dev libsqlite3-dev g++ netbase xz-utils make locales RUN apt-get install -y --no-install-recommends \ ghc-8.4.4 ghc-8.6.5 ghc-8.8.3 ghc-8.10.1 cabal-install-3.2 RUN curl -fSL https://github.com/commercialhaskell/stack/releases/download/v1.9.3/stack-1.9.3-linux-x86_64.tar.gz -o stack.tar.gz && \ curl -fSL https://github.com/commercialhaskell/stack/releases/download/v1.9.3/stack-1.9.3-linux-x86_64.tar.gz.asc -o stack.tar.gz.asc && \ export GNUPGHOME="$(mktemp -d)" && \ gpg --batch --keyserver ha.pool.sks-keyservers.net --recv-keys C5705533DA4F78D8664B5DC0575159689BEFB442 && \ gpg --batch --verify stack.tar.gz.asc stack.tar.gz && \ tar -xf stack.tar.gz -C /usr/local/bin --strip-components=1 && \ /usr/local/bin/stack config set system-ghc --global true && \ /usr/local/bin/stack config set install-ghc --global false && \ rm -rf "$GNUPGHOME" /var/lib/apt/lists/* /stack.tar.gz.asc /stack.tar.gz ENV PATH /root/.cabal/bin:/root/.local/bin:/opt/cabal/3.2/bin:/opt/ghc/8.10.1/bin:$PATH:/opt/ghc/8.8.3/bin:/opt/ghc/8.6.5/bin:/opt/ghc/8.4.4/bin RUN ghc --version && ghci --version RUN echo "Europe/Prague" > /etc/timezone && \ unlink /etc/localtime && \ Loading @@ -34,26 +27,39 @@ RUN echo "Europe/Prague" > /etc/timezone && \ ENV LANG en_US.UTF-8 RUN cabal v1-update && cabal v1-install pandoc-2.10 QuickCheck HUnit data-default-class # New TeX Live COPY texlive.profile /root/texlive.profile RUN cd /root && \ wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz && \ tar xaf install-tl-unx.tar.gz && \ cd install-tl-* && \ ./install-tl --profile=/root/texlive.profile RUN ls /opt/texlive/bin/x86_64-linux ENV PATH /opt/texlive/bin/x86_64-linux:$PATH ENV MANPATH /opt/texlive/texmf-dist/doc/man:$MANPATH ENV INFOPATH /opt/texlive/texmf-dist/doc/info:$INFOPATH RUN pdflatex --version && lualatex --version && context --version && latexmk --version # install dependencies for Haskell study materials RUN cabal v1-update && cabal v1-install pandoc-2.10 QuickCheck HUnit data-default-class RUN for GHC in ghc-8.4.4 ghc-8.6.5 ghc-8.8.3 ghc-8.10.1; do cabal v1-install --with-ghc $GHC HUnit QuickCheck; done RUN apt-get update && \ apt-get install -y --no-install-recommends \ texlive texlive-publishers texlive-lang-czechslovak texlive-pictures \ texlive-fonts-extra texlive-xetex fonts-liberation texlive-science \ texlive-plain-generic texlive-latex-extra texlive-latex-recommended \ lmodern latexmk make rubber \ hlint zip swi-prolog graphviz inkscape \ dot2tex python3-pkg-resources python3-yaml python3-pip pandoc-citeproc \ python3-pygments rsync ssh ca-certificates wget \ fonts-lmodern make rubber pandoc-citeproc \ hlint zip swi-prolog graphviz inkscape dot2tex \ python3-pkg-resources python3-yaml python3-pip python3-setuptools \ python3-pygments rsync ssh ca-certificates \ libicu-dev context texlive-font-utils \ python3-hypothesis python3-pytest flake8 mypy python3-mypy-extensions libpoppler-glib-dev # make ConTeXt work RUN fmtutil -sys --all RUN pip3 install flake8 pylint pycodestyle mypy mypy-extensions pytest hypothesis RUN pytest --version && mypy --version && flake8 --version # for the sake of minted and other stupid programs that expect python to exist RUN ln -s /usr/bin/python3 /usr/bin/python # needed on bullseye and newer # RUN ln -s /usr/bin/python3 /usr/bin/python RUN ls -l /usr/bin/python CMD ["bash"]
Makefile +1 −1 Original line number Diff line number Diff line DOCKER = docker IMAGE = haskell-ib015 TAG = v2020.0.1 TAG = v2020.1.0 -include local.make Loading
texlive.profile 0 → 100644 +27 −0 Original line number Diff line number Diff line selected_scheme scheme-full TEXDIR /opt/texlive/ TEXMFCONFIG ~/.texlive/texmf-config TEXMFHOME ~/texmf TEXMFLOCAL /opt/texlive/texmf-local TEXMFSYSCONFIG /opt/texlive/texmf-config TEXMFSYSVAR /opt/texlive/texmf-var TEXMFVAR ~/.texlive/texmf-var binary_x86_64-linux 1 instopt_adjustpath 0 instopt_adjustrepo 1 instopt_letter 0 instopt_portable 0 instopt_write18_restricted 1 tlpdbopt_autobackup 1 tlpdbopt_backupdir tlpkg/backups tlpdbopt_create_formats 1 tlpdbopt_desktop_integration 1 tlpdbopt_file_assocs 1 tlpdbopt_generate_updmap 0 tlpdbopt_install_docfiles 1 tlpdbopt_install_srcfiles 1 tlpdbopt_post_code 1 tlpdbopt_sys_bin /usr/local/bin tlpdbopt_sys_info /usr/local/info tlpdbopt_sys_man /usr/local/man tlpdbopt_w32_multi_user 1