FROM gitea.eibl.tech/me0nline/codechecker-runner:latest

LABEL maintainer="me0nline <me0nline@eibl.tech>"
LABEL description="LOGAR CI/CD & Binary Release Cross-Compilation Runner (based on codechecker-runner)"

USER root
ENV DEBIAN_FRONTEND=noninteractive \
    PYTHONUNBUFFERED=1

# Install NSIS compiler and any missing Python dev packages onto the existing runner image
RUN apt-get update && apt-get install -y --no-install-recommends \
    nsis \
    nsis-common \
    nsis-pluginapi \
    python3-dev \
    libpython3-dev \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

# Install PyInstaller and LOGAR compilation tooling
RUN pip3 install --no-cache-dir --break-system-packages \
    pyinstaller \
    distlib \
    cryptography \
    pefile \
    cffi \
    pgpy \
    fastapi \
    uvicorn \
    pydantic \
    requests 2>/dev/null || pip install --no-cache-dir pyinstaller distlib cryptography pefile cffi pgpy fastapi uvicorn pydantic requests
