Loading Makefile +1 −4 Original line number Diff line number Diff line IMAGES = base haskell-base texlive haskell-ib015 IMAGES = base texlive DOCKER ?= docker # the tag of the built images, that is basically their version TAG ?= v2022.0.1 Loading Loading @@ -39,9 +39,6 @@ ext/ciutils/makefilter : git submodule update -i --recursive # extra dependencies _stamps/build.texlive.$(TAG) : _stamps/build.base.$(TAG) _stamps/build.haskell-base.$(TAG) : _stamps/build.base.$(TAG) _stamps/build.haskell-ib015.$(TAG) : _stamps/build.haskell-base.$(TAG) _stamps/build.texlive.$(TAG) .PHONY: push all login $(IMAGES) haskell-base.Dockerfiledeleted 100644 → 0 +0 −40 Original line number Diff line number Diff line ARG DEBIAN_VERSION=latest ARG TAG=latest ARG PREFIX= FROM ${PREFIX}base:${TAG} as haskell-base ENV CABAL_VERSION=3.6 ENV GHC_92_VERSION=9.2.4 RUN echo 'deb http://downloads.haskell.org/debian bullseye main' > /etc/apt/sources.list.d/ghc.list \ && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA3CBA3FFE22B574 \ && apt-get update \ && apt-get install -y --no-install-recommends \ ghc-8.4.4 ghc-8.6.5 ghc-8.8.4 ghc-8.10.4 ghc-9.0.1 cabal-install-${CABAL_VERSION} \ hlint # GHC 9.2 is not in the packages :-/ RUN mkdir /tmp/GHC-${GHC_92_VERSION} \ cd /tmp/ghc-${GHC_92_VERSION} \ && wget https://downloads.haskell.org/~ghc/${GHC_92_VERSION}/ghc-${GHC_92_VERSION}-x86_64-deb10-linux.tar.xz \ && tar xaf ghc-${GHC_92_VERSION}*.tar.xz \ && cd ghc-${GHC_92_VERSION} \ && ./configure --prefix=/opt/ghc/${GHC_92_VERSION} \ && make install \ && cd / \ && rm -rf /tmp/ghc-9.2 \ && update-alternatives --install /opt/ghc/bin/ghc opt-ghc /opt/ghc/${GHC_92_VERSION}/bin/ghc-${GHC_92_VERSION} $(echo ${GHC_92_VERSION} | sed 's/[.]/0/g') \ --slave /opt/ghc/bin/ghci opt-ghci /opt/ghc/${GHC_92_VERSION}/bin/ghci-${GHC_92_VERSION} \ --slave /opt/ghc/bin/runghc opt-runghc /opt/ghc/${GHC_92_VERSION}/bin/runghc-${GHC_92_VERSION} \ --slave /opt/ghc/bin/ghc-pkg opt-ghc-pkg /opt/ghc/${GHC_92_VERSION}/bin/ghc-pkg-${GHC_92_VERSION} \ --slave /opt/ghc/bin/haddock opt-haddock /opt/ghc/${GHC_92_VERSION}/bin/haddock-ghc-${GHC_92_VERSION} ENV PATH /root/.cabal/bin:/root/.local/bin:/opt/ghc/bin:$PATH # update cabal here so that the package list is present in the image RUN cabal v2-update # validate RUN ghc --version && ghci --version && cabal --version CMD ["bash"] haskell-ib015.Dockerfiledeleted 100644 → 0 +0 −34 Original line number Diff line number Diff line ARG DEBIAN_VERSION=latest ARG TAG=latest ARG PREFIX= # the `COPY --from` cannot use variables so name it here FROM ${PREFIX}texlive:${TAG} as texlive FROM ${PREFIX}haskell-base:${TAG} as haskell-ib015 # here we also need TeXLive COPY --from=texlive /opt/texlive /opt/texlive 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 RUN apt-get install -y --no-install-recommends \ g++-10 # install dependencies for Haskell study materials RUN cabal v2-install pandoc RUN parallel "cabal v2-install --lib --with-ghc {} HUnit QuickCheck deepseq random printf-mauke aeson data-default-class text" \ ::: ghc-8.4.4 ghc-8.6.5 ghc-8.8.4 ghc-8.10.4 ghc-9.0.1 ghc RUN apt-get install -y --no-install-recommends \ fonts-lmodern pandoc-citeproc \ zip swi-prolog graphviz inkscape \ python3-pkg-resources python3-yaml python3-pip python3-setuptools \ python3-pygments rsync ssh ca-certificates \ libicu-dev libpoppler-glib-dev RUN pip3 install flake8 pylint pycodestyle mypy mypy-extensions pytest hypothesis RUN pytest --version && mypy --version && flake8 --version CMD ["bash"] Loading
Makefile +1 −4 Original line number Diff line number Diff line IMAGES = base haskell-base texlive haskell-ib015 IMAGES = base texlive DOCKER ?= docker # the tag of the built images, that is basically their version TAG ?= v2022.0.1 Loading Loading @@ -39,9 +39,6 @@ ext/ciutils/makefilter : git submodule update -i --recursive # extra dependencies _stamps/build.texlive.$(TAG) : _stamps/build.base.$(TAG) _stamps/build.haskell-base.$(TAG) : _stamps/build.base.$(TAG) _stamps/build.haskell-ib015.$(TAG) : _stamps/build.haskell-base.$(TAG) _stamps/build.texlive.$(TAG) .PHONY: push all login $(IMAGES)
haskell-base.Dockerfiledeleted 100644 → 0 +0 −40 Original line number Diff line number Diff line ARG DEBIAN_VERSION=latest ARG TAG=latest ARG PREFIX= FROM ${PREFIX}base:${TAG} as haskell-base ENV CABAL_VERSION=3.6 ENV GHC_92_VERSION=9.2.4 RUN echo 'deb http://downloads.haskell.org/debian bullseye main' > /etc/apt/sources.list.d/ghc.list \ && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA3CBA3FFE22B574 \ && apt-get update \ && apt-get install -y --no-install-recommends \ ghc-8.4.4 ghc-8.6.5 ghc-8.8.4 ghc-8.10.4 ghc-9.0.1 cabal-install-${CABAL_VERSION} \ hlint # GHC 9.2 is not in the packages :-/ RUN mkdir /tmp/GHC-${GHC_92_VERSION} \ cd /tmp/ghc-${GHC_92_VERSION} \ && wget https://downloads.haskell.org/~ghc/${GHC_92_VERSION}/ghc-${GHC_92_VERSION}-x86_64-deb10-linux.tar.xz \ && tar xaf ghc-${GHC_92_VERSION}*.tar.xz \ && cd ghc-${GHC_92_VERSION} \ && ./configure --prefix=/opt/ghc/${GHC_92_VERSION} \ && make install \ && cd / \ && rm -rf /tmp/ghc-9.2 \ && update-alternatives --install /opt/ghc/bin/ghc opt-ghc /opt/ghc/${GHC_92_VERSION}/bin/ghc-${GHC_92_VERSION} $(echo ${GHC_92_VERSION} | sed 's/[.]/0/g') \ --slave /opt/ghc/bin/ghci opt-ghci /opt/ghc/${GHC_92_VERSION}/bin/ghci-${GHC_92_VERSION} \ --slave /opt/ghc/bin/runghc opt-runghc /opt/ghc/${GHC_92_VERSION}/bin/runghc-${GHC_92_VERSION} \ --slave /opt/ghc/bin/ghc-pkg opt-ghc-pkg /opt/ghc/${GHC_92_VERSION}/bin/ghc-pkg-${GHC_92_VERSION} \ --slave /opt/ghc/bin/haddock opt-haddock /opt/ghc/${GHC_92_VERSION}/bin/haddock-ghc-${GHC_92_VERSION} ENV PATH /root/.cabal/bin:/root/.local/bin:/opt/ghc/bin:$PATH # update cabal here so that the package list is present in the image RUN cabal v2-update # validate RUN ghc --version && ghci --version && cabal --version CMD ["bash"]
haskell-ib015.Dockerfiledeleted 100644 → 0 +0 −34 Original line number Diff line number Diff line ARG DEBIAN_VERSION=latest ARG TAG=latest ARG PREFIX= # the `COPY --from` cannot use variables so name it here FROM ${PREFIX}texlive:${TAG} as texlive FROM ${PREFIX}haskell-base:${TAG} as haskell-ib015 # here we also need TeXLive COPY --from=texlive /opt/texlive /opt/texlive 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 RUN apt-get install -y --no-install-recommends \ g++-10 # install dependencies for Haskell study materials RUN cabal v2-install pandoc RUN parallel "cabal v2-install --lib --with-ghc {} HUnit QuickCheck deepseq random printf-mauke aeson data-default-class text" \ ::: ghc-8.4.4 ghc-8.6.5 ghc-8.8.4 ghc-8.10.4 ghc-9.0.1 ghc RUN apt-get install -y --no-install-recommends \ fonts-lmodern pandoc-citeproc \ zip swi-prolog graphviz inkscape \ python3-pkg-resources python3-yaml python3-pip python3-setuptools \ python3-pygments rsync ssh ca-certificates \ libicu-dev libpoppler-glib-dev RUN pip3 install flake8 pylint pycodestyle mypy mypy-extensions pytest hypothesis RUN pytest --version && mypy --version && flake8 --version CMD ["bash"]