diff --git a/build_sdcard.sh b/build_sdcard.sh index be7d9956f..5fc8478d8 100644 --- a/build_sdcard.sh +++ b/build_sdcard.sh @@ -796,55 +796,8 @@ echo "Provisioning BLITZ WEB SERVICE" # *** FATPACK *** (can be activated by parameter - see details at start of script) if ${fatpack}; then - echo -e "\n*** FATPACK ***" - - echo "* Adding nodeJS Framework ..." - sudo /home/admin/config.scripts/bonus.nodejs.sh on || exit 1 - - echo "* Optional Packages (may be needed for extended features)" - apt_install qrencode secure-delete fbi msmtp unclutter xterm python3-pyqt5 xfonts-terminus apache2-utils nginx python3-jinja2 socat libatlas-base-dev hexyl autossh - - echo "* Adding LND ..." - /home/admin/config.scripts/lnd.install.sh install || exit 1 - - echo "* Adding Core Lightning ..." - /home/admin/config.scripts/cl.install.sh install || exit 1 - echo "* Adding the cln-grpc plugin ..." - /home/admin/config.scripts/cl-plugin.cln-grpc.sh install || exit 1 - - # *** AUTO UPDATE FALLBACK NODE LIST FROM INTERNET (only in fatpack) - echo "*** FALLBACK NODE LIST ***" - # see https://github.com/rootzoll/raspiblitz/issues/1888 - sudo -u admin curl -H "Accept: application/json; indent=4" https://bitnodes.io/api/v1/snapshots/latest/ -o /home/admin/fallback.bitnodes.nodes - # Fallback Nodes List from Bitcoin Core - sudo -u admin curl https://raw.githubusercontent.com/bitcoin/bitcoin/master/contrib/seeds/nodes_main.txt -o /home/admin/fallback.bitcoin.nodes - - echo "* Adding Code&Compile for WEBUI-APP: LNBITS" - /home/admin/config.scripts/bonus.lnbits.sh install || exit 1 - echo "* Adding Code&Compile for WEBUI-APP: JAM" - /home/admin/config.scripts/bonus.jam.sh install || exit 1 - echo "* Adding Code&Compile for WEBUI-APP: BTCPAYSERVER" - /home/admin/config.scripts/bonus.btcpayserver.sh install || exit 1 - echo "* Adding Code&Compile for WEBUI-APP: RTL" - /home/admin/config.scripts/bonus.rtl.sh install || exit 1 - echo "* Adding Code&Compile for WEBUI-APP: THUNDERHUB" - /home/admin/config.scripts/bonus.thunderhub.sh install || exit 1 - echo "* Adding Code&Compile for WEBUI-APP: BTC RPC EXPLORER" - /home/admin/config.scripts/bonus.btc-rpc-explorer.sh install || exit 1 - echo "* Adding Code&Compile for WEBUI-APP: MEMPOOL" - /home/admin/config.scripts/bonus.mempool.sh install || exit 1 - - echo "* Adding Raspiblitz API ..." - sudo /home/admin/config.scripts/blitz.web.api.sh on "${defaultAPIuser}" "${defaultAPIrepo}" "blitz-${branch}" || exit 1 - echo "* Adding Raspiblitz WebUI ..." - sudo /home/admin/config.scripts/blitz.web.ui.sh on "${defaultWEBUIuser}" "${defaultWEBUIrepo}" "release/${branch}" || exit 1 - - # set build code as new default - sudo rm -r /home/admin/assets/nginx/www_public - sudo cp -a /home/blitzapi/blitz_web/build/* /home/admin/assets/nginx/www_public - sudo chown admin:admin /home/admin/assets/nginx/www_public - sudo rm -r /home/blitzapi/blitz_web/build/* - + echo "* FATPACK activated" + /home/admin/config.scripts/blitz.fatpack.sh || exit 1 else echo "* skipping FATPACK" fi diff --git a/home.admin/_commands.sh b/home.admin/_commands.sh index 7c575f799..990e7ea1b 100755 --- a/home.admin/_commands.sh +++ b/home.admin/_commands.sh @@ -150,6 +150,15 @@ function release() { fi } +# command: fatpack +function fatpack() { + echo "Command to be called only on a fresh stopped minimal build to re-pack installs." + confirmMsg fatpack + if [ $confirm -eq 1 ]; then + sudo /home/admin/config.scripts/blitz.fatpack.sh + fi +} + # command: debug function debug() { clear diff --git a/home.admin/config.scripts/blitz.fatpack.sh b/home.admin/config.scripts/blitz.fatpack.sh new file mode 100755 index 000000000..2a09486ab --- /dev/null +++ b/home.admin/config.scripts/blitz.fatpack.sh @@ -0,0 +1,57 @@ +#!/bin/bash +# setup script - to be called by build_sdcard.sh or on a stopped minimal build sd card image + +echo -e "\n*** FATPACK ***" + +# check if su +if [ "$EUID" -ne 0 ] + then echo "Please run as root (with sudo)" + exit 1 +fi + +echo "* Adding nodeJS Framework ..." +/home/admin/config.scripts/bonus.nodejs.sh on || exit 1 + +echo "* Optional Packages (may be needed for extended features)" +apt_install qrencode secure-delete fbi msmtp unclutter xterm python3-pyqt5 xfonts-terminus apache2-utils nginx python3-jinja2 socat libatlas-base-dev hexyl autossh + +echo "* Adding LND ..." +/home/admin/config.scripts/lnd.install.sh install || exit 1 + +echo "* Adding Core Lightning ..." +/home/admin/config.scripts/cl.install.sh install || exit 1 +echo "* Adding the cln-grpc plugin ..." +/home/admin/config.scripts/cl-plugin.cln-grpc.sh install || exit 1 + +# *** AUTO UPDATE FALLBACK NODE LIST FROM INTERNET (only in fatpack) +echo "*** FALLBACK NODE LIST ***" +# see https://github.com/rootzoll/raspiblitz/issues/1888 +sudo -u admin curl -H "Accept: application/json; indent=4" https://bitnodes.io/api/v1/snapshots/latest/ -o /home/admin/fallback.bitnodes.nodes +# Fallback Nodes List from Bitcoin Core +sudo -u admin curl https://raw.githubusercontent.com/bitcoin/bitcoin/master/contrib/seeds/nodes_main.txt -o /home/admin/fallback.bitcoin.nodes + +echo "* Adding Code&Compile for WEBUI-APP: LNBITS" +/home/admin/config.scripts/bonus.lnbits.sh install || exit 1 +echo "* Adding Code&Compile for WEBUI-APP: JAM" +/home/admin/config.scripts/bonus.jam.sh install || exit 1 +echo "* Adding Code&Compile for WEBUI-APP: BTCPAYSERVER" +/home/admin/config.scripts/bonus.btcpayserver.sh install || exit 1 +echo "* Adding Code&Compile for WEBUI-APP: RTL" +/home/admin/config.scripts/bonus.rtl.sh install || exit 1 +echo "* Adding Code&Compile for WEBUI-APP: THUNDERHUB" +/home/admin/config.scripts/bonus.thunderhub.sh install || exit 1 +echo "* Adding Code&Compile for WEBUI-APP: BTC RPC EXPLORER" +/home/admin/config.scripts/bonus.btc-rpc-explorer.sh install || exit 1 +echo "* Adding Code&Compile for WEBUI-APP: MEMPOOL" +/home/admin/config.scripts/bonus.mempool.sh install || exit 1 + +echo "* Adding Raspiblitz API ..." +sudo /home/admin/config.scripts/blitz.web.api.sh on "${defaultAPIuser}" "${defaultAPIrepo}" "blitz-${branch}" || exit 1 +echo "* Adding Raspiblitz WebUI ..." +sudo /home/admin/config.scripts/blitz.web.ui.sh on "${defaultWEBUIuser}" "${defaultWEBUIrepo}" "release/${branch}" || exit 1 + +# set build code as new www default +sudo rm -r /home/admin/assets/nginx/www_public +sudo cp -a /home/blitzapi/blitz_web/build/* /home/admin/assets/nginx/www_public +sudo chown admin:admin /home/admin/assets/nginx/www_public +sudo rm -r /home/blitzapi/blitz_web/build/* \ No newline at end of file diff --git a/home.admin/config.scripts/blitz.git-verify.sh b/home.admin/config.scripts/blitz.git-verify.sh index 5a58dcc13..91ebc6a58 100644 --- a/home.admin/config.scripts/blitz.git-verify.sh +++ b/home.admin/config.scripts/blitz.git-verify.sh @@ -31,6 +31,18 @@ PGPpubkeyLink="$2" PGPpubkeyFingerprint="$3" wget -O /var/cache/raspiblitz/pgp_keys_${PGPsigner}.asc "${PGPpubkeyLink}" + +# in the case the wget above fails, try to use curl instead +if [ $? -ne 0 ]; then + echo "# WARNING --> wget failed to download the PGP key, trying curl instead" >&2 + curl -o /var/cache/raspiblitz/pgp_keys_${PGPsigner}.asc "${PGPpubkeyLink}" + if [ $? -ne 0 ]; then + echo "# ERROR --> curl failed to download the PGP key" >&2 + echo "# Exiting" >&2 + exit 6 + fi +fi + gpg --import --import-options show-only /var/cache/raspiblitz/pgp_keys_${PGPsigner}.asc fingerprint=$(gpg --show-keys --keyid-format LONG /var/cache/raspiblitz/pgp_keys_${PGPsigner}.asc 2>/dev/null | grep "${PGPpubkeyFingerprint}" -c) if [ "${fingerprint}" -lt 1 ]; then