mirror of
https://github.com/dw-0/kiauh.git
synced 2025-12-13 02:24:27 +05:00
81 lines
2.3 KiB
Bash
81 lines
2.3 KiB
Bash
install_klipperscreen(){
|
|
python3_check
|
|
if [ $py_chk_ok = "true" ]; then
|
|
source_kiauh_ini
|
|
system_check_klipperscreen
|
|
#ask user for customization
|
|
get_user_selections_klipperscreen
|
|
#KlipperScreen main installation
|
|
klipperscreen_setup
|
|
#execute customizations
|
|
symlinks_klipperscreen
|
|
#after install actions
|
|
restart_klipperscreen
|
|
else
|
|
ERROR_MSG="Python 3.7 or above required!\n Please upgrade your Python version first."
|
|
print_msg && clear_msg
|
|
fi
|
|
}
|
|
|
|
python3_check(){
|
|
status_msg "Your Python 3 version is: $(python3 --version)"
|
|
major=$(python3 --version | cut -d" " -f2 | cut -d"." -f1)
|
|
minor=$(python3 --version | cut -d"." -f2)
|
|
if [ $major -ge 3 ] && [ $minor -ge 7 ]; then
|
|
ok_msg "Python version ok!"
|
|
py_chk_ok="true"
|
|
else
|
|
py_chk_ok="false"
|
|
fi
|
|
}
|
|
|
|
system_check_klipperscreen(){
|
|
[ ! -e $klipper_cfg_loc/KlipperScreen.log ] && KLIPPERSCREEN_SL_FOUND="false"
|
|
}
|
|
|
|
get_user_selections_klipperscreen(){
|
|
#user selection for KlipperScreen.log symlink
|
|
if [ "$KLIPPERSCREEN_SL_FOUND" = "false" ]; then
|
|
while true; do
|
|
echo
|
|
read -p "${cyan}###### Create KlipperScreen.log symlink? (y/N):${default} " yn
|
|
case "$yn" in
|
|
Y|y|Yes|yes)
|
|
echo -e "###### > Yes"
|
|
SEL_KSLOG_SL="true"
|
|
break;;
|
|
N|n|No|no|"")
|
|
echo -e "###### > No"
|
|
SEL_KSLOG_SL="false"
|
|
break;;
|
|
*)
|
|
print_unkown_cmd
|
|
print_msg && clear_msg;;
|
|
esac
|
|
done
|
|
fi
|
|
}
|
|
|
|
klipperscreen_setup(){
|
|
dep=(wget curl unzip dfu-util)
|
|
dependency_check
|
|
status_msg "Downloading KlipperScreen ..."
|
|
#force remove existing KlipperScreen dir
|
|
[ -d $KLIPPERSCREEN_DIR ] && rm -rf $KLIPPERSCREEN_DIR
|
|
#clone into fresh KlipperScreen dir
|
|
cd ${HOME} && git clone $KLIPPERSCREEN_REPO
|
|
ok_msg "Download complete!"
|
|
status_msg "Installing KlipperScreen ..."
|
|
$KLIPPERSCREEN_DIR/scripts/KlipperScreen-install.sh
|
|
echo; ok_msg "KlipperScreen successfully installed!"
|
|
}
|
|
|
|
symlinks_klipperscreen(){
|
|
#create a KlipperScreen.log symlink in klipper_config-dir just for convenience
|
|
if [ "$SEL_KSLOG_SL" = "true" ] && [ ! -e $klipper_cfg_loc/KlipperScreen.log ]; then
|
|
status_msg "Creating KlipperScreen.log symlink ..."
|
|
ln -s /tmp/KlipperScreen.log $klipper_cfg_loc
|
|
ok_msg "Symlink created!"
|
|
fi
|
|
}
|