|
1 | | -FROM ubuntu:jammy |
| 1 | +FROM ghcr.io/yitzchak/archlinux-makepkg:latest |
2 | 2 |
|
3 | | -SHELL ["/bin/bash", "-c"] |
| 3 | +RUN sudo pacman-key --init && \ |
| 4 | + sudo pacman -Syu --noconfirm sbcl |
4 | 5 |
|
5 | | -ARG D_USER=app |
6 | | -ARG D_UID=1000 |
| 6 | +RUN git clone https://aur.archlinux.org/clasp-cl.git && \ |
| 7 | + cd clasp-cl && \ |
| 8 | + makepkg --noconfirm --syncdeps --install --nocheck && \ |
| 9 | + cd .. && \ |
| 10 | + rm -rf clasp-cl |
7 | 11 |
|
8 | | -ENV DEBIAN_FRONTEND=noninteractive |
9 | | -ENV USER ${D_USER} |
10 | | -ENV HOME /home/${D_USER} |
11 | | -ENV PATH "${HOME}/.local/bin:${PATH}" |
| 12 | +USER root |
| 13 | +WORKDIR /root |
12 | 14 |
|
13 | | -RUN apt-get update && \ |
14 | | - apt-get dist-upgrade -y && \ |
15 | | - apt-get install -o Dpkg::Options::="--force-overwrite" -y \ |
16 | | - nano wget sudo ecl sbcl git locales curl && \ |
17 | | - bash -c "$(curl -fsSL https://www.thirdlaw.tech/pkg/clasp.sh)" |
| 15 | +ENV XDG_CONFIG_HOME=/root/.config |
| 16 | +ENV XDG_DATA_HOME=/root/.local/share |
| 17 | +ENV XDG_CACHE_HOME=/root/.cache |
18 | 18 |
|
19 | | -RUN echo 'en_US.UTF-8 UTF-8' >/etc/locale.gen |
20 | | -RUN sudo -E locale-gen |
21 | | - |
22 | | -RUN useradd --create-home --shell=/bin/false --uid=${D_UID} ${D_USER} && \ |
23 | | - usermod -aG sudo $D_USER && \ |
24 | | - passwd -d $D_USER |
25 | | - |
26 | | -WORKDIR ${HOME} |
27 | | -USER ${D_USER} |
28 | | - |
29 | | -RUN wget https://beta.quicklisp.org/quicklisp.lisp && \ |
| 19 | +RUN curl -kLO https://beta.quicklisp.org/quicklisp.lisp && \ |
30 | 20 | sbcl --non-interactive --load quicklisp.lisp --eval "(quicklisp-quickstart:install)" --eval "(ql-util:without-prompting (ql:add-to-init-file))" && \ |
31 | | - rm quicklisp.lisp && \ |
32 | | - ecl --load ~/quicklisp/setup.lisp --eval "(ql-util:without-prompting (ql:add-to-init-file))" --eval "(quit)" && \ |
33 | | - clasp --non-interactive --load ~/quicklisp/setup.lisp git --eval "(ql-util:without-prompting (ql:add-to-init-file))" |
| 21 | + clasp --non-interactive --load ~/quicklisp/setup.lisp --eval "(ql-util:without-prompting (ql:add-to-init-file))" && \ |
| 22 | + rm quicklisp.lisp |
| 23 | + |
0 commit comments