2024-10-31 18:42:33 +01:00
|
|
|
FROM python:3.11
|
2021-10-13 20:04:51 +02:00
|
|
|
|
|
|
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
2022-01-15 01:26:33 +01:00
|
|
|
ARG KLIPPER_BRANCH="master"
|
2021-10-13 20:04:51 +02:00
|
|
|
|
|
|
|
|
ARG USER=klippy
|
|
|
|
|
ARG HOME=/home/${USER}
|
|
|
|
|
ARG KLIPPER_VENV_DIR=${HOME}/klippy-env
|
|
|
|
|
|
2022-09-23 00:38:50 +02:00
|
|
|
ENV PKGLIST="libffi-dev build-essential"
|
2021-10-13 20:04:51 +02:00
|
|
|
ENV PKGLIST="${PKGLIST} libncurses-dev"
|
|
|
|
|
ENV PKGLIST="${PKGLIST} libusb-dev"
|
|
|
|
|
ENV PKGLIST="${PKGLIST} avrdude gcc-avr binutils-avr avr-libc"
|
|
|
|
|
ENV PKGLIST="${PKGLIST} stm32flash libnewlib-arm-none-eabi"
|
2022-09-23 00:38:50 +02:00
|
|
|
ENV PKGLIST="${PKGLIST} gcc-arm-none-eabi binutils-arm-none-eabi libusb-1.0 pkg-config"
|
2021-10-13 20:04:51 +02:00
|
|
|
|
|
|
|
|
RUN useradd -d ${HOME} -ms /bin/bash ${USER}
|
|
|
|
|
RUN apt-get update && \
|
2022-09-23 00:38:50 +02:00
|
|
|
apt-get install -y \
|
|
|
|
|
locales \
|
|
|
|
|
git \
|
|
|
|
|
sudo \
|
|
|
|
|
wget \
|
|
|
|
|
curl \
|
|
|
|
|
gzip \
|
|
|
|
|
tar \
|
|
|
|
|
${PKGLIST}
|
|
|
|
|
|
2021-10-13 20:04:51 +02:00
|
|
|
RUN sed -i -e 's/# en_GB.UTF-8 UTF-8/en_GB.UTF-8 UTF-8/' /etc/locale.gen
|
|
|
|
|
RUN locale-gen
|
2023-01-18 13:56:42 +01:00
|
|
|
RUN python -m pip install -U pip wheel
|
2021-10-13 20:04:51 +02:00
|
|
|
|
|
|
|
|
ENV LC_ALL en_GB.UTF-8
|
|
|
|
|
ENV LANG en_GB.UTF-8
|
|
|
|
|
ENV LANGUAGE en_GB:en
|
|
|
|
|
|
|
|
|
|
USER ${USER}
|
|
|
|
|
WORKDIR ${HOME}
|
|
|
|
|
|
|
|
|
|
### Klipper setup ###
|
2022-01-15 01:26:33 +01:00
|
|
|
RUN git clone --single-branch --branch ${KLIPPER_BRANCH} https://github.com/Klipper3d/klipper.git klipper
|
2022-09-23 00:38:50 +02:00
|
|
|
RUN [ ! -d ${KLIPPER_VENV_DIR} ] && python3 -m venv ${KLIPPER_VENV_DIR}
|
2021-10-13 20:04:51 +02:00
|
|
|
RUN ${KLIPPER_VENV_DIR}/bin/pip install wheel
|
2022-09-23 00:38:50 +02:00
|
|
|
|
|
|
|
|
WORKDIR ${HOME}/klipper
|
|
|
|
|
RUN ${KLIPPER_VENV_DIR}/bin/pip install -r scripts/klippy-requirements.txt
|
|
|
|
|
RUN ${KLIPPER_VENV_DIR}/bin/python klippy/chelper/__init__.py
|
|
|
|
|
RUN ${KLIPPER_VENV_DIR}/bin/python -m compileall klippy
|
2021-10-13 20:04:51 +02:00
|
|
|
|
|
|
|
|
WORKDIR ${HOME}/klipper
|
|
|
|
|
|
|
|
|
|
CMD ["bash"]
|