mirror of
https://github.com/QIDITECH/moonraker.git
synced 2026-01-31 16:48:44 +03:00
PLUS4的moonraker
This commit is contained in:
65
scripts/data-path-fix.sh
Normal file
65
scripts/data-path-fix.sh
Normal file
@@ -0,0 +1,65 @@
|
||||
#!/bin/bash
|
||||
# Data Path Fix for legacy MainsailOS and FluiddPi installations running
|
||||
# a single instance of Moonraker with a default configuration
|
||||
|
||||
DATA_PATH="${HOME}/printer_data"
|
||||
DATA_PATH_BKP="${HOME}/.broken_printer_data"
|
||||
DB_PATH="${HOME}/.moonraker_database"
|
||||
CONFIG_PATH="${HOME}/klipper_config"
|
||||
LOG_PATH="${HOME}/klipper_logs"
|
||||
GCODE_PATH="${HOME}/gcode_files"
|
||||
MOONRAKER_CONF="${CONFIG_PATH}/moonraker.conf"
|
||||
MOONRAKER_LOG="${LOG_PATH}/moonraker.log"
|
||||
ALIAS="moonraker"
|
||||
|
||||
# Parse command line arguments
|
||||
while getopts "c:l:d:a:m:g:" arg; do
|
||||
case $arg in
|
||||
c)
|
||||
MOONRAKER_CONF=$OPTARG
|
||||
CONFIG_PATH="$( dirname $OPTARG )"
|
||||
;;
|
||||
l)
|
||||
MOONRAKER_LOG=$OPTARG
|
||||
LOG_PATH="$( dirname $OPTARG )"
|
||||
;;
|
||||
d)
|
||||
DATA_PATH=$OPTARG
|
||||
dpbase="$( basename $OPTARG )"
|
||||
DATA_PATH_BKP="${HOME}/.broken_${dpbase}"
|
||||
;;
|
||||
a)
|
||||
ALIAS=$OPTARG
|
||||
;;
|
||||
m)
|
||||
DB_PATH=$OPTARG
|
||||
[ ! -f "${DB_PATH}/data.mdb" ] && echo "No valid database found at ${DB_PATH}" && exit 1
|
||||
;;
|
||||
g)
|
||||
GCODE_PATH=$OPTARG
|
||||
[ ! -d "${GCODE_PATH}" ] && echo "No GCode Path found at ${GCODE_PATH}" && exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
[ ! -f "${MOONRAKER_CONF}" ] && echo "Error: unable to find config: ${MOONRAKER_CONF}" && exit 1
|
||||
[ ! -d "${LOG_PATH}" ] && echo "Error: unable to find log path: ${LOG_PATH}" && exit 1
|
||||
|
||||
sudo systemctl stop ${ALIAS}
|
||||
|
||||
[ -d "${DATA_PATH_BKP}" ] && rm -rf ${DATA_PATH_BKP}
|
||||
[ -d "${DATA_PATH}" ] && echo "Moving broken datapath to ${DATA_PATH_BKP}" && mv ${DATA_PATH} ${DATA_PATH_BKP}
|
||||
|
||||
mkdir ${DATA_PATH}
|
||||
|
||||
echo "Creating symbolic links..."
|
||||
[ -f "${DB_PATH}/data.mdb" ] && ln -s ${DB_PATH} "$DATA_PATH/database"
|
||||
[ -d "${GCODE_PATH}" ] && ln -s ${GCODE_PATH} "$DATA_PATH/gcodes"
|
||||
ln -s ${LOG_PATH} "$DATA_PATH/logs"
|
||||
ln -s ${CONFIG_PATH} "$DATA_PATH/config"
|
||||
|
||||
[ -f "${DB_PATH}/data.mdb" ] && ~/moonraker-env/bin/python -mlmdb -e ${DB_PATH} -d moonraker edit --delete=validate_install
|
||||
|
||||
echo "Running Moonraker install script..."
|
||||
|
||||
~/moonraker/scripts/install-moonraker.sh -f -a ${ALIAS} -d ${DATA_PATH} -c ${MOONRAKER_CONF} -l ${MOONRAKER_LOG}
|
||||
Reference in New Issue
Block a user