blob: 326f17f703da4152d33a2f6d683c59e4783e540d [file] [log] [blame]
FROM manibase
RUN \
useradd -p locked -m mani && \
if [ -f /etc/apt/sources.list.d/ubuntu.sources ]; then \
true; \
elif grep -q main /etc/apt/sources.list; then \
if ! grep -q universe /etc/apt/sources.list; then \
sed -i -e 's/ main$/ main universe/' \
/etc/apt/sources.list || exit 1; \
fi; \
else \
url="http://ports.ubuntu.com/" && \
cn="$(sed -ne's/DISTRIB_CODENAME=//p' /etc/lsb-release)" && \
for t in "" "-updates" "-security"; do \
echo "deb ${url} ${cn}${t} main universe" \
>>/etc/apt/sources.list || exit 1; \
done; \
fi && \
apt-get -qq update && \
apt-get -qq upgrade && \
apt-get -qqy install gcc make git doxygen ccache pkg-config meson \
libpci-dev libftdi1-dev libusb-1.0-0-dev && \
{ apt-get -qqy install libjaylink-dev libgpiod-dev || true; } && \
apt-get clean
RUN mkdir -p -m 1777 /ccache
ENV GIT_SSL_NO_VERIFY=1
USER mani
ARG ORIGIN=https://review.sourcearcade.org/flashprog.git
RUN \
cd && \
mkdir .ccache && chown mani:mani .ccache && \
git clone ${ORIGIN} flashprog
ARG IDENT=mani
ARG CCACHE_MAX=32M
RUN \
ccache --set-config cache_dir=/ccache/${IDENT} && \
ccache --set-config max_size=${CCACHE_MAX}
ENV DEVSHELL /bin/bash
COPY mani-wrapper.sh /home/mani/
ENTRYPOINT ["/bin/sh", "/home/mani/mani-wrapper.sh"]