JS/TS / fmt (pull_request) Successful in 10s
JS/TS / lint (pull_request) Successful in 10s
Python / static (pull_request) Failing after 28s
Rust / fmt (pull_request) Successful in 1m19s
Rust / build (pull_request) Successful in 1m45s
Rust / clippy (pull_request) Successful in 1m42s
Python / verify (pull_request) Successful in 2m18s
C++ / fmt (pull_request) Successful in 5s
C++ / build (pull_request) Failing after 10s
C++ / clang-tidy (pull_request) Failing after 12s
55 lines
1.2 KiB
Docker
55 lines
1.2 KiB
Docker
FROM archlinux:latest
|
|
|
|
RUN pacman -Syyu --noconfirm
|
|
|
|
# Build toolchain
|
|
RUN pacman -S --noconfirm \
|
|
base-devel \
|
|
cmake \
|
|
ninja \
|
|
clang \
|
|
lld \
|
|
nodejs \
|
|
cmark \
|
|
git
|
|
|
|
# Qt6
|
|
RUN pacman -S --noconfirm \
|
|
qt6-base \
|
|
qt6-declarative \
|
|
qt6-shadertools \
|
|
qt6-5compat \
|
|
qt6-canvaspainter
|
|
|
|
# Project-specific dependencies
|
|
RUN pacman -S --noconfirm \
|
|
libqalculate \
|
|
pipewire \
|
|
aubio \
|
|
cava \
|
|
lm_sensors \
|
|
glib2
|
|
|
|
# AUR: libcava (provides development headers for cava)
|
|
RUN pacman -Syu --noconfirm && \
|
|
pacman -S --needed --noconfirm \
|
|
sudo \
|
|
meson \
|
|
autoconf-archive \
|
|
python-tqdm && \
|
|
useradd -m builder && \
|
|
echo "builder ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
|
|
|
|
RUN for i in 1 2 3 4 5; do \
|
|
rm -rf /tmp/libcava && \
|
|
git clone --depth 1 https://aur.archlinux.org/libcava.git /tmp/libcava && \
|
|
break || sleep 5; \
|
|
done && \
|
|
test -d /tmp/libcava/.git && \
|
|
chown -R builder /tmp/libcava
|
|
|
|
RUN su builder -c "cd /tmp/libcava && makepkg -si --noconfirm" && \
|
|
rm -rf /tmp/libcava && \
|
|
userdel -r builder && \
|
|
sed -i '/^builder/d' /etc/sudoers
|