FROM docker.io/library/archlinux ENV container docker # pacman's syscall sandbox doesn't work under QEMU user-mode emulation # (e.g. building amd64 images on an arm64 host): its seccomp filter needs # syscalls QEMU doesn't emulate, so pacman fails with "error restricting # syscalls via seccomp" before ever reaching the network. Only the syscall # sandbox is disabled here, not the whole sandbox (DisableSandbox), which # is unnecessarily broad. Native (non-emulated) CI runners never hit the # syscall sandbox failure and are unaffected by this either way. RUN sed -i '/^\[options\]/a DisableSandboxSyscalls' /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; VOLUME ["/sys/fs/cgroup"] CMD ["/lib/systemd/systemd"]