31 lines
1.1 KiB
Docker
31 lines
1.1 KiB
Docker
FROM alpine:3.17 AS build
|
|
|
|
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 b89bc55867d7cb809c379d371d12d409db785154 && 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/ /
|