use symlink to cln-plugins-enabled for all plugins

This commit is contained in:
openoms
2021-06-29 17:49:57 +01:00
parent 055cc338a9
commit 41f5d4d3b4
2 changed files with 38 additions and 51 deletions

View File

@@ -33,8 +33,9 @@ function install() {
sudo -u bitcoin pip install --user -r ${plugindir}/${plugin}/requirements.txt sudo -u bitcoin pip install --user -r ${plugindir}/${plugin}/requirements.txt
sudo chmod +x ${plugindir}/${plugin}/${plugin}.py sudo chmod +x ${plugindir}/${plugin}/${plugin}.py
# symlink to the default plugin dir # symlink to the default plugin dir
if [ ! -L /home/bitcoin/cln-plugins-enabled/backup ];then if [ ! -L /home/bitcoin/${netprefix}cln-plugins-enabled/backup ];then
sudo ln -s /home/bitcoin/cln-plugins-available/plugins/backup /home/bitcoin/cln-plugins-enabled/ sudo ln -s /home/bitcoin/cln-plugins-available/plugins/backup \
/home/bitcoin/${netprefix}cln-plugins-enabled/
fi fi
fi fi
} }
@@ -46,7 +47,7 @@ if [ $1 = on ];then
# initialize # initialize
if [ ! -f /home/bitcoin/.lightning/${CLNETWORK}/backup.lock ];then if [ ! -f /home/bitcoin/.lightning/${CLNETWORK}/backup.lock ];then
# https://github.com/lightningd/plugins/tree/master/backup#setup # https://github.com/lightningd/plugins/tree/master/backup#setup
/home/bitcoin/cln-plugins-enabled/backup/backup-cli init\ /home/bitcoin/${netprefix}cln-plugins-enabled/backup/backup-cli init\
--lightning-dir /home/bitcoin/.lightning/${CLNETWORK} \ --lightning-dir /home/bitcoin/.lightning/${CLNETWORK} \
file:///home/bitcoin/${netprefix}lightningd.sqlite3.backup file:///home/bitcoin/${netprefix}lightningd.sqlite3.backup
fi fi
@@ -74,7 +75,7 @@ elif [ $1 = restore ];then
fi fi
# restore # restore
/home/bitcoin/cln-plugins-enabled/backup/backup-cli restore \ /home/bitcoin/${netprefix}cln-plugins-enabled/backup/backup-cli restore \
file:///home/bitcoin/${netprefix}lightningd.sqlite3.backup \ file:///home/bitcoin/${netprefix}lightningd.sqlite3.backup \
/home/bitcoin/.lightning/${CLNETWORK}/lightningd.sqlite3 /home/bitcoin/.lightning/${CLNETWORK}/lightningd.sqlite3

View File

