All checks were successful
CI Code / Check spelling (pull_request) Successful in 22s
CI Code / Check coding style (pull_request) Successful in 34s
CI Code / Code Coverage (pull_request) Successful in 17m45s
CI Code / Linux (ubuntu) (pull_request) Successful in 18m1s
CI Code / Linux (debian) (pull_request) Successful in 18m17s
CI Code / Linux (arch) (pull_request) Successful in 19m0s
CI Code / Check spelling (push) Successful in 19s
CI Code / Check coding style (push) Successful in 31s
CI Code / Code Coverage (push) Successful in 15m28s
CI Code / Linux (ubuntu) (push) Successful in 18m11s
CI Code / Linux (debian) (push) Successful in 18m22s
CI Code / Linux (arch) (push) Successful in 20m51s
Remove -c http.sslverify=false from all git clones (enables proper TLS verification, closes MITM risk). Explicitly install ca-certificates in every CI Docker image.
78 lines
1.6 KiB
Docker
78 lines
1.6 KiB
Docker
FROM archlinux
|
|
|
|
ENV TERM=xterm
|
|
ENV CC="ccache gcc"
|
|
|
|
RUN pacman -Syu --noconfirm
|
|
# reflector is optional - if it fails due to network issues, continue with default mirrorlist
|
|
RUN pacman -S --needed --noconfirm reflector && \
|
|
(reflector --latest 20 --protocol https --sort rate --save /etc/pacman.d/mirrorlist || true)
|
|
RUN pacman-key --init
|
|
RUN pacman -S --needed --noconfirm \
|
|
autoconf \
|
|
autoconf-archive \
|
|
automake \
|
|
base-devel \
|
|
ca-certificates \
|
|
ccache \
|
|
check \
|
|
cmake \
|
|
cmocka \
|
|
lcov \
|
|
curl \
|
|
debuginfod \
|
|
doxygen \
|
|
expat \
|
|
gcc \
|
|
git \
|
|
gpgme \
|
|
gtk3 \
|
|
libgcrypt \
|
|
libmicrohttpd \
|
|
libnotify \
|
|
libsignal-protocol-c \
|
|
libotr \
|
|
libtool \
|
|
libxss \
|
|
make \
|
|
openssl \
|
|
pkg-config \
|
|
python \
|
|
wget \
|
|
sqlite \
|
|
valgrind \
|
|
gdk-pixbuf2 \
|
|
qrencode
|
|
|
|
RUN mkdir -p /usr/src/{stabber,profanity}
|
|
|
|
RUN useradd -mb /usr/src --shell=/bin/false aur && usermod -L aur
|
|
USER aur
|
|
|
|
WORKDIR /usr/src/aur
|
|
|
|
# NOTE: These will change their extension to .tar.zst if a new snapshot is built
|
|
# due to:
|
|
# https://www.archlinux.org/news/now-using-zstandard-instead-of-xz-for-package-compression/
|
|
RUN wget https://aur.archlinux.org/cgit/aur.git/snapshot/libstrophe-git.tar.gz
|
|
|
|
RUN tar -zxvf libstrophe-git.tar.gz
|
|
|
|
RUN pushd libstrophe-git && makepkg && popd
|
|
|
|
USER root
|
|
|
|
RUN pacman -U --noconfirm libstrophe-git/libstrophe-git-*.pkg.tar.zst
|
|
|
|
WORKDIR /usr/src
|
|
RUN git clone --depth 1 https://git.jabber.space/devs/stabber
|
|
|
|
WORKDIR /usr/src/stabber
|
|
RUN ./bootstrap.sh
|
|
RUN ./configure --prefix=/usr --disable-dependency-tracking
|
|
RUN make -j$(nproc)
|
|
RUN make install
|
|
|
|
WORKDIR /usr/src/profanity
|
|
COPY . /usr/src/profanity
|