diff --git a/scripts/mainsail.sh b/scripts/mainsail.sh index 95cc29d..07cf7d2 100644 --- a/scripts/mainsail.sh +++ b/scripts/mainsail.sh @@ -176,6 +176,11 @@ function download_mainsail() { print_error "Downloading Mainsail from\n ${url}\n failed!" exit 1 fi + + ### check for moonraker multi-instance and if multi-instance was found, enable mainsails remoteMode + if [[ $(moonraker_systemd | wc -w) -gt 1 ]]; then + enable_mainsail_remotemode + fi } #===================================================# @@ -539,6 +544,13 @@ function select_mainsail_port() { fi } +function enable_mainsail_remotemode() { + [[ ! -f "${MAINSAIL_DIR}/config.json" ]] && return + + rm -f "${MAINSAIL_DIR}/config.json" + echo -e "{\n \"remoteMode\":true\n}" >> "${MAINSAIL_DIR}/config.json" +} + function patch_mainsail_update_manager() { local moonraker_configs moonraker_configs=$(find "${KLIPPER_CONFIG}" -type f -name "moonraker.conf" | sort) diff --git a/scripts/moonraker.sh b/scripts/moonraker.sh index 34d9dfe..1b9018b 100644 --- a/scripts/moonraker.sh +++ b/scripts/moonraker.sh @@ -322,6 +322,13 @@ function create_moonraker_service() { j=$(( j + 1 )) done && unset i + ### enable mainsails remoteMode if mainsail is found + if [[ -d ${MAINSAIL_DIR} ]]; then + status_msg "Mainsail installation found! Enabling Mainsail remote mode ..." + enable_mainsail_remotemode + ok_msg "Mainsails remote mode enabled!" + fi + else return 1 fi