FROM debian:trixie-slim

RUN apt-get update \
    && apt-get install -y --no-install-recommends \
        gstreamer1.0-x \
        gstreamer1.0-tools \
        gstreamer1.0-plugins-base \
        gstreamer1.0-plugins-good \
        gstreamer1.0-plugins-bad \
        gstreamer1.0-libav \
        libgstreamer1.0-0 \
        libgstreamer-plugins-base1.0-0 \
        libstdc++6 \
        fontconfig \
        fonts-dejavu-core \
    && fc-cache -f \
    && rm -rf /var/lib/apt/lists/*

COPY build/Linux-GCC-Release /mxl

RUN cp -a /mxl/lib/libmxl.so* /usr/local/lib/ \
    && ldconfig \
    && install -m 0755 \
        /mxl/tools/mxl-gst/mxl-gst-testsrc \
        /mxl/tools/mxl-gst/mxl-gst-looping-filesrc \
        /usr/local/bin/ \
    && mkdir -p /flow-configs /dev/shm/mxl \
    && cp -a /mxl/lib/tests/data/. /flow-configs/ \
    && useradd --uid 1000 --create-home --shell /usr/sbin/nologin mxl \
    && mkdir -p /home/mxl/.cache/fontconfig \
    && chown -R mxl:mxl /home/mxl /dev/shm/mxl

ENV HOME=/home/mxl \
    XDG_CACHE_HOME=/home/mxl/.cache

USER mxl
WORKDIR /flow-configs

CMD ["mxl-gst-testsrc", "--help"]
