11FROM debian:stable-slim as builder
2- ARG CABAL_VERSION=3.6.2 .0
2+ ARG CABAL_VERSION=3.8.1 .0
33ARG GHC_VERSION=8.10.7
4+ ARG LIBSODIUM_REF=dbb48cce
5+ ARG SECP256K1_REF=ac83be33
46
57WORKDIR /code
68
@@ -30,6 +32,15 @@ RUN apt-get update -y && \
3032 libtool \
3133 autoconf
3234
35+ # GHC
36+ ENV GHC_VERSION=${GHC_VERSION}
37+ RUN wget https://downloads.haskell.org/~ghc/${GHC_VERSION}/ghc-${GHC_VERSION}-$(uname -m)-deb10-linux.tar.xz \
38+ && tar -xf ghc-${GHC_VERSION}-$(uname -m)-deb10-linux.tar.xz \
39+ && rm ghc-${GHC_VERSION}-$(uname -m)-deb10-linux.tar.xz \
40+ && cd ghc-${GHC_VERSION} \
41+ && ./configure \
42+ && make install
43+
3344# cabal
3445ENV CABAL_VERSION=${CABAL_VERSION}
3546ENV PATH="/root/.cabal/bin:/root/.ghcup/bin:/root/.local/bin:$PATH"
@@ -40,19 +51,10 @@ RUN wget https://downloads.haskell.org/~cabal/cabal-install-${CABAL_VERSION}/cab
4051 && mv cabal ~/.local/bin/ \
4152 && cabal update && cabal --version
4253
43- # GHC
44- ENV GHC_VERSION=${GHC_VERSION}
45- RUN wget https://downloads.haskell.org/~ghc/${GHC_VERSION}/ghc-${GHC_VERSION}-$(uname -m)-deb10-linux.tar.xz \
46- && tar -xf ghc-${GHC_VERSION}-$(uname -m)-deb10-linux.tar.xz \
47- && rm ghc-${GHC_VERSION}-$(uname -m)-deb10-linux.tar.xz \
48- && cd ghc-${GHC_VERSION} \
49- && ./configure \
50- && make install
51-
5254# Libsodium
5355RUN git clone https://github.com/input-output-hk/libsodium && \
5456 cd libsodium && \
55- git checkout dbb48cce && \
57+ git checkout ${LIBSODIUM_REF} && \
5658 ./autogen.sh && \
5759 ./configure && \
5860 make && \
@@ -63,7 +65,7 @@ ENV PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
6365# secp256k1
6466RUN git clone https://github.com/bitcoin-core/secp256k1 && \
6567 cd secp256k1 && \
66- git checkout ac83be33 && \
68+ git checkout ${SECP256K1_REF} && \
6769 ./autogen.sh && \
6870 ./configure --enable-module-schnorrsig --enable-experimental && \
6971 make && \
0 commit comments