FROM octoprint/octoprint AS octoprint
RUN apt-get update -q && \
    apt-get install -yq --no-install-recommends \
        cpulimit \
        sudo \
        curl wget \
        unzip \
        nano \
    && \
    apt-get autoremove -y && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /var/lib/dpkg/status.old /var/cache/debconf/templates.dat /var/log/dpkg.log /var/log/lastlog /var/log/apt/*.log

FROM octoprint AS mjpg-streamer-builder
WORKDIR /build
RUN apt-get update -q && \
    apt-get install -yq --no-install-recommends \
      unzip  \
      subversion
RUN curl -s -L https://github.com/pranjalv123/mjpg-streamer-yu12/archive/refs/heads/master.zip --output mjpeg-streamer-yu12.zip && \
    unzip -q mjpeg-streamer-yu12.zip \
WORKDIR /build/mjpg-streamer-yu12-master/mjpg-streamer
RUN make && \
    ls -lah

FROM octoprint AS octoprint-mjpg-streamer
COPY --from=mjpg-streamer-builder /build/mjpg-streamer-yu12-master/mjpg-streamer/mjpg_streamer /usr/local/bin/mjpg_streamer
COPY --from=mjpg-streamer-builder /build/mjpg-streamer-yu12-master/mjpg-streamer/*.so /usr/local/lib/mjpg-streamer/