1
1
mirror of https://github.com/anoma/juvix.git synced 2024-12-11 08:25:46 +03:00
juvix/docker/Dockerfile-ghc-alpine-9.2.5
janmasrovira 2db738a76f
Upgrade stack snapshot to use ghc-9.2.5 (#1621)
* upgrade stack snapshot to use ghc-9.2.5

* use lts-20.2

* Update alpine GHC Dockerfile to 9.2.5

We also build the Juvix runtime before the stack build in the
linux-static-binary workflow file.

* Add some documentation on how to build and deploy the alpine GHC image

* Docker documentation clarification.

Co-authored-by: Paul Cadman <git@paulcadman.dev>
2022-12-02 10:04:56 +01:00

31 lines
994 B
Groff

FROM alpine:3.12
RUN apk upgrade --no-cache &&\
apk add --no-cache curl gcc g++ gmp-dev ncurses-dev libffi-dev make xz gzip tar perl git bash sudo binutils-gold lld &&\
apk add --no-cache zlib zlib-dev zlib-static gmp gmp-dev ncurses-static xz
RUN curl https://downloads.haskell.org/~ghc/8.10-latest/ghc-8.10.2-x86_64-alpine3.10-linux-integer-simple.tar.xz -OL
RUN tar xf ghc-8.10.2-x86_64-alpine3.10-linux-integer-simple.tar.xz
RUN cd ghc-8.10.2-x86_64-unknown-linux && ./configure --prefix /opt && make install
RUN curl https://downloads.haskell.org/~ghc/9.2.5/ghc-9.2.5-src.tar.xz -OL
RUN tar xf ghc-9.2.5-src.tar.xz
WORKDIR /ghc-9.2.5
RUN GHC=/opt/bin/ghc ./configure --prefix /usr/local
RUN make -j
RUN make install
RUN apk add --no-cache clang llvm
WORKDIR /
RUN curl https://github.com/commercialhaskell/stack/releases/download/v2.9.1/stack-2.9.1-linux-x86_64.tar.gz -OL
RUN tar xf stack-2.9.1-linux-x86_64.tar.gz
RUN cp stack-2.9.1-linux-x86_64/stack /usr/local/bin