diff --git a/files/macros/M600-support.cfg b/files/macros/M600-support.cfg index 579ec65..a3eb972 100644 --- a/files/macros/M600-support.cfg +++ b/files/macros/M600-support.cfg @@ -12,7 +12,7 @@ timeout: 99999999 [filament_switch_sensor filament_sensor] -pause_on_runout: true +pause_on_runout: false switch_pin: !PC15 runout_gcode: M600 diff --git a/files/moonraker/moonraker.asvc b/files/moonraker/moonraker.asvc index 966f16f..73771ea 100644 --- a/files/moonraker/moonraker.asvc +++ b/files/moonraker/moonraker.asvc @@ -9,6 +9,7 @@ crowsnest octoeverywhere ratos-configurator mobileraker +octoapp guppyscreen guppyflo Git-Backup \ No newline at end of file diff --git a/scripts/menu/KE/info_menu_KE.sh b/scripts/menu/KE/info_menu_KE.sh index 297129b..627b4c5 100755 --- a/scripts/menu/KE/info_menu_KE.sh +++ b/scripts/menu/KE/info_menu_KE.sh @@ -20,6 +20,14 @@ function check_file_ke() { fi } +function check_simplyprint_ke() { + if grep -q "\[simplyprint\]" "$MOONRAKER_CFG"; then + echo -e "${green}✓" + else + echo -e "${red}✗" + fi +} + function info_menu_ui_ke() { top_line title '[ INFORMATIONS MENU ]' "${yellow}" @@ -43,11 +51,13 @@ function info_menu_ui_ke() { subtitle '•CAMERA:' info_line "$(check_file_ke "$TIMELAPSE_FILE")" 'Moonraker Timelapse' hr - subtitle '•REMOTE ACCESS AND AI DETECTION:' + subtitle '•REMOTE ACCESS:' info_line "$(check_folder_ke "$OCTOEVERYWHERE_FOLDER")" 'OctoEverywhere' info_line "$(check_folder_ke "$MOONRAKER_OBICO_FOLDER")" 'Obico' - info_line "$(check_folder_ke "$MOBILERAKER_COMPANION_FOLDER")" 'Mobileraker Companion' info_line "$(check_folder_ke "$GUPPYFLO_FOLDER")" 'GuppyFLO' + info_line "$(check_folder_ke "$MOBILERAKER_COMPANION_FOLDER")" 'Mobileraker Companion' + info_line "$(check_folder_ke "$OCTOAPP_COMPANION_FOLDER")" 'OctoApp Companion' + info_line "$(check_simplyprint_ke)" 'SimplyPrint' hr subtitle '•CUSTOMIZATION:' info_line "$(check_file_ke "$CREALITY_WEB_FILE")" 'Creality Web Interface' diff --git a/scripts/menu/KE/install_menu_KE.sh b/scripts/menu/KE/install_menu_KE.sh index eb111e9..e3bbc8a 100755 --- a/scripts/menu/KE/install_menu_KE.sh +++ b/scripts/menu/KE/install_menu_KE.sh @@ -25,11 +25,13 @@ function install_menu_ui_ke() { subtitle '•CAMERA:' menu_option '10' 'Install' 'Moonraker Timelapse' hr - subtitle '•REMOTE ACCESS AND AI DETECTION:' + subtitle '•REMOTE ACCESS:' menu_option '11' 'Install' 'OctoEverywhere' menu_option '12' 'Install' 'Moonraker Obico' - menu_option '13' 'Install' 'Mobileraker Companion' - menu_option '14' 'Install' 'GuppyFLO' + menu_option '13' 'Install' 'GuppyFLO' + menu_option '14' 'Install' 'Mobileraker Companion' + menu_option '15' 'Install' 'OctoApp Companion' + menu_option '16' 'Install' 'SimplyPrint' hr inner_line hr @@ -146,17 +148,43 @@ function install_menu_ke() { run "install_moonraker_obico" "install_menu_ui_ke" fi;; 13) - if [ -d "$MOBILERAKER_COMPANION_FOLDER" ]; then - error_msg "Mobileraker Companion is already installed!" - else - run "install_mobileraker_companion" "install_menu_ui_ke" - fi;; - 14) if [ ! -d "$MOONRAKER_FOLDER" ] && [ ! -d "$NGINX_FOLDER" ]; then error_msg "Moonraker and Nginx are needed, please install them first!" else run "install_guppyflo" "install_menu_ui_ke" fi;; + 14) + if [ -d "$MOBILERAKER_COMPANION_FOLDER" ]; then + error_msg "Mobileraker Companion is already installed!" + elif [ ! -d "$MOONRAKER_FOLDER" ]; then + error_msg "Moonraker and Nginx are needed, please install them first!" + elif [ ! -d "$FLUIDD_FOLDER" ] && [ ! -d "$MAINSAIL_FOLDER" ]; then + error_msg "Fluidd or Mainsail is needed, please install it first!" + else + run "install_mobileraker_companion" "install_menu_ui_ke" + fi;; + 15) + if [ -d "$OCTOAPP_COMPANION_FOLDER" ]; then + error_msg "OctoApp Companion is already installed!" + elif [ ! -d "$MOONRAKER_FOLDER" ]; then + error_msg "Moonraker and Nginx are needed, please install them first!" + elif [ ! -d "$FLUIDD_FOLDER" ] && [ ! -d "$MAINSAIL_FOLDER" ]; then + error_msg "Fluidd or Mainsail is needed, please install it first!" + elif [ ! -f "$ENTWARE_FILE" ]; then + error_msg "Entware is needed, please install it first!" + else + run "install_octoapp_companion" "install_menu_ui_ke" + fi;; + 16) + if grep -q "\[simplyprint\]" "$MOONRAKER_CFG"; then + error_msg "SimplyPrint is already installed!" + elif [ ! -d "$MOONRAKER_FOLDER" ]; then + error_msg "Moonraker and Nginx are needed, please install them first!" + elif [ ! -d "$FLUIDD_FOLDER" ] && [ ! -d "$MAINSAIL_FOLDER" ]; then + error_msg "Fluidd or Mainsail is needed, please install it first!" + else + run "install_simplyprint" "install_menu_ui_ke" + fi;; B|b) clear; main_menu; break;; Q|q) diff --git a/scripts/menu/KE/remove_menu_KE.sh b/scripts/menu/KE/remove_menu_KE.sh index f25608d..74ee2e4 100755 --- a/scripts/menu/KE/remove_menu_KE.sh +++ b/scripts/menu/KE/remove_menu_KE.sh @@ -25,11 +25,13 @@ function remove_menu_ui_ke() { subtitle '•CAMERA:' menu_option '10' 'Remove' 'Moonraker Timelapse' hr - subtitle '•REMOTE ACCESS AND AI DETECTION:' + subtitle '•REMOTE ACCESS:' menu_option '11' 'Remove' 'OctoEverywhere' menu_option '12' 'Remove' 'Moonraker Obico' - menu_option '13' 'Remove' 'Mobileraker Companion' - menu_option '14' 'Remove' 'GuppyFLO' + menu_option '13' 'Remove' 'GuppyFLO' + menu_option '14' 'Remove' 'Mobileraker Companion' + menu_option '15' 'Remove' 'OctoApp Companion' + menu_option '16' 'Remove' 'SimplyPrint' hr inner_line hr @@ -142,16 +144,28 @@ function remove_menu_ke() { run "remove_moonraker_obico" "remove_menu_ui_ke" fi;; 13) + if [ ! -d "$GUPPYFLO_FOLDER" ]; then + error_msg "GuppyFLO is not installed!" + else + run "remove_guppyflo" "remove_menu_ui_ke" + fi;; + 14) if [ ! -d "$MOBILERAKER_COMPANION_FOLDER" ]; then error_msg "Mobileraker Companion is not installed!" else run "remove_mobileraker_companion" "remove_menu_ui_ke" fi;; - 14) - if [ ! -d "$GUPPYFLO_FOLDER" ]; then - error_msg "GuppyFLO is not installed!" + 15) + if [ ! -d "$OCTOAPP_COMPANION_FOLDER" ]; then + error_msg "OctoApp Companion is not installed!" else - run "remove_guppyflo" "remove_menu_ui_ke" + run "remove_octoapp_companion" "remove_menu_ui_ke" + fi;; + 16) + if ! grep -q "\[simplyprint\]" "$MOONRAKER_CFG"; then + error_msg "SimplyPrint is not installed!" + else + run "remove_simplyprint" "remove_menu_ui" fi;; B|b) clear; main_menu; break;; diff --git a/scripts/menu/info_menu.sh b/scripts/menu/info_menu.sh index 2b21b02..d6e9a23 100755 --- a/scripts/menu/info_menu.sh +++ b/scripts/menu/info_menu.sh @@ -20,6 +20,14 @@ function check_file() { fi } +function check_simplyprint() { + if grep -q "\[simplyprint\]" "$MOONRAKER_CFG"; then + echo -e "${green}✓" + else + echo -e "${red}✗" + fi +} + function info_menu_ui() { top_line title '[ INFORMATIONS MENU ]' "${yellow}" @@ -51,11 +59,13 @@ function info_menu_ui() { info_line "$(check_file "$TIMELAPSE_FILE")" 'Moonraker Timelapse' info_line "$(check_file "$CAMERA_SETTINGS_FILE")" 'Camera Settings Control' hr - subtitle '•REMOTE ACCESS AND AI DETECTION:' + subtitle '•REMOTE ACCESS:' info_line "$(check_folder "$OCTOEVERYWHERE_FOLDER")" 'OctoEverywhere' info_line "$(check_folder "$MOONRAKER_OBICO_FOLDER")" 'Obico' - info_line "$(check_folder "$MOBILERAKER_COMPANION_FOLDER")" 'Mobileraker Companion' info_line "$(check_folder "$GUPPYFLO_FOLDER")" 'GuppyFLO' + info_line "$(check_folder "$MOBILERAKER_COMPANION_FOLDER")" 'Mobileraker Companion' + info_line "$(check_folder "$OCTOAPP_COMPANION_FOLDER")" 'OctoApp Companion' + info_line "$(check_simplyprint)" 'SimplyPrint' hr subtitle '•CUSTOMIZATION:' info_line "$(check_file "$BOOT_DISPLAY_FILE")" 'Custom Boot Display' diff --git a/scripts/menu/install_menu.sh b/scripts/menu/install_menu.sh index 2d7b297..e2fa220 100755 --- a/scripts/menu/install_menu.sh +++ b/scripts/menu/install_menu.sh @@ -33,11 +33,13 @@ function install_menu_ui() { menu_option '17' 'Install' 'Moonraker Timelapse' menu_option '18' 'Install' 'Camera Settings Control' hr - subtitle '•REMOTE ACCESS AND AI DETECTION:' + subtitle '•REMOTE ACCESS:' menu_option '19' 'Install' 'OctoEverywhere' menu_option '20' 'Install' 'Moonraker Obico' - menu_option '21' 'Install' 'Mobileraker Companion' - menu_option '22' 'Install' 'GuppyFLO' + menu_option '21' 'Install' 'GuppyFLO' + menu_option '22' 'Install' 'Mobileraker Companion' + menu_option '23' 'Install' 'OctoApp Companion' + menu_option '24' 'Install' 'SimplyPrint' hr inner_line hr @@ -212,17 +214,43 @@ function install_menu() { run "install_moonraker_obico" "install_menu_ui" fi;; 21) - if [ -d "$MOBILERAKER_COMPANION_FOLDER" ]; then - error_msg "Mobileraker Companion is already installed!" - else - run "install_mobileraker_companion" "install_menu_ui" - fi;; - 22) if [ ! -d "$MOONRAKER_FOLDER" ] && [ ! -d "$NGINX_FOLDER" ]; then error_msg "Moonraker and Nginx are needed, please install them first!" else run "install_guppyflo" "install_menu_ui" fi;; + 22) + if [ -d "$MOBILERAKER_COMPANION_FOLDER" ]; then + error_msg "Mobileraker Companion is already installed!" + elif [ ! -d "$MOONRAKER_FOLDER" ]; then + error_msg "Moonraker and Nginx are needed, please install them first!" + elif [ ! -d "$FLUIDD_FOLDER" ] && [ ! -d "$MAINSAIL_FOLDER" ]; then + error_msg "Fluidd or Mainsail is needed, please install it first!" + else + run "install_mobileraker_companion" "install_menu_ui" + fi;; + 23) + if [ -d "$OCTOAPP_COMPANION_FOLDER" ]; then + error_msg "OctoApp Companion is already installed!" + elif [ ! -d "$MOONRAKER_FOLDER" ]; then + error_msg "Moonraker and Nginx are needed, please install them first!" + elif [ ! -d "$FLUIDD_FOLDER" ] && [ ! -d "$MAINSAIL_FOLDER" ]; then + error_msg "Fluidd or Mainsail is needed, please install it first!" + elif [ ! -f "$ENTWARE_FILE" ]; then + error_msg "Entware is needed, please install it first!" + else + run "install_octoapp_companion" "install_menu_ui" + fi;; + 24) + if grep -q "\[simplyprint\]" "$MOONRAKER_CFG"; then + error_msg "SimplyPrint is already installed!" + elif [ ! -d "$MOONRAKER_FOLDER" ]; then + error_msg "Moonraker and Nginx are needed, please install them first!" + elif [ ! -d "$FLUIDD_FOLDER" ] && [ ! -d "$MAINSAIL_FOLDER" ]; then + error_msg "Fluidd or Mainsail is needed, please install it first!" + else + run "install_simplyprint" "install_menu_ui" + fi;; B|b) clear; main_menu; break;; Q|q) diff --git a/scripts/menu/remove_menu.sh b/scripts/menu/remove_menu.sh index a52d71e..71c2206 100755 --- a/scripts/menu/remove_menu.sh +++ b/scripts/menu/remove_menu.sh @@ -33,11 +33,13 @@ function remove_menu_ui() { menu_option '17' 'Remove' 'Moonraker Timelapse' menu_option '18' 'Remove' 'Camera Settings Control' hr - subtitle '•REMOTE ACCESS AND AI DETECTION:' + subtitle '•REMOTE ACCESS:' menu_option '19' 'Remove' 'OctoEverywhere' menu_option '20' 'Remove' 'Moonraker Obico' - menu_option '21' 'Remove' 'Mobileraker Companion' - menu_option '22' 'Remove' 'GuppyFLO' + menu_option '21' 'Remove' 'GuppyFLO' + menu_option '22' 'Remove' 'Mobileraker Companion' + menu_option '23' 'Remove' 'OctoApp Companion' + menu_option '24' 'Remove' 'SimplyPrint' hr inner_line hr @@ -204,16 +206,28 @@ function remove_menu() { run "remove_moonraker_obico" "remove_menu_ui" fi;; 21) + if [ ! -d "$GUPPYFLO_FOLDER" ]; then + error_msg "GuppyFLO is not installed!" + else + run "remove_guppyflo" "remove_menu_ui" + fi;; + 22) if [ ! -d "$MOBILERAKER_COMPANION_FOLDER" ]; then error_msg "Mobileraker Companion is not installed!" else run "remove_mobileraker_companion" "remove_menu_ui" fi;; - 22) - if [ ! -d "$GUPPYFLO_FOLDER" ]; then - error_msg "GuppyFLO is not installed!" + 23) + if [ ! -d "$OCTOAPP_COMPANION_FOLDER" ]; then + error_msg "OctoApp Companion is not installed!" else - run "remove_guppyflo" "remove_menu_ui" + run "remove_octoapp_companion" "remove_menu_ui" + fi;; + 24) + if ! grep -q "\[simplyprint\]" "$MOONRAKER_CFG"; then + error_msg "SimplyPrint is not installed!" + else + run "remove_simplyprint" "remove_menu_ui" fi;; B|b) clear; main_menu; break;; diff --git a/scripts/octoapp_companion.sh b/scripts/octoapp_companion.sh new file mode 100755 index 0000000..3bcccbe --- /dev/null +++ b/scripts/octoapp_companion.sh @@ -0,0 +1,66 @@ +#!/bin/sh + +set -e + +function octoapp_companion_message(){ + top_line + title 'OctoApp Companion' "${yellow}" + inner_line + hr + echo -e " │ ${cyan}OctoApp Companion allows you to control your printer from ${white}│" + echo -e " │ ${cyan}OctoApp and get notifications for your prints. ${white}│" + hr + bottom_line +} + +function install_octoapp_companion(){ + octoapp_companion_message + local yn + while true; do + install_msg "OctoApp Companion" yn + case "${yn}" in + Y|y) + echo -e "${white}" + if [ -d "$OCTOAPP_COMPANION_FOLDER" ]; then + echo -e "Info: OctoApp Companion is already installed. Download skipped." + else + echo -e "Info: Downloading OctoApp Companion..." + git config --global http.sslVerify false + git clone "$OCTOAPP_COMPANION_URL" "$OCTOAPP_COMPANION_FOLDER" + fi + echo -e "Info: Running OctoApp Companion installer..." + cd "$OCTOAPP_COMPANION_FOLDER" + sh ./install.sh + ok_msg "OctoApp Companion has been installed successfully!" + return;; + N|n) + error_msg "Installation canceled!" + return;; + *) + error_msg "Please select a correct choice!";; + esac + done +} + +function remove_octoapp_companion(){ + octoapp_companion_message + local yn + while true; do + remove_msg "OctoApp Companion" yn + case "${yn}" in + Y|y) + echo -e "${white}" + echo -e "Info: Running OctoApp Companion uninstaller..." + cd "$OCTOAPP_COMPANION_FOLDER" + sh ./uninstall.sh + rm -f /root/update-OctoApp.sh + ok_msg "OctoApp Companion has been removed successfully!" + return;; + N|n) + error_msg "Deletion canceled!" + return;; + *) + error_msg "Please select a correct choice!";; + esac + done +} \ No newline at end of file diff --git a/scripts/octoeverywhere.sh b/scripts/octoeverywhere.sh index ce23817..e60cfda 100755 --- a/scripts/octoeverywhere.sh +++ b/scripts/octoeverywhere.sh @@ -51,7 +51,7 @@ function remove_octoeverywhere(){ case "${yn}" in Y|y) echo -e "${white}" - echo -e "Info: Running OctoEverywhere installer..." + echo -e "Info: Running OctoEverywhere uninstaller..." cd "$OCTOEVERYWHERE_FOLDER" sh ./uninstall.sh ok_msg "OctoEverywhere has been removed successfully!" diff --git a/scripts/paths.sh b/scripts/paths.sh index c3120b7..d05d5a2 100755 --- a/scripts/paths.sh +++ b/scripts/paths.sh @@ -139,13 +139,17 @@ function set_paths() { MOONRAKER_OBICO_FOLDER="${USR_DATA}/moonraker-obico" MOONRAKER_OBICO_URL="https://github.com/TheSpaghettiDetective/moonraker-obico.git" - # Mobileraker Companion # - MOBILERAKER_COMPANION_FOLDER="${USR_DATA}/mobileraker_companion" - MOBILERAKER_COMPANION_URL="https://github.com/Clon1998/mobileraker_companion.git" - # GuppyFLO # GUPPYFLO_FOLDER="${USR_DATA}/guppyflo" GUPPYFLO_URL="https://github.com/ballaswag/guppyflo/releases/latest/download/guppyflo_mipsle.zip" + + # Mobileraker Companion # + MOBILERAKER_COMPANION_FOLDER="${USR_DATA}/mobileraker_companion" + MOBILERAKER_COMPANION_URL="https://github.com/Clon1998/mobileraker_companion.git" + + # OctoApp Companion # + OCTOAPP_COMPANION_FOLDER="${USR_DATA}/octoapp" + OCTOAPP_COMPANION_URL="https://github.com/crysxd/OctoApp-Plugin.git" # Custom Boot Display # BOOT_DISPLAY_FOLDER="/etc/boot-display" diff --git a/scripts/simplyprint.sh b/scripts/simplyprint.sh new file mode 100755 index 0000000..2aaaad5 --- /dev/null +++ b/scripts/simplyprint.sh @@ -0,0 +1,71 @@ +#!/bin/sh + +set -e + +function simplyprint_message(){ + top_line + title 'SimplyPrint' "${yellow}" + inner_line + hr + echo -e " │ ${cyan}SimplyPrint allows you to start those prints that you just ${white}│" + echo -e " │ ${cyan}need to be done sooner rather than later. You can send print ${white}│" + echo -e " │ ${cyan}jobs to your printer from anywhere in the world. ${white}│" + hr + bottom_line +} + +function install_simplyprint(){ + simplyprint_message + local yn + while true; do + install_msg "SimplyPrint" yn + case "${yn}" in + Y|y) + echo -e "${white}" + if ! grep -q "\[simplyprint\]" "$MOONRAKER_CFG"; then + echo -e "Info: Enabling SimplyPrint configurations in moonraker.conf file..." + sed -i -e '/\[simplyprint\]/!{ $s/$/\n\n[simplyprint]/;}' "$MOONRAKER_CFG" + else + echo -e "Info: SimplyPrint configurations are already enabled in moonraker.conf file..." + fi + echo -e "Info: Restarting Moonraker service..." + stop_moonraker + start_moonraker + ok_msg "SimplyPrint has been installed successfully!" + return;; + N|n) + error_msg "Installation canceled!" + return;; + *) + error_msg "Please select a correct choice!";; + esac + done +} + +function remove_simplyprint(){ + simplyprint_message + local yn + while true; do + remove_msg "SimplyPrint" yn + case "${yn}" in + Y|y) + echo -e "${white}" + if grep -q "\[simplyprint\]" "$MOONRAKER_CFG"; then + echo "Info: Removing SimplyPrint configurations in moonraker.conf file..." + sed -i -e '/\[simplyprint\]/{x;d;};x' "$MOONRAKER_CFG" + else + echo "Info: SimplyPrint configurations are already removed in moonraker.conf file." + fi + echo -e "Info: Restarting Moonraker service..." + stop_moonraker + start_moonraker + ok_msg "SimplyPrint has been removed successfully!" + return;; + N|n) + error_msg "Deletion canceled!" + return;; + *) + error_msg "Please select a correct choice!";; + esac + done +} \ No newline at end of file