# This Dockerfile creates a docker image suitable to run biboumi’s build and
# tests.  For example, it can be used on with gitlab-ci.

FROM docker.io/fedora:44

ARG ERGO_VERSION=2.16.0
ENV LC_ALL=C.UTF-8

RUN dnf --refresh install -y \
git \
make \
cmake \
gcc-c++ \
uuid-devel \
udns-devel \
expat-devel \
libidn-devel \
sqlite-devel \
botan3-devel \
systemd-devel \
libuuid-devel \
libgcrypt-devel \
postgresql-devel \
lcov \
libasan \
libubsan \
catch-devel \
valgrind \
python3-pip \
python3-lxml \
python3-devel \
python3-sphinx \
python-sphinx_rtd_theme \
wget \
fedora-packager \
rpmdevtools \
&& dnf clean all

# Install slixmpp, for e2e tests
RUN pip3 install --break-system-packages slixmpp

# Install ergo, for e2e tests
RUN wget "https://github.com/ergochat/ergo/releases/download/v${ERGO_VERSION}/ergo-${ERGO_VERSION}-linux-x86_64.tar.gz" && tar xvf ergo-${ERGO_VERSION}-linux-x86_64.tar.gz && cp -r ergo-${ERGO_VERSION}-linux-x86_64 /usr/local/lib/ergo && ln -s /usr/local/lib/ergo/ergo /usr/local/bin/ergo
