FROM alpine AS builder
WORKDIR /build
COPY --exclude=bin/ . .
RUN apk add --no-cache sbcl curl
RUN { curl 'https://beta.quicklisp.org/quicklisp.lisp' \
    ; echo '(in-package #:cl-user)' \
    ; echo '(quicklisp-quickstart:install :path "/quicklisp/")' \
    ; echo '(ql-dist:install-dist "http://dist.shirakumo.org/shirakumo.txt" :prompt NIL)' \
    ; echo '(push #p"/build/" ql:*local-project-directories*)' \
    ; echo '(ql:quickload :native-repl/exe)' \
    ; }| sbcl --disable-ldb --lose-on-corruption --disable-debugger
RUN { echo '(load "/quicklisp/setup.lisp")' \
    ; echo '(push #p"/build/" ql:*local-project-directories*)' \
    ; echo '(asdf:make :native-repl)' \
    ; }| sbcl --disable-ldb --lose-on-corruption --disable-debugger

FROM alpine
RUN apk add --no-cache zstd-libs
COPY --from=builder /build/bin/repl.run /bin/repl
ENTRYPOINT /bin/repl
