@@ -15,33 +15,39 @@ ARG STACK_RELEASE_KEY=C5705533DA4F78D8664B5DC0575159689BEFB442
15
15
RUN set -eux; \
16
16
cd /tmp; \
17
17
ARCH="$(dpkg-architecture --query DEB_BUILD_GNU_CPU)" ; \
18
+ INSTALL_STACK="true" ; \
18
19
STACK_URL="https://github.com/commercialhaskell/stack/releases/download/v${STACK}/stack-${STACK}-linux-$ARCH.tar.gz" ; \
19
20
# sha256 from https://github.com/commercialhaskell/stack/releases/download/v${STACK}/stack-${STACK}-linux-$ARCH.tar.gz.sha256
20
21
case "$ARCH" in \
21
22
'aarch64' ) \
22
- STACK_SHA256='741cf6552adcd41ca0c38c4f03b1e8f244873d988f70ef5ed4b502c0df28ea5a' ; \
23
+ # Stack does not officially support ARM64, nor do the binaries that exist work.
24
+ # Hitting https://github.com/commercialhaskell/stack/issues/2103#issuecomment-972329065 when trying to use
25
+ # stack-2.7.1-linux-aarch64.tar.gz
26
+ INSTALL_STACK="false" ; \
23
27
;; \
24
28
'x86_64' ) \
25
29
STACK_SHA256='0581cebe880b8ed47556ee73d8bbb9d602b5b82e38f89f6aa53acaec37e7760d' ; \
26
30
;; \
27
31
*) echo >&2 "error: unsupported architecture '$ARCH'" ; exit 1 ;; \
28
32
esac; \
29
- curl -sSL "$STACK_URL" -o stack.tar.gz; \
30
- echo "$STACK_SHA256 stack.tar.gz" | sha256sum --strict --check; \
31
- \
32
- curl -sSL "$STACK_URL.asc" -o stack.tar.gz.asc; \
33
- GNUPGHOME="$(mktemp -d)" ; export GNUPGHOME; \
34
- gpg --batch --keyserver keyserver.ubuntu.com --receive-keys "$STACK_RELEASE_KEY" ; \
35
- gpg --batch --verify stack.tar.gz.asc stack.tar.gz; \
36
- gpgconf --kill all; \
37
- \
38
- tar -xf stack.tar.gz -C /usr/local/bin --strip-components=1 "stack-$STACK-linux-$ARCH/stack" ; \
39
- stack config set system-ghc --global true; \
40
- stack config set install-ghc --global false; \
41
- \
42
- rm -rf /tmp/*; \
43
- \
44
- stack --version
33
+ if [ "$INSTALL_STACK" = "true" ]; then \
34
+ curl -sSL "$STACK_URL" -o stack.tar.gz; \
35
+ echo "$STACK_SHA256 stack.tar.gz" | sha256sum --strict --check; \
36
+ \
37
+ curl -sSL "$STACK_URL.asc" -o stack.tar.gz.asc; \
38
+ GNUPGHOME="$(mktemp -d)" ; export GNUPGHOME; \
39
+ gpg --batch --keyserver keyserver.ubuntu.com --receive-keys "$STACK_RELEASE_KEY" ; \
40
+ gpg --batch --verify stack.tar.gz.asc stack.tar.gz; \
41
+ gpgconf --kill all; \
42
+ \
43
+ tar -xf stack.tar.gz -C /usr/local/bin --strip-components=1 "stack-$STACK-linux-$ARCH/stack" ; \
44
+ stack config set system-ghc --global true; \
45
+ stack config set install-ghc --global false; \
46
+ \
47
+ rm -rf /tmp/*; \
48
+ \
49
+ stack --version; \
50
+ fi
45
51
46
52
ARG CABAL_INSTALL=3.8.1.0
47
53
ARG CABAL_INSTALL_RELEASE_KEY=E9EC5616017C3EE26B33468CCE1ED8AE0B011D8C
0 commit comments