script: whiptail Octoprint dialog
This commit is contained in:
@@ -1,46 +1,4 @@
|
|||||||
### base variables
|
#!/bin/bash
|
||||||
OCTOPRINT_ENV="${HOME}/OctoPrint"
|
|
||||||
|
|
||||||
octoprint_setup_dialog(){
|
|
||||||
status_msg "Initializing OctoPrint installation ..."
|
|
||||||
|
|
||||||
### count amount of klipper services
|
|
||||||
if [ "$(systemctl list-units --full -all -t service --no-legend | grep -F "klipper.service")" ]; then
|
|
||||||
INSTANCE_COUNT=1
|
|
||||||
else
|
|
||||||
INSTANCE_COUNT=$(systemctl list-units --full -all -t service --no-legend | grep -E "klipper-[[:digit:]].service" | wc -l)
|
|
||||||
fi
|
|
||||||
|
|
||||||
### instance confirmation dialog
|
|
||||||
while true; do
|
|
||||||
echo
|
|
||||||
top_border
|
|
||||||
if [ $INSTANCE_COUNT -gt 1 ]; then
|
|
||||||
printf "|%-55s|\n" " $INSTANCE_COUNT Klipper instances were found!"
|
|
||||||
else
|
|
||||||
echo -e "| 1 Klipper instance was found! | "
|
|
||||||
fi
|
|
||||||
echo -e "| You need one OctoPrint instance per Klipper instance. | "
|
|
||||||
bottom_border
|
|
||||||
echo
|
|
||||||
read -p "${cyan}###### Create $INSTANCE_COUNT OctoPrint instances? (Y/n):${default} " yn
|
|
||||||
case "$yn" in
|
|
||||||
Y|y|Yes|yes|"")
|
|
||||||
echo -e "###### > Yes"
|
|
||||||
status_msg "Creating $INSTANCE_COUNT OctoPrint instances ..."
|
|
||||||
octoprint_setup
|
|
||||||
break;;
|
|
||||||
N|n|No|no)
|
|
||||||
echo -e "###### > No"
|
|
||||||
warn_msg "Exiting OctoPrint setup ..."
|
|
||||||
echo
|
|
||||||
break;;
|
|
||||||
*)
|
|
||||||
print_unkown_cmd
|
|
||||||
print_msg && clear_msg;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
octoprint_dependencies(){
|
octoprint_dependencies(){
|
||||||
dep=(
|
dep=(
|
||||||
|
|||||||
30
scripts/ui/octoprint_setup_dialog.sh
Executable file
30
scripts/ui/octoprint_setup_dialog.sh
Executable file
@@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
octoprint_setup_dialog(){
|
||||||
|
status_msg "Initializing OctoPrint installation ..."
|
||||||
|
|
||||||
|
### count amount of klipper services
|
||||||
|
if [ "$(systemctl list-units --full -all -t service --no-legend | grep -F "klipper.service")" ]; then
|
||||||
|
INSTANCE_COUNT=1
|
||||||
|
else
|
||||||
|
INSTANCE_COUNT=$(systemctl list-units --full -all -t service --no-legend | grep -E "klipper-[[:digit:]].service" | wc -l)
|
||||||
|
fi
|
||||||
|
|
||||||
|
whiptail --title "Install OctoPrint" \
|
||||||
|
--yesno \
|
||||||
|
"$INSTANCE_COUNT Klipper instances were found!
|
||||||
|
|
||||||
|
You need one OctoPrint instance per Klipper instance.
|
||||||
|
|
||||||
|
Create $INSTANCE_COUNT OctoPrint instances?" \
|
||||||
|
"$KIAUH_WHIPTAIL_NORMAL_HEIGHT" "$KIAUH_WHIPTAIL_NORMAL_WIDTH"
|
||||||
|
|
||||||
|
local out=$?
|
||||||
|
if [ $out -eq 0 ]; then
|
||||||
|
status_msg "Creating $INSTANCE_COUNT OctoPrint instances ..."
|
||||||
|
octoprint_setup
|
||||||
|
else
|
||||||
|
whiptail --title "$KIAUH_TITLE" --msgbox "Exiting OctoPrint Install" \
|
||||||
|
"$KIAUH_WHIPTAIL_SINGLE_LINE_HEIGHT" "$KIAUH_WHIPTAIL_NORMAL_WIDTH"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user