summaryrefslogtreecommitdiffstats
path: root/molecule/archlinux/Dockerfile.j2
blob: fd6791e700634036dab9461fa061db5247331253 (plain) (blame)
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
FROM docker.io/library/archlinux

ENV container docker

# pacman's syscall sandbox (alpm) doesn't work under QEMU user-mode
# emulation (e.g. building amd64 images on an arm64 host): the sandbox's
# seccomp filter needs syscalls QEMU doesn't emulate, so pacman fails
# with "error restricting syscalls via seccomp" before ever reaching the
# network. Disabling it only affects local cross-arch testing; native
# CI runners aren't emulated and are unaffected either way.
RUN sed -i '/^\[options\]/a DisableSandbox' /etc/pacman.conf

RUN pacman -Syu --noconfirm --needed python3 systemd udev dbus \
    && pacman -Scc --noconfirm

# Workaround archlinux not including any non-indo-european locales
# https://gitlab.archlinux.org/archlinux/archlinux-docker/-/issues/59
RUN cp -r /usr/share/i18n/locales/en_US /usr/share/i18n/locales/de_DE;

# Workaround getting failed ssl issues randomly in local testing
RUN sed -i '/^\[options\]/a XferCommand = /usr/bin/curl --retry 5 --retry-delay 2 -L -C - -f -o %o %u' /etc/pacman.conf

VOLUME ["/sys/fs/cgroup"]

CMD ["/lib/systemd/systemd"]