From a8dcd9f6ecab8eb2d87a9c67361793f347d6788e Mon Sep 17 00:00:00 2001 From: Fredrik Baberg Date: Thu, 12 Jan 2023 02:45:57 +0100 Subject: [PATCH] Correction to files; add default moonraker conf --- klipper/DEV.md | 2 +- klipper/Dockerfile | 8 ----- klipper/config.yaml | 6 +++- klipper/rootfs/etc/cont-init.d/moonraker.sh | 6 +++- klipper/rootfs/etc/services.d/klipper/run | 8 +++-- klipper/rootfs/etc/services.d/moonraker/run | 14 +++----- .../rootfs/usr/share/templates/moonraker.conf | 36 +++++++++++++++++++ 7 files changed, 57 insertions(+), 23 deletions(-) create mode 100644 klipper/rootfs/usr/share/templates/moonraker.conf diff --git a/klipper/DEV.md b/klipper/DEV.md index 022b4ee..e3d3ad4 100644 --- a/klipper/DEV.md +++ b/klipper/DEV.md @@ -7,7 +7,7 @@ Need a frontend: - Mainsail ( + Moonraker ) - Fluidd ( + Moonraker ) -Both Klipper and OctoPrint/Mainsail/Fluidd needs access to klipper_config printer.cfg folder. +Both Klipper and OctoPrint/Moonraker needs access to klipper_config (printer.cfg) folder. ## Ideas diff --git a/klipper/Dockerfile b/klipper/Dockerfile index 4ecb389..d2dc60b 100644 --- a/klipper/Dockerfile +++ b/klipper/Dockerfile @@ -11,14 +11,6 @@ RUN apk add --no-cache \ libffi-dev \ build-base \ curl-dev - # && git clone https://github.com/KevinOConnor/klipper \ - # && git clone https://github.com/Arksine/moonraker.git - -# RUN virtualenv klippy-env \ -# && ./klippy-env/bin/pip install -r ./klipper/scripts/klippy-requirements.txt - -# RUN virtualenv moonraker-env \ -# && ./moonraker-env/bin/pip install -r ./moonraker/scripts/moonraker-requirements.txt COPY rootfs / RUN chmod +x /etc/cont-init.d/*.sh diff --git a/klipper/config.yaml b/klipper/config.yaml index fd85358..b9327fb 100644 --- a/klipper/config.yaml +++ b/klipper/config.yaml @@ -1,5 +1,5 @@ name: "3DPrinter-Klipper" -version: "2023.01.0" +version: "2023.01.01" slug: "3dprinter-klipper" description: "Klipper as an addon." url: "https://github.com/fredrikbaberg/3dprinter-addons/tree/klipper/3dprinter-klipper" @@ -15,3 +15,7 @@ realtime: true gpio: true uart: true usb: true +ports: + 7125/tcp: null +ports_description: + 7125/tcp: Moonraker API diff --git a/klipper/rootfs/etc/cont-init.d/moonraker.sh b/klipper/rootfs/etc/cont-init.d/moonraker.sh index 82e8fea..dd866c1 100644 --- a/klipper/rootfs/etc/cont-init.d/moonraker.sh +++ b/klipper/rootfs/etc/cont-init.d/moonraker.sh @@ -1,10 +1,14 @@ #!/usr/bin/with-contenv bashio -if [ ! -d /data/klipper ]; then +if [ ! -d /data/moonraker ]; then git clone https://github.com/Arksine/moonraker.git /data/moonraker fi if [ ! -d /data/moonraker-env ]; then virtualenv /data/moonraker-env /data/moonraker-env/bin/pip install -r /data/moonraker/scripts/moonraker-requirements.txt +fi + +if [ ! -f /data/klipper_config/moonraker.conf ]; then + cp /usr/share/templates/moonraker.conf /data/klipper_config/moonraker.conf fi \ No newline at end of file diff --git a/klipper/rootfs/etc/services.d/klipper/run b/klipper/rootfs/etc/services.d/klipper/run index 0c36770..f37c554 100644 --- a/klipper/rootfs/etc/services.d/klipper/run +++ b/klipper/rootfs/etc/services.d/klipper/run @@ -2,12 +2,14 @@ bashio::log.info "Starting Klipper..." -KLIPPER_PYTHON=/data/python/klipper/bin/python -KLIPPY=/data/src/klipper/klippy/klippy.py -KLIPPER_CFG=/data/config/klipper/printer.cfg +KLIPPER_PYTHON=/data/klippy-env/bin/python +KLIPPY=/data/klipper/klippy/klippy.py +KLIPPER_CFG=/data/klipper_config/printer.cfg KLIPPY_LOGFILE=/tmp/klippy.log KLIPPY_UDS=/tmp/klippy_uds +mkdir -p /data/klipper_config + touch ${KLIPPY_LOGFILE} touch ${KLIPPER_CFG} diff --git a/klipper/rootfs/etc/services.d/moonraker/run b/klipper/rootfs/etc/services.d/moonraker/run index a4ba535..5d884be 100644 --- a/klipper/rootfs/etc/services.d/moonraker/run +++ b/klipper/rootfs/etc/services.d/moonraker/run @@ -2,17 +2,13 @@ bashio::log.info "Starting Moonraker..." -MOONRAKER_PYTHON=/data/python/moonraker/bin/python -MOONRAKER=/data/src/moonraker/moonraker/moonraker.py -if [ -f /data/config/klipper/moonraker.conf ]; then - bashio::log.notice "Using custom moonraker.conf" - MOONRAKER_CFG=/data/config/klipper/moonraker.conf -else - bashio::log.notice "Using default moonraker.conf" - MOONRAKER_CFG=/root/config/moonraker/moonraker.conf -fi +MOONRAKER_PYTHON=/data/moonraker-env/bin/python +MOONRAKER=/data/moonraker/moonraker/moonraker.py +MOONRAKER_CFG=/data/klipper_config/moonraker.conf MOONRAKER_LOGFILE=/tmp/moonraker.log +mkdir -p /data/klipper_config + touch ${MOONRAKER_LOGFILE} touch ${MOONRAKER_CFG} diff --git a/klipper/rootfs/usr/share/templates/moonraker.conf b/klipper/rootfs/usr/share/templates/moonraker.conf new file mode 100644 index 0000000..7867818 --- /dev/null +++ b/klipper/rootfs/usr/share/templates/moonraker.conf @@ -0,0 +1,36 @@ +[server] +host: 0.0.0.0 +port: 7125 +enable_debug_logging: False +config_path: ~/klipper_config +log_path: ~/klipper_logs + +[authorization] +cors_domains: + https://my.mainsail.xyz + http://my.mainsail.xyz + http://*.local + http://*.lan +trusted_clients: + 10.0.0.0/8 + 127.0.0.0/8 + 169.254.0.0/16 + 172.16.0.0/12 + 192.168.0.0/16 + FE80::/10 + ::1/128 + +# enables partial support of Octoprint API +[octoprint_compat] + +# enables moonraker to track and store print history. +[history] + +# this enables moonraker's update manager +[update_manager] +enable_system_updates: False + +# [update_manager mainsail] +# type: web +# repo: mainsail-crew/mainsail +# path: ~/mainsail