mirror of
https://github.com/raspiblitz/raspiblitz.git
synced 2025-09-29 21:12:39 +02:00
Bitcoinminds.org to be made available as a service in Raspiblitz (#2933)
This commit is contained in:
@@ -27,6 +27,7 @@ if [ ${#chantools} -eq 0 ]; then chantools="off"; fi
|
|||||||
if [ ${#sparko} -eq 0 ]; then sparko="off"; fi
|
if [ ${#sparko} -eq 0 ]; then sparko="off"; fi
|
||||||
if [ ${#spark} -eq 0 ]; then spark="off"; fi
|
if [ ${#spark} -eq 0 ]; then spark="off"; fi
|
||||||
if [ ${#tallycoinConnect} -eq 0 ]; then tallycoinConnect="off"; fi
|
if [ ${#tallycoinConnect} -eq 0 ]; then tallycoinConnect="off"; fi
|
||||||
|
if [ ${#bitcoinminds} -eq 0 ]; then bitcoinminds="off"; fi
|
||||||
|
|
||||||
# show select dialog
|
# show select dialog
|
||||||
echo "run dialog ..."
|
echo "run dialog ..."
|
||||||
@@ -42,6 +43,7 @@ if [ "${network}" == "bitcoin" ]; then
|
|||||||
OPTIONS+=(a 'BTC Mempool Space' ${mempoolExplorer})
|
OPTIONS+=(a 'BTC Mempool Space' ${mempoolExplorer})
|
||||||
OPTIONS+=(j 'BTC JoinMarket+JoininBox menu' ${joinmarket})
|
OPTIONS+=(j 'BTC JoinMarket+JoininBox menu' ${joinmarket})
|
||||||
OPTIONS+=(w 'BTC Download Bitcoin Whitepaper' ${whitepaper})
|
OPTIONS+=(w 'BTC Download Bitcoin Whitepaper' ${whitepaper})
|
||||||
|
OPTIONS+=(v 'BTC Install BitcoinMinds.org' ${bitcoinminds})
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
@@ -500,6 +502,21 @@ else
|
|||||||
echo "Whitepaper setting unchanged."
|
echo "Whitepaper setting unchanged."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# BitcoinMinds process choice
|
||||||
|
choice="off"; check=$(echo "${CHOICES}" | grep -c "v")
|
||||||
|
if [ ${check} -eq 1 ]; then choice="on"; fi
|
||||||
|
if [ "${bitcoinminds}" != "${choice}" ]; then
|
||||||
|
echo "BitcoinMinds setting changed."
|
||||||
|
anychange=1
|
||||||
|
sudo -u admin /home/admin/config.scripts/bonus.bitcoinminds.sh ${choice}
|
||||||
|
source /mnt/hdd/raspiblitz.conf
|
||||||
|
if [ "${bitcoinminds}" = "on" ]; then
|
||||||
|
sudo -u admin /home/admin/config.scripts/bonus.bitcoinminds.sh menu
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "BitcoinMinds setting unchanged."
|
||||||
|
fi
|
||||||
|
|
||||||
# sparko process choice
|
# sparko process choice
|
||||||
choice="off"; check=$(echo "${CHOICES}" | grep -c "k")
|
choice="off"; check=$(echo "${CHOICES}" | grep -c "k")
|
||||||
if [ ${check} -eq 1 ]; then choice="on"; fi
|
if [ ${check} -eq 1 ]; then choice="on"; fi
|
||||||
|
@@ -394,3 +394,20 @@ function qr() {
|
|||||||
echo "(To shrink QR code: MacOS press CMD- / Linux press CTRL-)"
|
echo "(To shrink QR code: MacOS press CMD- / Linux press CTRL-)"
|
||||||
echo
|
echo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# command: bm
|
||||||
|
# switch to the bitcoinminds user for the 'BitcoinMinds.org' in your local environment
|
||||||
|
function bm() {
|
||||||
|
if [ $(grep -c "bitcoinminds=on" < /mnt/hdd/raspiblitz.conf) -eq 1 ]; then
|
||||||
|
echo ""
|
||||||
|
echo "# ***"
|
||||||
|
echo "# Switching to the bitcoinminds user with the command: 'sudo su - bitcoinminds'"
|
||||||
|
echo "# ***"
|
||||||
|
echo ""
|
||||||
|
sudo su - bitcoinminds
|
||||||
|
echo "# Use command 'raspiblitz' to return to menu"
|
||||||
|
else
|
||||||
|
echo "BitcoinMinds script is not installed - to install run:"
|
||||||
|
echo "sudo /home/admin/config.scripts/bonus.bitcoinminds.sh on"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
118
home.admin/config.scripts/bonus.bitcoinminds.sh
Normal file
118
home.admin/config.scripts/bonus.bitcoinminds.sh
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
BitcoinMindsVersion="v0.1"
|
||||||
|
|
||||||
|
# command info
|
||||||
|
if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then
|
||||||
|
echo "# config script to download and run from your Raspiblitz the BitcoinMinds.org website"
|
||||||
|
echo "# on: installs BitcoinMinds.org and runs a local server"
|
||||||
|
echo "# off: removes all the code"
|
||||||
|
echo "# bonus.bitcoinminds.sh [on|off|menu]"
|
||||||
|
echo "# BitcoinMinds.org installation script $BitcoinMindsVersion"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
source /mnt/hdd/raspiblitz.conf
|
||||||
|
|
||||||
|
# add default value to raspi config if needed
|
||||||
|
if ! grep -Eq "^bitcoinminds=" /mnt/hdd/raspiblitz.conf; then
|
||||||
|
echo "bitcoinminds=off" >> /mnt/hdd/raspiblitz.conf
|
||||||
|
fi
|
||||||
|
|
||||||
|
# show info menu
|
||||||
|
if [ "$1" = "menu" ]; then
|
||||||
|
dialog --title " BitcoinMinds.org Info" --msgbox "
|
||||||
|
This service downloads the full BitcoinMinds.org website in your Raspiblitz, so you can access its interface and Bitcoin resources from your local network, regardless of the internet connection.
|
||||||
|
Use the command 'bm' from the console to start the server.
|
||||||
|
" 11 78
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# switch on
|
||||||
|
if [ "$1" = "1" ] || [ "$1" = "on" ]; then
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "# ***"
|
||||||
|
echo "# Installing BitcoinMinds.org in your Raspiblitz ..."
|
||||||
|
echo "# ***"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# create user
|
||||||
|
sudo adduser --disabled-password --gecos "" bitcoinminds 2>/dev/null
|
||||||
|
|
||||||
|
# add local directory to path and set PATH for the user
|
||||||
|
sudo bash -c "echo 'PATH=\$PATH:/home/bitcoinminds/.local/bin' >> /home/bitcoinminds/.profile"
|
||||||
|
sudo bash -c "echo 'PATH=\$PATH:/home/bitcoinminds/.local/share/composer' >> /home/bitcoinminds/.profile"
|
||||||
|
|
||||||
|
cd /home/bitcoinminds
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "# ***"
|
||||||
|
echo "# Downloading BitcoinMinds.org from GitHub ..."
|
||||||
|
echo "# ***"
|
||||||
|
echo ""
|
||||||
|
sudo -u bitcoinminds git clone https://github.com/raulcano/bitcoinminds.git 2>/dev/null
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "# ***"
|
||||||
|
echo "# Installing packages ..."
|
||||||
|
echo "# ***"
|
||||||
|
echo ""
|
||||||
|
cd /home/bitcoinminds/bitcoinminds/bitcoinminds-ui
|
||||||
|
sudo -u bitcoinminds npm install
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "# ***"
|
||||||
|
echo "# Setting the autostart script for user bitcoinminds"
|
||||||
|
echo "# ***"
|
||||||
|
echo "
|
||||||
|
cd /home/bitcoinminds/bitcoinminds/bitcoinminds-ui
|
||||||
|
npm run serve -- --port 11026
|
||||||
|
" | sudo -u bitcoinminds tee -a /home/bitcoinminds/.bashrc
|
||||||
|
|
||||||
|
|
||||||
|
# setting value in raspi blitz config
|
||||||
|
sudo sed -i "s/^bitcoinminds=.*/bitcoinminds=on/g" /mnt/hdd/raspiblitz.conf
|
||||||
|
|
||||||
|
# add a firewall entry so the web UI is accessible from the local network
|
||||||
|
sudo ufw allow 11026 comment 'bitcoinminds'
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "# ***"
|
||||||
|
echo "# OK - BitcoinMinds installed. Type 'bm' in the console to start the environment."
|
||||||
|
echo "# ***"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
# switch off
|
||||||
|
if [ "$1" = "0" ] || [ "$1" = "off" ]; then
|
||||||
|
isInstalled=1
|
||||||
|
if [ ${isInstalled} -eq 1 ]; then
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "# ***"
|
||||||
|
echo "# Removing BitcoinMinds..."
|
||||||
|
echo "# ***"
|
||||||
|
echo ""
|
||||||
|
# setting value in raspi blitz config
|
||||||
|
sudo sed -i "s/^bitcoinminds=.*/bitcoinminds=off/g" /mnt/hdd/raspiblitz.conf
|
||||||
|
|
||||||
|
# Remove user and stuff here
|
||||||
|
sudo userdel -rf bitcoinminds 2>/dev/null
|
||||||
|
|
||||||
|
# delete firewall entry
|
||||||
|
sudo ufw delete allow 11026 comment 'bitcoinminds'
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "# ***"
|
||||||
|
echo "# OK - BitcoinMinds removed."
|
||||||
|
echo "# ***"
|
||||||
|
echo ""
|
||||||
|
else
|
||||||
|
echo "# BitcoinMinds has not been installed yet."
|
||||||
|
fi
|
||||||
|
exit 0
|
||||||
|
fi
|
Reference in New Issue
Block a user