Merge pull request #1191 from openoms/add-bos

services: add balance of satoshis
This commit is contained in:
Christian Rotzoll 2020-05-21 23:36:39 +02:00 committed by GitHub
commit 27a06962ce
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 122 additions and 1 deletions

View file

@ -66,6 +66,9 @@ fi
if [ "${faraday}" == "on" ]; then
OPTIONS+=(FARADAY "Faraday Channel Management")
fi
if [ "${bos}" == "on" ]; then
OPTIONS+=(BOS "Balance of Satoshis")
fi
# Basic Options
OPTIONS+=(INFO "RaspiBlitz Status Screen")
@ -166,6 +169,8 @@ case $CHOICE in
;;
FARADAY)
sudo /home/admin/config.scripts/bonus.faraday.sh menu
BOS)
sudo /home/admin/config.scripts/bonus.bos.sh menu
;;
lnbalance)
clear

View file

@ -24,6 +24,7 @@ if [ ${#lndmanage} -eq 0 ]; then lndmanage="off"; fi
if [ ${#joinmarket} -eq 0 ]; then joinmarket="off"; fi
if [ ${#LNBits} -eq 0 ]; then LNBits="off"; fi
if [ ${#faraday} -eq 0 ]; then faraday="off"; fi
if [ ${#bos} -eq 0 ]; then bos="off"; fi
echo "map dropboxbackup to on/off"
DropboxBackup="off";
@ -89,6 +90,7 @@ e 'Electrum Rust Server' ${ElectRS} \
p 'BTCPayServer' ${BTCPayServer} \
m 'lndmanage' ${lndmanage} \
f 'Faraday' ${faraday} \
o 'Balance of Satoshis' ${bos} \
i 'LNbits' ${LNBits} \
d 'StaticChannelBackup on DropBox' ${DropboxBackup} \
j 'JoinMarket' ${joinmarket} \
@ -113,6 +115,7 @@ e 'Electrum Rust Server' ${ElectRS} \
p 'BTCPayServer' ${BTCPayServer} \
m 'lndmanage' ${lndmanage} \
f 'Faraday' ${faraday} \
o 'Balance of Satoshis' ${bos} \
i 'LNbits' ${LNBits} \
d 'StaticChannelBackup on DropBox' ${DropboxBackup} \
j 'JoinMarket' ${joinmarket} \
@ -582,6 +585,22 @@ else
echo "faraday setting unchanged."
fi
# Balance of Satoshis process choice
choice="off"; check=$(echo "${CHOICES}" | grep -c "o")
if [ ${check} -eq 1 ]; then choice="on"; fi
if [ "${bos}" != "${choice}" ]; then
echo "Balance of Satoshis Setting changed .."
anychange=1
sudo -u admin /home/admin/config.scripts/bonus.bos.sh ${choice}
source /mnt/hdd/raspiblitz.conf
if [ "${bos}" = "on" ]; then
sudo -u admin /home/admin/config.scripts/bonus.faraday.sh menu
fi
else
echo "Balance of Satoshis setting unchanged."
fi
# LNbits process choice
choice="off"; check=$(echo "${CHOICES}" | grep -c "i")
if [ ${check} -eq 1 ]; then choice="on"; fi
@ -610,7 +629,7 @@ if [ "${DropboxBackup}" != "${choice}" ]; then
sudo /home/admin/config.scripts/dropbox.upload.sh upload ${dropboxBackupTarget} /home/admin/.lnd/data/chain/${network}/${chain}net/channel.backup
fi
else
echo "lndmanage setting unchanged."
echo "Dropbox backup setting unchanged."
fi
# Keysend process choice

View file

@ -404,6 +404,15 @@ else
echo "Provisioning Faraday - keep default" >> ${logFile}
fi
# BOS
if [ "${bos}" = "on" ]; then
echo "Provisioning Balance of Satoshis - run config script" >> ${logFile}
sudo sed -i "s/^message=.*/message='Setup Balance of Satoshis'/g" ${infoFile}
sudo -u admin /home/admin/config.scripts/bonus.bos.sh on >> ${logFile} 2>&1
else
echo "Provisioning Balance of Satoshis - keep default" >> ${logFile}
fi
# replay backup LND conf & tlscerts
# https://github.com/rootzoll/raspiblitz/issues/324
echo "" >> ${logFile}

View file

@ -0,0 +1,88 @@
#!/bin/bash
# command info
if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then
echo "config script to install or uninstall balance of satoshis"
echo "bonus.bos.sh [on|off|menu]"
exit 1
fi
source /mnt/hdd/raspiblitz.conf
# add default value to raspi config if needed
if ! grep -Eq "^bos=" /mnt/hdd/raspiblitz.conf; then
echo "bos=off" >> /mnt/hdd/raspiblitz.conf
fi
# show info menu
if [ "$1" = "menu" ]; then
dialog --title " Info Balance of Satoshis " --msgbox "\n\
Usage: https://github.com/alexbosworth/balanceofsatoshis/blob/master/README.md
To start type: 'sudo su bos' in the command line.\n
Then see 'bos help' for options.
" 9 75
exit 0
fi
# install
if [ "$1" = "1" ] || [ "$1" = "on" ]; then
if [ "${bos}" == "on" ]; then
echo "# FAIL - bos already installed"
sleep 3
exit 1
fi
echo "*** INSTALL BALANCE OF SATOSHIS ***"
# check and install NodeJS
/home/admin/config.scripts/bonus.nodejs.sh
# create bos user
sudo adduser --disabled-password --gecos "" bos
# set up npm-global
sudo -u bos mkdir /home/bos/.npm-global
sudo -u bos npm config set prefix '/home/bos/.npm-global'
sudo bash -c "echo 'PATH=$PATH:/home/bos/.npm-global/bin' >> /home/bos/.bashrc"
# download source code
sudo -u bos git clone https://github.com/alexbosworth/balanceofsatoshis.git /home/bos/balanceofsatoshis
cd /home/bos/balanceofsatoshis
# make sure symlink to central app-data directory exists ***"
sudo rm -rf /home/bos/.lnd # not a symlink.. delete it silently
# create symlink
sudo ln -s "/mnt/hdd/app-data/lnd/" "/home/bos/.lnd"
# make sure rtl is member of lndadmin
sudo /usr/sbin/usermod --append --groups lndadmin bos
# install bos
sudo -u bos npm install -g balanceofsatoshis@5.36.0
# setting value in raspi blitz config
sudo sed -i "s/^bos=.*/bos=on/g" /mnt/hdd/raspiblitz.conf
echo "# Usage: https://github.com/alexbosworth/balanceofsatoshis/blob/master/README.md"
echo "# To start type: 'sudo su bos' in the command line."
echo "# Then see 'bos help' for options."
echo "# To exit the user - type 'exit' and press ENTER"
exit 0
fi
# switch off
if [ "$1" = "0" ] || [ "$1" = "off" ]; then
# setting value in raspi blitz config
sudo sed -i "s/^bos=.*/bos=off/g" /mnt/hdd/raspiblitz.conf
echo "*** REMOVING BALANCE OF SATOSHIS ***"
sudo userdel -rf bos
echo "# OK, bos is removed."
exit 0
fi
echo "FAIL - Unknown Parameter $1"
exit 1