1
1
FROM debian:stable-slim as builder
2
- ARG CABAL_VERSION=3.6.2 .0
2
+ ARG CABAL_VERSION=3.8.1 .0
3
3
ARG GHC_VERSION=8.10.7
4
+ ARG LIBSODIUM_REF=dbb48cce
5
+ ARG SECP256K1_REF=ac83be33
4
6
5
7
WORKDIR /code
6
8
@@ -30,6 +32,15 @@ RUN apt-get update -y && \
30
32
libtool \
31
33
autoconf
32
34
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
+
33
44
# cabal
34
45
ENV CABAL_VERSION=${CABAL_VERSION}
35
46
ENV 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
40
51
&& mv cabal ~/.local/bin/ \
41
52
&& cabal update && cabal --version
42
53
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
-
52
54
# Libsodium
53
55
RUN git clone https://github.com/input-output-hk/libsodium && \
54
56
cd libsodium && \
55
- git checkout dbb48cce && \
57
+ git checkout ${LIBSODIUM_REF} && \
56
58
./autogen.sh && \
57
59
./configure && \
58
60
make && \
@@ -63,7 +65,7 @@ ENV PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
63
65
# secp256k1
64
66
RUN git clone https://github.com/bitcoin-core/secp256k1 && \
65
67
cd secp256k1 && \
66
- git checkout ac83be33 && \
68
+ git checkout ${SECP256K1_REF} && \
67
69
./autogen.sh && \
68
70
./configure --enable-module-schnorrsig --enable-experimental && \
69
71
make && \
0 commit comments