FROM octoprint/octoprint AS octoprint RUN apt update -q && \ apt install -yq \ 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 update -q && \ apt install -yq 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 RUN cd mjpg-streamer-yu12-master/mjpg-streamer && \ 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/ FROM octoprint AS octoklipper RUN git clone https://github.com/Klipper3d/klipper.git klipper && \ cd klipper && \ git checkout master && \ rm .git -rf RUN venv/bin/pip install -r klipper/scripts/klippy-requirements.txt \ && venv/bin/python -m compileall klipper/klippy \ && venv/bin/python klipper/klippy/chelper/__init__.py