@@ -2,7 +2,7 @@
# explanation on paths https://github.com/ElementsProject/lightning/issues/4223 # explanation on paths https://github.com/ElementsProject/lightning/issues/4223
# built-in path dir: /usr/local/libexec/c-lightning/plugins/ # built-in path dir: /usr/local/libexec/c-lightning/plugins/
# added --plugin-dir=/home/bitcoin/cln-plugins-enabled # added --plugin-dir=/home/bitcoin/${netprefix}cln-plugins-enabled
SPARKOVERSION="v2.7" SPARKOVERSION="v2.7"
@@ -17,23 +17,8 @@ if [ $# -lt 2 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ];then
exit 1 exit 1
fi fi
# CHAIN is signet | testnet | mainnet # source <(/home/admin/config.scripts/network.aliases.sh getvars cln <mainnet|testnet|signet>)
CHAIN=$2 source <(/home/admin/config.scripts/network.aliases.sh getvars cln $2)
# prefix for parallel services
if [ ${CHAIN} = testnet ];then
netprefix="t"
clnetwork="testnet"
portprefix=1
elif [ ${CHAIN} = signet ];then
netprefix="s"
clnetwork="signet"
portprefix=3
elif [ ${CHAIN} = mainnet ];then
netprefix=""
clnetwork="bitcoin"
portprefix=""
fi
# show info menu # show info menu
if [ "$1" = "menu" ]; then if [ "$1" = "menu" ]; then
@@ -106,12 +91,19 @@ if [ $1 = on ];then
DISTRO="linux_amd64" DISTRO="linux_amd64"
fi fi
sudo -u bitcoin mkdir /home/bitcoin/cln-plugins-enabled if [ ! -f /home/bitcoin/cln-plugins-available/sparko ];then
sudo -u bitcoin mkdir /home/bitcoin/cln-plugins-available
# download binary # download binary
sudo -u bitcoin wget https://github.com/fiatjaf/sparko/releases/download/${SPARKOVERSION}/sparko_${DISTRO}\ sudo -u bitcoin wget https://github.com/fiatjaf/sparko/releases/download/${SPARKOVERSION}/sparko_${DISTRO}\
-O /home/bitcoin/cln-plugins-enabled/sparko || exit 1 -O /home/bitcoin/${netprefix}cln-plugins-available/sparko || exit 1
# make executable # make executable
sudo chmod +x /home/bitcoin/cln-plugins-enabled/sparko sudo chmod +x /home/bitcoin/cln-plugins-available/sparko
fi
if [ ! -L /home/bitcoin/${netprefix}cln-plugins-enabled/sparko ];then
sudo ln -s /home/bitcoin/cln-plugins-available/sparko \
/home/bitcoin/${netprefix}cln-plugins-enabled
fi
if [ ! -f /home/bitcoin/.lightning/sparko-tls/key.pem ];then if [ ! -f /home/bitcoin/.lightning/sparko-tls/key.pem ];then
# create a self signed cert https://github.com/fiatjaf/sparko#how-to-use # create a self signed cert https://github.com/fiatjaf/sparko#how-to-use
@@ -124,6 +116,9 @@ if [ $1 = on ];then
/home/bitcoin/.lightning/sparko-tls/cert.pem /home/bitcoin/.lightning/sparko-tls/cert.pem
fi fi
##########
# Config #
##########
if ! grep -Eq "^sparko" /home/bitcoin/.lightning/${netprefix}config;then if ! grep -Eq "^sparko" /home/bitcoin/.lightning/${netprefix}config;then
echo "# Editing /home/bitcoin/.lightning/${netprefix}config" echo "# Editing /home/bitcoin/.lightning/${netprefix}config"
echo "# See: https://github.com/fiatjaf/sparko#how-to-use" echo "# See: https://github.com/fiatjaf/sparko#how-to-use"
@@ -144,17 +139,10 @@ sparko-keys=${masterkeythatcandoeverything}; ${secretaccesskeythatcanreadstuff}:
echo "# Sparko is already configured in the /home/bitcoin/.lightning/${netprefix}config" echo "# Sparko is already configured in the /home/bitcoin/.lightning/${netprefix}config"
fi fi
echo "# Editing /etc/systemd/system/${netprefix}lightningd.service" ###################
sudo sed -i "s#^ExecStart=.*#ExecStart=/usr/local/bin/lightningd\ # Systemd service #
--conf=/home/bitcoin/.lightning/${netprefix}config\ ###################
--plugin=/home/bitcoin/cln-plugins-enabled/sparko#g"\ /home/admin/config.scripts/cln.install-service.sh $CHAIN
/etc/systemd/system/${netprefix}lightningd.service
sudo systemctl daemon-reload
source /home/admin/raspiblitz.info
if [ "${state}" == "ready" ]; then
sudo systemctl restart ${netprefix}lightningd
fi
echo "# Allowing port ${portprefix}9000 through the firewall" echo "# Allowing port ${portprefix}9000 through the firewall"
sudo ufw allow "${portprefix}9000" comment "${netprefix}sparko" sudo ufw allow "${portprefix}9000" comment "${netprefix}sparko"
@@ -167,29 +155,27 @@ sparko-keys=${masterkeythatcandoeverything}; ${secretaccesskeythatcanreadstuff}:
sleep 5 sleep 5
# show some logs # show some logs
sudo tail -n100 /home/bitcoin/.lightning/${clnetwork}/cl.log | grep sparko sudo tail -n100 /home/bitcoin/.lightning/${CLNETWORK}/cl.log | grep sparko
netstat -tulpn | grep "${portprefix}9000" netstat -tulpn | grep "${portprefix}9000"
echo "# Sparko was installed" echo "# Sparko was installed"
echo "# Monitor with:" echo "# Monitor with:"
echo "sudo journalctl | grep sparko | tail -n5" echo "sudo journalctl | grep sparko | tail -n5"
echo "sudo tail -n 100 -f /home/bitcoin/.lightning/${clnetwork}/cl.log | grep sparko" echo "sudo tail -n 100 -f /home/bitcoin/.lightning/${CLNETWORK}/cl.log | grep sparko"
fi fi
if [ $1 = off ];then if [ $1 = off ];then
# delete symlink
sudo rm -rf /home/bitcoin/${netprefix}cln-plugins-enabled/sparko
echo "# Editing /home/bitcoin/.lightning/${netprefix}config" echo "# Editing /home/bitcoin/.lightning/${netprefix}config"
sudo sed -i "/^sparko/d" /home/bitcoin/.lightning/${netprefix}config sudo sed -i "/^sparko/d" /home/bitcoin/.lightning/${netprefix}config
echo "# Editing /etc/systemd/system/${netprefix}lightningd.service" if [ -f /etc/systemd/system/multi-user.target.wants/slightningd.service ];then
sudo sed -i "s#^ExecStart=*#ExecStart=/usr/local/bin/lightningd\ /home/admin/config.scripts/cln.install-service.sh $CHAIN
--conf=/home/bitcoin/.lightning/${netprefix}config#"\
/etc/systemd/system/${netprefix}lightningd.service
sudo systemctl daemon-reload
source /home/admin/raspiblitz.info
if [ "${state}" == "ready" ]; then
sudo systemctl restart ${netprefix}lightningd
fi fi
echo "# Deny port ${portprefix}9000 through the firewall" echo "# Deny port ${portprefix}9000 through the firewall"
sudo ufw deny "${portprefix}9000" sudo ufw deny "${portprefix}9000"
@@ -198,7 +184,7 @@ if [ $1 = off ];then
# purge # purge
if [ "$(echo "$@" | grep -c purge)" -gt 0 ];then if [ "$(echo "$@" | grep -c purge)" -gt 0 ];then
echo "# Delete plugin" echo "# Delete plugin"
sudo rm /home/bitcoin/cln-plugins-enabled/${netprefix}sparko sudo rm -rf /home/bitcoin/cln-plugins-available/sparko
fi fi
# setting value in raspi blitz config # setting value in raspi blitz config
sudo sed -i "s/^${netprefix}sparko=.*/${netprefix}sparko=off/g" /mnt/hdd/raspiblitz.conf sudo sed -i "s/^${netprefix}sparko=.*/${netprefix}sparko=off/g" /mnt/hdd/raspiblitz.conf