diff --git a/docker/organic_test/Dockerfile b/docker/organic_test/Dockerfile index 392a005..f6964ad 100644 --- a/docker/organic_test/Dockerfile +++ b/docker/organic_test/Dockerfile @@ -1,4 +1,30 @@ -FROM rustlang/rust:nightly-alpine3.17 +FROM alpine:3.17 AS build -RUN apk add --no-cache musl-dev emacs +RUN apk add --no-cache build-base musl-dev git autoconf make texinfo gnutls-dev ncurses-dev gawk + + +FROM build AS build-emacs + +RUN git clone --depth 1 --branch emacs-29.1 https://git.savannah.gnu.org/git/emacs.git /root/emacs +WORKDIR /root/emacs +RUN mkdir /root/dist +RUN ./autogen.sh +RUN ./configure --prefix /usr --without-x --without-sound +RUN make +RUN make DESTDIR="/root/dist" install + + +FROM build AS build-org-mode +COPY --from=build-emacs /root/dist/ / +RUN mkdir /root/dist +RUN mkdir /root/org-mode && git -C /root/org-mode init && git -C /root/org-mode remote add origin https://git.savannah.gnu.org/git/emacs/org-mode.git && git -C /root/org-mode fetch origin 70a082c9fbf6fd7d05fb56b26c6f2039b8edd478 && git -C /root/org-mode checkout FETCH_HEAD +WORKDIR /root/org-mode +RUN make compile +RUN make DESTDIR="/root/dist" install + + +FROM rustlang/rust:nightly-alpine3.17 +RUN apk add --no-cache musl-dev ncurses gnutls RUN cargo install --locked --no-default-features --features ci-autoclean cargo-cache +COPY --from=build-emacs /root/dist/ / +COPY --from=build-org-mode /root/dist/ /