# Jibri mit MinIO Client, ffmpeg und Xvfb
# Erweitert das offizielle Jibri-Image um Upload-Funktionalitaet und X11 Display

FROM jitsi/jibri:stable-9823

USER root

# Xvfb, MinIO Client und ffmpeg installieren
RUN apt-get update && apt-get install -y --no-install-recommends \
    curl \
    ffmpeg \
    xvfb \
    x11vnc \
    && curl -fsSL https://dl.min.io/client/mc/release/linux-amd64/mc -o /usr/local/bin/mc \
    && chmod +x /usr/local/bin/mc \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

# finalize.sh Script kopieren und ausfuehrbar machen
COPY finalize.sh /config/finalize.sh
RUN chmod +x /config/finalize.sh

# Xvfb Startup Script
COPY start-xvfb.sh /usr/local/bin/start-xvfb.sh
RUN chmod +x /usr/local/bin/start-xvfb.sh

# Fix permissions for s6 init system
RUN mkdir -p /var/run/s6 && chown -R jibri:jibri /var/run/s6
RUN chown -R jibri:jibri /config

# Xvfb Display Konfiguration
ENV DISPLAY=:0
ENV RESOLUTION=1920x1080x24

# Custom entrypoint that starts Xvfb
COPY docker-entrypoint.sh /docker-entrypoint.sh
RUN chmod +x /docker-entrypoint.sh

ENTRYPOINT ["/docker-entrypoint.sh"]
