diff --git a/CHANGES.md b/CHANGES.md index 2cec40723..12723df6b 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -3,7 +3,7 @@ - Update: RaspiOS base image from 2023-05-03 - Update: Bitcoin Core v25.0.0 [details](https://github.com/bitcoin/bitcoin/blob/master/doc/release-notes/release-notes-25.0.md) - Update: LND v0.16.4-beta [details](https://github.com/lightningnetwork/lnd/releases/tag/v0.16.4-beta) -- Update: Core Lightning v23.08 [details](https://github.com/ElementsProject/lightning/releases/tag/v23.08) +- Update: Core Lightning v23.08.1 [details](https://github.com/ElementsProject/lightning/releases/tag/v23.08.1) - Update: Suez - Channel Visualization for LND & CLN [details](https://github.com/prusnak/suez) - Update: Electrum Server in Rust (electrs) v0.10.0 [details](https://github.com/romanz/electrs/blob/master/RELEASE-NOTES.md#0100-jul-22-2023) - Update: C-lightningREST v0.10.5 [details](https://github.com/Ride-The-Lightning/c-lightning-REST/releases/tag/v0.10.5) @@ -16,8 +16,14 @@ - Update: BTCPayServer 1.10.3 (postgres by default with sqlite migration) [details](https://github.com/btcpayserver/btcpayserver/releases/tag/v1.10.3) - Update: Specter Desktop 1.13.1 [details](https://github.com/cryptoadvance/specter-desktop/releases/tag/v1.13.1) - Update: Kindle-Display 0.5.1 [details](https://github.com/dennisreimann/kindle-display/) +- Update: JoinMarket v0.9.10 [details](https://github.com/JoinMarket-Org/joinmarket-clientserver/releases/tag/v0.9.10) +- Update: JoininBox v0.8.1 [details](https://github.com/openoms/joininbox/releases/tag/v0.8.1) +- Update: Balance of Satoshis 15.11.0 (bos) [details](https://github.com/alexbosworth/balanceofsatoshis/blob/master/CHANGELOG.md#15110) - Fix: Homebanking Interface FinTS/HBCI (experimental) [details](https://github.com/rootzoll/raspiblitz/issues/1186) - Remove: Spark Wallet and Sparko CLN plugin (not maintained anymore) +- Remove: Faraday, Loop, Pool single installs - used in the LiT package instead +- Remove: deactivate LNproxy in the menu and in provision +- Info: the users not intended to be logged in will not be available to change into (manage them from admin with sudo) ## What's new in Version 1.9.0 of RaspiBlitz? diff --git a/build_sdcard.sh b/build_sdcard.sh index 343c76c50..4b7afbdca 100644 --- a/build_sdcard.sh +++ b/build_sdcard.sh @@ -399,7 +399,9 @@ echo -e "\n*** PREPARE ${baseimage} ***" # make sure the pi user is present if [ "$(compgen -u | grep -c pi)" -eq 0 ];then echo "# Adding the user pi" - adduser --system --group --home /home/pi pi + adduser --system --group --shell /bin/bash --home /home/pi pi + # copy the skeleton files for login + sudo -u pi cp -r /etc/skel/. /home/pi/ adduser pi sudo fi @@ -542,7 +544,9 @@ service rsyslog restart echo -e "\n*** ADDING MAIN USER admin ***" # based on https://raspibolt.org/system-configuration.html#add-users # using the default password 'raspiblitz' -adduser --system --group --home /home/admin admin +adduser --system --group --shell /bin/bash --home /home/admin admin +# copy the skeleton files for login +sudo -u admin cp -r /etc/skel/. /home/admin/ echo "admin:raspiblitz" | chpasswd adduser admin sudo chsh admin -s /bin/bash @@ -560,7 +564,9 @@ fi echo -e "\n*** ADDING SERVICE USER bitcoin" # based on https://raspibolt.org/guide/raspberry-pi/system-configuration.html # create user and set default password for user -adduser --system --group --home /home/bitcoin bitcoin +adduser --system --group --shell /bin/bash --home /home/bitcoin bitcoin +# copy the skeleton files for login +sudo -u bitcoin cp -r /etc/skel/. /home/bitcoin/ echo "bitcoin:raspiblitz" | chpasswd # make home directory readable chmod 755 /home/bitcoin diff --git a/ci/amd64/packer.build.amd64-debian.sh b/ci/amd64/packer.build.amd64-debian.sh index 163f1bb89..b2ea9ecb1 100644 --- a/ci/amd64/packer.build.amd64-debian.sh +++ b/ci/amd64/packer.build.amd64-debian.sh @@ -1,5 +1,7 @@ #!/bin/bash -e +sudo apt-get update + # install packer if ! packer version 2>/dev/null; then curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add - @@ -11,8 +13,11 @@ else echo "# Packer is installed" fi + + # install qemu -echo -e "\nInstalling qemu..." +echo "# Install qemu ..." +sudo apt-get update sudo apt-get install -y qemu-system # set vars @@ -20,7 +25,7 @@ source ../set_variables.sh set_variables "$@" # Build the image -echo -e "\nBuilding the image..." +echo "# Build the image ..." cd debian packer init -upgrade . command="PACKER_LOG=1 packer build ${vars} -only=qemu packer.build.amd64-debian.hcl" diff --git a/home.admin/00mainMenu.sh b/home.admin/00mainMenu.sh index 8a7619adb..a43ab1e7a 100755 --- a/home.admin/00mainMenu.sh +++ b/home.admin/00mainMenu.sh @@ -126,9 +126,9 @@ fi if [ "${bos}" == "on" ]; then OPTIONS+=(BOS "Balance of Satoshis") fi -if [ "${lnproxy}" == "on" ]; then - OPTIONS+=(LNPROXY "lnproxy server") -fi +#if [ "${lnproxy}" == "on" ]; then +# OPTIONS+=(LNPROXY "lnproxy server") +#fi if [ "${pyblock}" == "on" ]; then OPTIONS+=(PYBLOCK "PyBlock") fi @@ -281,9 +281,6 @@ case $CHOICE in LIGHTNINGTIPBOT) /home/admin/config.scripts/bonus.lightningtipbot.sh menu ;; - LOOP) - /home/admin/config.scripts/bonus.loop.sh menu - ;; MEMPOOL) /home/admin/config.scripts/bonus.mempool.sh menu ;; @@ -296,9 +293,6 @@ case $CHOICE in JAM) /home/admin/config.scripts/bonus.jam.sh menu ;; - FARADAY) - sudo /home/admin/config.scripts/bonus.faraday.sh menu - ;; BOS) sudo /home/admin/config.scripts/bonus.bos.sh menu ;; @@ -317,9 +311,6 @@ case $CHOICE in ZEROTIER) sudo /home/admin/config.scripts/bonus.zerotier.sh menu ;; - POOL) - sudo /home/admin/config.scripts/bonus.pool.sh menu - ;; SPHINX) sudo /home/admin/config.scripts/bonus.sphinxrelay.sh menu ;; diff --git a/home.admin/00settingsMenuServices.sh b/home.admin/00settingsMenuServices.sh index 5e80866e0..c8c3678cd 100755 --- a/home.admin/00settingsMenuServices.sh +++ b/home.admin/00settingsMenuServices.sh @@ -68,7 +68,7 @@ if [ "${lightning}" == "lnd" ] || [ "${lnd}" == "on" ]; then OPTIONS+=(la 'LND LIT (loop, pool, faraday)' ${lit}) OPTIONS+=(gb 'LND LNDg (auto-rebalance, auto-fees)' ${lndg}) OPTIONS+=(oa 'LND Balance of Satoshis' ${bos}) - OPTIONS+=(lp 'LND lnproxy server' ${lnproxy}) + #OPTIONS+=(lp 'LND lnproxy server' ${lnproxy}) OPTIONS+=(ya 'LND PyBLOCK' ${pyblock}) OPTIONS+=(ha 'LND ChannelTools (Fund Rescue)' ${chantools}) OPTIONS+=(xa 'LND Sphinx-Relay' ${sphinxrelay}) diff --git a/home.admin/99updateMenu.sh b/home.admin/99updateMenu.sh index 0014cc7c2..6199fe1e3 100755 --- a/home.admin/99updateMenu.sh +++ b/home.admin/99updateMenu.sh @@ -269,10 +269,6 @@ Do you really want to update LND now? if [ ${#error} -gt 0 ]; then whiptail --title "ERROR" --msgbox "${error}" 8 30 else - # if loop was installed before reinstall - if [ "${loop}" == "on" ]; then - sudo -u admin /home/admin/config.scripts/bonus.loop.sh on - fi /home/admin/config.scripts/blitz.shutdown.sh reboot sleep 8 fi diff --git a/home.admin/_provision_.sh b/home.admin/_provision_.sh index fdbd8612f..bc1aa872f 100755 --- a/home.admin/_provision_.sh +++ b/home.admin/_provision_.sh @@ -425,15 +425,6 @@ else echo "Provisioning clWatchtowerClient - keep default" >> ${logFile} fi -#LOOP - install only if LiT won't be installed -if [ "${loop}" = "on" ] && [ "${lit}" != "on" ]; then - echo "Provisioning Lightning Loop - run config script" >> ${logFile} - /home/admin/_cache.sh set message "Setup Lightning Loop" - sudo -u admin /home/admin/config.scripts/bonus.loop.sh on >> ${logFile} 2>&1 -else - echo "Provisioning Lightning Loop - keep default" >> ${logFile} -fi - #BTC RPC EXPLORER if [ "${BTCRPCexplorer}" = "on" ]; then echo "Provisioning BTCRPCexplorer - run config script" >> ${logFile} @@ -594,15 +585,6 @@ else echo "Provisioning Specter - keep default" >> ${logFile} fi -# Faraday -if [ "${faraday}" = "on" ]; then - echo "Provisioning Faraday - run config script" >> ${logFile} - /home/admin/_cache.sh set message "Setup Faraday" - sudo -u admin /home/admin/config.scripts/bonus.faraday.sh on >> ${logFile} 2>&1 -else - echo "Provisioning Faraday - keep default" >> ${logFile} -fi - # BOS if [ "${bos}" = "on" ]; then echo "Provisioning Balance of Satoshis - run config script" >> ${logFile} @@ -612,14 +594,14 @@ else echo "Provisioning Balance of Satoshis - keep default" >> ${logFile} fi -# LNPROXY -if [ "${lnproxy}" = "on" ]; then - echo "Provisioning lnproxy - run config script" >> ${logFile} - /home/admin/_cache.sh set message "Setup lnproxy" - sudo -u admin /home/admin/config.scripts/bonus.lnproxy.sh on >> ${logFile} 2>&1 -else - echo "Provisioning lnproxy - keep default" >> ${logFile} -fi +## LNPROXY +#if [ "${lnproxy}" = "on" ]; then +# echo "Provisioning lnproxy - run config script" >> ${logFile} +# /home/admin/_cache.sh set message "Setup lnproxy" +# sudo -u admin /home/admin/config.scripts/bonus.lnproxy.sh on >> ${logFile} 2>&1 +#else +# echo "Provisioning lnproxy - keep default" >> ${logFile} +#fi # thunderhub if [ "${thunderhub}" = "on" ]; then @@ -675,15 +657,6 @@ else echo "Provisioning Stacking Sats Kraken - keep default" >> ${logFile} fi -# Pool - install only if LiT won't be installed -if [ "${pool}" = "on" ] && [ "${lit}" != "on" ]; then - echo "Provisioning Pool - run config script" >> ${logFile} - /home/admin/_cache.sh set message "Setup Pool" - sudo -u admin /home/admin/config.scripts/bonus.pool.sh on >> ${logFile} 2>&1 -else - echo "Provisioning Pool - keep default" >> ${logFile} -fi - # lit (make sure to be installed after RTL) if [ "${lit}" = "on" ]; then echo "Provisioning LIT - run config script" >> ${logFile} diff --git a/home.admin/config.scripts/bonus.bitcoinminds.sh b/home.admin/config.scripts/bonus.bitcoinminds.sh index 6b11df744..9dc31ef8e 100644 --- a/home.admin/config.scripts/bonus.bitcoinminds.sh +++ b/home.admin/config.scripts/bonus.bitcoinminds.sh @@ -36,7 +36,11 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then echo "" # create user - sudo adduser --system --group --home /home/bitcoinminds bitcoinminds + USERNAME=bitcoinminds + echo "# add the user: ${USERNAME}" + sudo adduser --system --group --shell /bin/bash --home /home/${USERNAME} ${USERNAME} + echo "Copy the skeleton files for login" + sudo -u ${USERNAME} cp -r /etc/skel/. /home/${USERNAME}/ # add local directory to path and set PATH for the user sudo bash -c "echo 'PATH=\$PATH:/home/bitcoinminds/.local/bin' >> /home/bitcoinminds/.profile" diff --git a/home.admin/config.scripts/bonus.bos.sh b/home.admin/config.scripts/bonus.bos.sh index 84f1d4a7d..1bf82b9b0 100755 --- a/home.admin/config.scripts/bonus.bos.sh +++ b/home.admin/config.scripts/bonus.bos.sh @@ -4,7 +4,7 @@ # https://github.com/alexbosworth/balanceofsatoshis/blob/master/package.json#L85 # https://www.npmjs.com/package/balanceofsatoshis -BOSVERSION="15.8.14" +BOSVERSION="15.11.0" # command info if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then @@ -194,7 +194,11 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then /home/admin/config.scripts/bonus.nodejs.sh on # create bos user - sudo adduser --system --group --home /home/bos bos + USERNAME=bos + echo "# add the user: ${USERNAME}" + sudo adduser --system --group --shell /bin/bash --home /home/${USERNAME} ${USERNAME} + echo "Copy the skeleton files for login" + sudo -u ${USERNAME} cp -r /etc/skel/. /home/${USERNAME}/ echo "# Create data folder on the disk" # move old data if present @@ -211,10 +215,6 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then 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 diff --git a/home.admin/config.scripts/bonus.joinmarket.sh b/home.admin/config.scripts/bonus.joinmarket.sh index 016250ca8..48eefdfb8 100755 --- a/home.admin/config.scripts/bonus.joinmarket.sh +++ b/home.admin/config.scripts/bonus.joinmarket.sh @@ -6,7 +6,7 @@ # https://github.com/openoms/joininbox # https://github.com/openoms/joininbox/tags -JBTAG="v0.7.8" # installs JoinMarket v0.9.9 +JBTAG="v0.8.1" # installs JoinMarket v0.9.10 # command info if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then @@ -56,8 +56,11 @@ if [ "$1" = "install" ]; then echo "# cleaning before install" sudo userdel -rf joinmarket 2>/dev/null - echo "# add the 'joinmarket' user" - adduser --system --group --home /home/joinmarket joinmarket + USERNAME=joinmarket + echo "# add the user: ${USERNAME}" + sudo adduser --system --group --shell /bin/bash --home /home/${USERNAME} ${USERNAME} + echo "Copy the skeleton files for login" + sudo -u ${USERNAME} cp -r /etc/skel/. /home/${USERNAME}/ # add to sudo group (required for installation) adduser joinmarket sudo || exit 1 @@ -69,9 +72,6 @@ if [ "$1" = "install" ]; then sudo -u joinmarket mkdir -p /home/joinmarket/.ssh chmod -R 700 /home/joinmarket/.ssh - # install the command-line fuzzy finder (https://github.com/junegunn/fzf) - bash -c "echo 'source /usr/share/doc/fzf/examples/key-bindings.bash' >> /home/joinmarket/.bashrc" - echo "# adding JoininBox" sudo rm -rf /home/joinmarket/joininbox sudo -u joinmarket git clone https://github.com/openoms/joininbox.git /home/joinmarket/joininbox @@ -115,8 +115,7 @@ if [ "$1" = "install" ]; then echo # install a command-line fuzzy finder (https://github.com/junegunn/fzf) apt -y install fzf - bash -c "echo 'source /usr/share/doc/fzf/examples/key-bindings.bash' >> \ - /home/joinmarket/.bashrc" + echo 'source /usr/share/doc/fzf/examples/key-bindings.bash' | sudo -u joinmarket tee -a /home/joinmarket/.bashrc # install tmux apt -y install tmux diff --git a/home.admin/config.scripts/bonus.lit.sh b/home.admin/config.scripts/bonus.lit.sh index fab4dd3ee..e562d44f7 100644 --- a/home.admin/config.scripts/bonus.lit.sh +++ b/home.admin/config.scripts/bonus.lit.sh @@ -90,7 +90,11 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then if [ ${isInstalled} -eq 0 ]; then # create dedicated user - sudo adduser --system --group --home /home/lit lit + USERNAME=lit + echo "# add the user: ${USERNAME}" + sudo adduser --system --group --shell /bin/bash --home /home/${USERNAME} ${USERNAME} + echo "Copy the skeleton files for login" + sudo -u ${USERNAME} cp -r /etc/skel/. /home/${USERNAME}/ # make sure symlink to central app-data directory exists sudo rm -rf /home/lit/.lnd # not a symlink.. delete it silently # create symlink diff --git a/home.admin/config.scripts/bonus.pyblock.sh b/home.admin/config.scripts/bonus.pyblock.sh index dd25a69e1..e04e4e45b 100644 --- a/home.admin/config.scripts/bonus.pyblock.sh +++ b/home.admin/config.scripts/bonus.pyblock.sh @@ -29,7 +29,12 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then echo "*** INSTALL pyblocks***" # create pyblock user - sudo adduser --system --group --home /home/pyblock pyblock + USERNAME=pyblock + echo "# add the user: ${USERNAME}" + sudo adduser --system --group --shell /bin/bash --home /home/${USERNAME} ${USERNAME} + echo "Copy the skeleton files for login" + sudo -u ${USERNAME} cp -r /etc/skel/. /home/${USERNAME}/ + cd /home/pyblock sudo -u pyblock mkdir /home/pyblock/config diff --git a/home.admin/config.scripts/bonus.stacking-sats-kraken.sh b/home.admin/config.scripts/bonus.stacking-sats-kraken.sh index 44d3fbeda..59f87d95d 100755 --- a/home.admin/config.scripts/bonus.stacking-sats-kraken.sh +++ b/home.admin/config.scripts/bonus.stacking-sats-kraken.sh @@ -28,7 +28,10 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then /home/admin/config.scripts/bonus.nodejs.sh on # add user - sudo adduser --system --group --home /home/$USERNAME $USERNAME + echo "# add the user: ${USERNAME}" + sudo adduser --system --group --shell /bin/bash --home /home/${USERNAME} ${USERNAME} + echo "Copy the skeleton files for login" + sudo -u ${USERNAME} cp -r /etc/skel/. /home/${USERNAME}/ # install stacking-sats-kraken cd $HOME_DIR diff --git a/home.admin/config.scripts/bonus.template.sh b/home.admin/config.scripts/bonus.template.sh index ff84ec988..5662e9950 100755 --- a/home.admin/config.scripts/bonus.template.sh +++ b/home.admin/config.scripts/bonus.template.sh @@ -161,7 +161,11 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then # BACKGROUND is here to seperate running apps by unix users # and only give file write access to the rest of the system where needed. echo "# create user" - sudo adduser --system --group --home /home/${APPID} ${APPID} || exit 1 + # If the user is intended to be loeed in to add '--shell /bin/bash' + # and copy the skeleton files + sudo adduser --system --group --shell /bin/bash --home /home/${APPID} ${APPID} || exit 1 + # copy the skeleton files for login + sudo -u ${APPID} cp -r /etc/skel/. /home/${APPID}/ # add user to special groups with special access rights # BACKGROUND there are some unix groups available that will give the access to diff --git a/home.admin/config.scripts/cl.install.sh b/home.admin/config.scripts/cl.install.sh index f57c0d76e..88ddb8b39 100644 --- a/home.admin/config.scripts/cl.install.sh +++ b/home.admin/config.scripts/cl.install.sh @@ -2,7 +2,7 @@ # https://lightning.readthedocs.io/ # https://github.com/ElementsProject/lightning/releases -CLVERSION="v23.08" +CLVERSION="v23.08.1" # install the latest master by using the last commit id # https://github.com/ElementsProject/lightning/commit/master