FROM    alpine:latest
WORKDIR /z
LABEL   org.opencontainers.image.url="https://github.com/9001/copyparty" \
        org.opencontainers.image.source="https://github.com/9001/copyparty" \
        org.opencontainers.image.licenses="MIT" \
        org.opencontainers.image.title="copyparty-iv" \
        org.opencontainers.image.description="copyparty with Pillow, FFmpeg, libvips (image/audio/video thumbnails, audio transcoding, media tags)"
ENV     XDG_CONFIG_HOME=/cfg
ARG     ADD_PKG=""

RUN     apk add -U !pyc ${ADD_PKG} \
            tzdata wget mimalloc2 mimalloc2-insecure \
            py3-jinja2 py3-argon2-cffi py3-pyzmq \
            py3-openssl py3-paramiko py3-pillow \
            py3-pip py3-cffi \
            py3-magic \
            vips-jxl vips-poppler vips-magick \
            libraw py3-numpy \
        && apk add -t .bd \
            bash wget gcc g++ make cmake patchelf \
            python3-dev py3-wheel libffi-dev \
            libraw-dev py3-numpy-dev cython \
        && rm -f /usr/lib/python3*/EXTERNALLY-MANAGED \
        && python3 -m pip install pyvips \
        && python3 -m pip install --no-binary rawpy rawpy \
        && apk del py3-pip .bd

COPY    i innvikler.sh ./
RUN     ash innvikler.sh iv

WORKDIR /state
EXPOSE  3923
ENTRYPOINT ["/bin/ash", "/z/cpp.sh", "-c", "/z/initcfg"]
