mirror of
https://github.com/rootzoll/raspiblitz.git
synced 2024-11-19 01:40:16 +01:00
206 lines
6.4 KiB
Bash
206 lines
6.4 KiB
Bash
#!/bin/bash
|
|
|
|
# get raspiblitz config
|
|
echo "get raspiblitz config"
|
|
source /home/admin/raspiblitz.info
|
|
source /mnt/hdd/raspiblitz.conf
|
|
|
|
CHAIN=mainnet
|
|
|
|
# for testnet
|
|
echo "services default values"
|
|
if [ ${#rtlWebinterface} -eq 0 ]; then rtlWebinterface="off"; fi
|
|
if [ ${#lnd} -eq 0 ]; then lnd="off"; fi
|
|
if [ ${#cl} -eq 0 ]; then cl="off"; fi
|
|
if [ ${#crtlWebinterface} -eq 0 ]; then crtlWebinterface="off"; fi
|
|
if [ ${#sparko} -eq 0 ]; then sparko="off"; fi
|
|
if [ ${#spark} -eq 0 ]; then spark="off"; fi
|
|
|
|
# show select dialog
|
|
echo "run dialog ..."
|
|
|
|
OPTIONS=()
|
|
OPTIONS+=(l "LND on $CHAIN" ${lnd})
|
|
OPTIONS+=(r "RTL for LND $CHAIN" ${rtlWebinterface})
|
|
OPTIONS+=(c "Core Lightning on $CHAIN" ${cl})
|
|
OPTIONS+=(t "RTL for CL on $CHAIN" ${crtlWebinterface})
|
|
OPTIONS+=(s "Sparko for CL on $CHAIN" ${sparko})
|
|
OPTIONS+=(m "Spark for CL on $CHAIN" ${spark})
|
|
|
|
CHOICES=$(dialog --title ' Additional Services ' \
|
|
--checklist ' use spacebar to activate/de-activate ' \
|
|
12 45 5 "${OPTIONS[@]}" 2>&1 >/dev/tty)
|
|
|
|
dialogcancel=$?
|
|
echo "done dialog"
|
|
clear
|
|
|
|
# check if user canceled dialog
|
|
echo "dialogcancel(${dialogcancel})"
|
|
if [ ${dialogcancel} -eq 1 ]; then
|
|
echo "user canceled"
|
|
exit 0
|
|
elif [ ${dialogcancel} -eq 255 ]; then
|
|
echo "ESC pressed"
|
|
exit 0
|
|
fi
|
|
|
|
needsReboot=0
|
|
anychange=0
|
|
|
|
# lnd process choice
|
|
choice="off"; check=$(echo "${CHOICES}" | grep -c "l")
|
|
if [ ${check} -eq 1 ]; then choice="on"; fi
|
|
if [ "${lnd}" != "${choice}" ]; then
|
|
echo "# LND on $CHAIN Setting changed .."
|
|
anychange=1
|
|
/home/admin/config.scripts/lnd.install.sh ${choice} $CHAIN
|
|
errorOnInstall=$?
|
|
if [ "${choice}" = "on" ]; then
|
|
if [ ${errorOnInstall} -eq 0 ]; then
|
|
echo "# Successfully installed LND on $CHAIN"
|
|
else
|
|
l1="# FAIL on LND on $CHAIN install #"
|
|
l2="# Try manual install on terminal after reboot with:"
|
|
l3="/home/admin/config.scripts/lnd.install.sh on $CHAIN"
|
|
dialog --title 'FAIL' --msgbox "${l1}\n${l2}\n${l3}" 7 65
|
|
fi
|
|
fi
|
|
else
|
|
echo "# LND on $CHAIN Setting unchanged."
|
|
fi
|
|
|
|
# cl process choice
|
|
choice="off"; check=$(echo "${CHOICES}" | grep -c "c")
|
|
if [ ${check} -eq 1 ]; then choice="on"; fi
|
|
if [ "${cl}" != "${choice}" ]; then
|
|
echo "# CL on $CHAIN Setting changed .."
|
|
anychange=1
|
|
/home/admin/config.scripts/cl.install.sh ${choice} $CHAIN
|
|
errorOnInstall=$?
|
|
if [ "${choice}" = "on" ]; then
|
|
if [ ${errorOnInstall} -eq 0 ]; then
|
|
echo "# Successfully installed CL on $CHAIN"
|
|
# for mainnet only
|
|
# generate wallet from seedwords
|
|
/home/admin/config.scripts/cl.hsmtool.sh new $CHAIN
|
|
else
|
|
l1="# FAIL on CL on $CHAIN install #"
|
|
l2="# Try manual install on terminal after reboot with:"
|
|
l3="/home/admin/config.scripts/cl.install.sh on $CHAIN"
|
|
dialog --title 'FAIL' --msgbox "${l1}\n${l2}\n${l3}" 7 65
|
|
fi
|
|
fi
|
|
else
|
|
echo "# CL on $CHAIN Setting unchanged."
|
|
fi
|
|
|
|
# RTL process choice
|
|
choice="off"; check=$(echo "${CHOICES}" | grep -c "r")
|
|
if [ ${check} -eq 1 ]; then choice="on"; fi
|
|
if [ "${rtlWebinterface}" != "${choice}" ]; then
|
|
echo "# RTL for LND $CHAIN Setting changed .."
|
|
anychange=1
|
|
/home/admin/config.scripts/bonus.rtl.sh ${choice} lnd $CHAIN
|
|
errorOnInstall=$?
|
|
if [ "${choice}" = "on" ]; then
|
|
if [ ${errorOnInstall} -eq 0 ]; then
|
|
sudo systemctl start RTL
|
|
echo "# waiting 10 secs .."
|
|
sleep 10
|
|
/home/admin/config.scripts/bonus.rtl.sh menu lnd $CHAIN
|
|
else
|
|
l1="# FAIL on RTL for LND $CHAIN install #"
|
|
l2="# Try manual install on terminal after reboot with:"
|
|
l3="/home/admin/config.scripts/bonus.rtl.sh on lnd $CHAIN"
|
|
dialog --title 'FAIL' --msgbox "${l1}\n${l2}\n${l3}" 7 65
|
|
fi
|
|
fi
|
|
else
|
|
echo "# RTL for LND $CHAIN Setting unchanged."
|
|
fi
|
|
|
|
# cRTL process choice
|
|
choice="off"; check=$(echo "${CHOICES}" | grep -c "t")
|
|
if [ ${check} -eq 1 ]; then choice="on"; fi
|
|
if [ "${crtlWebinterface}" != "${choice}" ]; then
|
|
echo "RTL for CL $CHAIN Setting changed .."
|
|
anychange=1
|
|
/home/admin/config.scripts/bonus.rtl.sh ${choice} cl $CHAIN
|
|
errorOnInstall=$?
|
|
if [ "${choice}" = "on" ]; then
|
|
if [ ${errorOnInstall} -eq 0 ]; then
|
|
sudo systemctl start cRTL
|
|
echo "waiting 10 secs .."
|
|
sleep 10
|
|
/home/admin/config.scripts/bonus.rtl.sh menu cl $CHAIN
|
|
else
|
|
l1="# FAIL on RTL for CL $CHAIN install #"
|
|
l2="Try manual install on terminal after reboot with:"
|
|
l3="/home/admin/config.scripts/bonus.rtl.sh on cl $CHAIN"
|
|
dialog --title 'FAIL' --msgbox "${l1}\n${l2}\n${l3}" 7 65
|
|
fi
|
|
fi
|
|
else
|
|
echo "RTL for CL $CHAIN Setting unchanged."
|
|
fi
|
|
|
|
# sparko process choice
|
|
choice="off"; check=$(echo "${CHOICES}" | grep -c "s")
|
|
if [ ${check} -eq 1 ]; then choice="on"; fi
|
|
if [ "${sparko}" != "${choice}" ]; then
|
|
echo "# Sparko on $CHAIN Setting changed .."
|
|
anychange=1
|
|
/home/admin/config.scripts/cl-plugin.sparko.sh ${choice} $CHAIN
|
|
errorOnInstall=$?
|
|
if [ "${choice}" = "on" ]; then
|
|
if [ ${errorOnInstall} -eq 0 ]; then
|
|
/home/admin/config.scripts/cl-plugin.sparko.sh menu $CHAIN
|
|
else
|
|
l1="# FAIL on Sparko on $CHAIN install #"
|
|
l2="# Try manual install on terminal after reboot with:"
|
|
l3="/home/admin/config.scripts/cl-plugin.sparko.sh on $CHAIN"
|
|
dialog --title 'FAIL' --msgbox "${l1}\n${l2}\n${l3}" 7 65
|
|
fi
|
|
fi
|
|
else
|
|
echo "# Sparko on $CHAIN Setting unchanged."
|
|
fi
|
|
|
|
# spark process choice
|
|
choice="off"; check=$(echo "${CHOICES}" | grep -c "m")
|
|
if [ ${check} -eq 1 ]; then choice="on"; fi
|
|
if [ "${spark}" != "${choice}" ]; then
|
|
echo "# Spark Wallet on $CHAIN Setting changed .."
|
|
anychange=1
|
|
/home/admin/config.scripts/cl.spark.sh ${choice} $CHAIN
|
|
errorOnInstall=$?
|
|
if [ "${choice}" = "on" ]; then
|
|
if [ ${errorOnInstall} -eq 0 ]; then
|
|
/home/admin/config.scripts/cl.spark.sh menu $CHAIN
|
|
else
|
|
l1="# FAIL on Spark Wallet on $CHAIN install #"
|
|
l2="# Try manual install on terminal after reboot with:"
|
|
l3="/home/admin/config.scripts/cl.spark.sh on $CHAIN"
|
|
dialog --title 'FAIL' --msgbox "${l1}\n${l2}\n${l3}" 7 65
|
|
fi
|
|
fi
|
|
else
|
|
echo "# Spark Wallet on $CHAIN Setting unchanged."
|
|
fi
|
|
|
|
if [ ${anychange} -eq 0 ]; then
|
|
dialog --msgbox "NOTHING CHANGED!\nUse Spacebar to check/uncheck services." 8 58
|
|
exit 0
|
|
fi
|
|
|
|
if [ ${needsReboot} -eq 1 ]; then
|
|
sleep 2
|
|
dialog --pause "OK. System will reboot to activate changes." 8 58 8
|
|
clear
|
|
echo "rebooting .. (please wait)"
|
|
# stop bitcoind
|
|
sudo -u bitcoin ${network}-cli stop
|
|
sleep 4
|
|
sudo /home/admin/config.scripts/blitz.shutdown.sh reboot
|
|
fi |