Files
moonraker/debian/moonraker.postinst
2025-05-16 16:26:05 +09:00

50 lines
1.1 KiB
Bash

#!/bin/sh
PYTHON_DIR=/opt/venvs/moonraker
DATADIR="${HOME}/printer_data"
CONFIG_PATH=${DATADIR}/config/moonraker.conf
LOG_PATH=/var/log/moonraker.log
SRC_DIR=/usr/share/moonraker/moonraker
LOCAL_DOMAIN=$(ip route | awk '/default/ {print $3}' | awk -F'.' '{print $1 "." $2 "." $3 "." 0}')
[ -z "${LOCAL_DOMAIN}" ] && LOCAL_DOMAIN="192.168.0.0"
cat>/etc/moonraker.conf<<__EOF
[server]
host: 0.0.0.0
port: 7125
enable_debug_logging: True
klippy_uds_address: /tmp/klipper.sock
[authorization]
enabled: True
trusted_clients:
${LOCAL_DOMAIN}/24
__EOF
cat>/etc/systemd/system/moonraker.service<<__EOF
#Systemd moonraker Service
[Unit]
Description=API Server for Klipper SV1
Requires=network-online.target
After=network-online.target
[Install]
WantedBy=multi-user.target
[Service]
Type=simple
RemainAfterExit=yes
ExecStart=${PYTHON_DIR}/bin/python3 ${SRC_DIR}/moonraker.py \
-l ${LOG_PATH} -c ${CONFIG_PATH} -u /tmp/moonraker -d ${DATADIR}
Restart=always
RestartSec=10
__EOF
## Create symlink
mkdir -p "${DATADIR}/config"
if [ ! -e "${DATADIR}/config/moonraker.conf" ]; then ln -s /etc/moonraker.conf "${DATADIR}/config/moonraker.conf"; fi
#DEBHELPER#