mirror of
https://github.com/rootzoll/raspiblitz.git
synced 2025-02-24 06:48:00 +01:00
88 lines
2.6 KiB
Bash
Executable file
88 lines
2.6 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# command info
|
|
if [ "$1" = "-h" ] || [ "$1" = "-help" ]; then
|
|
echo "small config script to set a alias of LND (and hostname of raspi)"
|
|
echo "lnd.setname.sh [mainnet|testnet|signet] [?newName] [?forceHostname]"
|
|
exit 1
|
|
fi
|
|
|
|
# 1. parameter [?newName]
|
|
newName=$2
|
|
|
|
source <(/home/admin/config.scripts/network.aliases.sh getvars lnd $1)
|
|
|
|
function setting() # FILE LINENUMBER NAME VALUE
|
|
{
|
|
FILE=$1
|
|
LINENUMBER=$2
|
|
NAME=$3
|
|
VALUE=$4
|
|
settingExists=$(cat ${FILE} | grep -c "^${NAME}=")
|
|
echo "# setting ${FILE} ${LINENUMBER} ${NAME} ${VALUE}"
|
|
echo "# ${NAME} exists->(${settingExists})"
|
|
if [ "${settingExists}" == "0" ]; then
|
|
echo "# adding setting (${NAME})"
|
|
sudo -u bitcoin sed -i "${LINENUMBER}i${NAME}=" ${FILE}
|
|
fi
|
|
echo "# updating setting (${NAME}) with value(${VALUE})"
|
|
sudo -u bitcoin sed -i "s/^${NAME}=.*/${NAME}=${VALUE}/g" ${FILE}
|
|
}
|
|
|
|
# run interactive if 'turn on' && no further parameters
|
|
if [ ${#newName} -eq 0 ]; then
|
|
|
|
sudo rm ./.tmp
|
|
dialog --backtitle "Set LND Name/Alias" --inputbox "ENTER the new Name/Alias for LND node:
|
|
(free to choose, one word, use basic characters)
|
|
" 8 52 2>./.tmp
|
|
newName=$( cat ./.tmp | tr -dc '[:alnum:]\n\r' )
|
|
if [ ${#newName} -eq 0 ]; then
|
|
echo "FAIL input cannot be empty"
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
# check if lnd config file exists
|
|
configExists=$(ls ${lndConfFile} | grep -c '.conf')
|
|
if [ ${configExists} -eq 0 ]; then
|
|
echo "FAIL - missing ${lndConfFile}"
|
|
exit 1
|
|
fi
|
|
|
|
sectionLine=$(cat ${lndConfFile} | grep -n "^\[Application Options\]" | cut -d ":" -f1)
|
|
echo "# sectionLine(${sectionLine})"
|
|
insertLine=$(expr $sectionLine + 1)
|
|
|
|
# lnd.conf: change name
|
|
setting ${lndConfFile} ${insertLine} "alias" "${newName}"
|
|
|
|
# raspiblitz.conf: change name
|
|
/home/admin/config.scripts/blitz.conf.sh set hostname "${newName}"
|
|
|
|
# set name in local network just if forced (not anymore by default)
|
|
# see https://github.com/rootzoll/raspiblitz/issues/819
|
|
if [ "$3" = "alsoNetwork" ]; then
|
|
# OS: change hostname
|
|
sudo raspi-config nonint do_hostname ${newName}
|
|
/home/admin/config.scripts/blitz.conf.sh set setnetworkname "1"
|
|
else
|
|
/home/admin/config.scripts/blitz.conf.sh set setnetworkname "0"
|
|
fi
|
|
|
|
#TODO - no need for full reboot only unlock LND
|
|
#if [ $# -lt 3 ];then
|
|
# source <(/home/admin/_cache.sh get state)
|
|
# if [ "${state}" == "ready" ]; then
|
|
# sudo systemctl start ${netprefix}lnd
|
|
# # signal 1 to not reboot
|
|
# exit 1
|
|
# fi
|
|
#fi
|
|
|
|
echo
|
|
echo "# To activate the new alias:"
|
|
echo "# reboot or restart the lnd.service and unlock with:"
|
|
echo "'sudo systemctl restart lnd && lncli unlock'"
|
|
echo "# Either way it can take hours for the gossip to propagate."
|
|
exit 0
|