-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
64 lines (53 loc) · 2.59 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
FROM ghcr.io/yitzchak/archlinux-makepkg:latest
RUN sudo pacman-key --init && \
echo -e "[multilib]\nInclude = /etc/pacman.d/mirrorlist" | sudo tee --append /etc/pacman.conf && \
sudo pacman -Syu --noconfirm cmucl sbcl lib32-gcc-libs openssl-1.1
RUN git clone https://aur.archlinux.org/clasp-cl-git.git && \
cd clasp-cl-git && \
makepkg --noconfirm --syncdeps --install --nocheck && \
cd .. && \
rm -rf clasp-cl-git
RUN git clone https://aur.archlinux.org/ccl.git && \
cd ccl && \
makepkg --noconfirm --syncdeps --install --nocheck && \
cd .. && \
rm -rf ccl
RUN git clone https://aur.archlinux.org/clisp-git.git && \
cd clisp-git && \
makepkg --noconfirm --syncdeps --install --nocheck && \
cd .. && \
rm -rf clisp-git
RUN git clone https://aur.archlinux.org/abcl-git.git && \
cd abcl-git && \
makepkg --noconfirm --syncdeps --install --nocheck && \
cd .. && \
rm -rf abcl-git
RUN git clone https://aur.archlinux.org/mkcl-git.git && \
cd mkcl-git && \
makepkg --noconfirm --syncdeps --install --nocheck && \
cd .. && \
rm -rf mkcl-git
RUN git clone https://aur.archlinux.org/ecl-git.git && \
cd ecl-git && \
makepkg --noconfirm --syncdeps --install --nocheck && \
cd .. && \
rm -rf ecl-git
USER root
WORKDIR /root
ENV XDG_CONFIG_HOME=/root/.config
ENV XDG_DATA_HOME=/root/.local/share
ENV XDG_CACHE_HOME=/root/.cache
RUN curl -kLO https://beta.quicklisp.org/quicklisp.lisp && \
sbcl --non-interactive --load quicklisp.lisp --eval "(quicklisp-quickstart:install)" --eval "(ql-util:without-prompting (ql:add-to-init-file))" && \
abcl --load ~/quicklisp/setup.lisp --eval "(ql-util:without-prompting (ql:add-to-init-file))" --eval "(ext:quit)" && \
ccl --load ~/quicklisp/setup.lisp --eval "(ql-util:without-prompting (ql:add-to-init-file))" --eval "(quit)" && \
clasp --non-interactive --load ~/quicklisp/setup.lisp --eval "(ql-util:without-prompting (ql:add-to-init-file))" && \
clisp -i ~/quicklisp/setup.lisp -x "(ql-util:without-prompting (ql:add-to-init-file))" && \
cmucl -load ~/quicklisp/setup.lisp -eval "(ql-util:without-prompting (ql:add-to-init-file))" --eval "(quit)" && \
ecl --load ~/quicklisp/setup.lisp --eval "(ql-util:without-prompting (ql:add-to-init-file))" --eval "(ext:quit)" && \
mkcl -load ~/quicklisp/setup.lisp -eval "(ql-util:without-prompting (ql:add-to-init-file))" -eval "(quit)" && \
rm quicklisp.lisp && \
mkdir -p ~/.config/common-lisp/source-registry.conf.d
COPY asdf-add /usr/local/bin/asdf-add
COPY make-rc /usr/local/bin/make-rc
COPY lisp /usr/local/bin/lisp