Merge remote-tracking branch 'origin/v1.6' into dev

This commit is contained in:
rootzoll
2020-09-08 20:01:17 +02:00
6 changed files with 64 additions and 44 deletions

View File

@@ -159,7 +159,7 @@ if [ "${baseImage}" = "raspbian" ] || [ "${baseImage}" = "dietpi" ] ; then
fi fi
# remove some (big) packages that are not needed # remove some (big) packages that are not needed
sudo apt remove -y --purge libreoffice* oracle-java* chromium-browser nuscratch scratch sonic-pi minecraft-pi plymouth python2 sudo apt remove -y --purge libreoffice* oracle-java* chromium-browser nuscratch scratch sonic-pi minecraft-pi plymouth python2 vlc
sudo apt clean sudo apt clean
sudo apt -y autoremove sudo apt -y autoremove
@@ -480,7 +480,7 @@ echo "*** PREPARING BITCOIN & Co ***"
# set version (change if update is available) # set version (change if update is available)
# https://bitcoincore.org/en/download/ # https://bitcoincore.org/en/download/
bitcoinVersion="0.20.1" bitcoinVersion="0.20.0"
# needed to check code signing # needed to check code signing
laanwjPGP="01EA5486DE18A882D4C2684590C8019E36C2E964" laanwjPGP="01EA5486DE18A882D4C2684590C8019E36C2E964"

View File

@@ -51,7 +51,7 @@ if [ ${bitcoinActive} -eq 0 ] || [ ${#bitcoinErrorFull} -gt 0 ] || [ "${1}" == "
if [ "$USER" != "admin" ]; then if [ "$USER" != "admin" ]; then
if [ ${uptime} -gt 600 ]; then if [ ${uptime} -gt 600 ]; then
if [ ${uptime} -gt 800 ] || [ ${#bitcoinErrorFull} -gt 0 ] || [ "${1}" == "blockchain-error" ]; then if [ ${uptime} -gt 1000 ] || [ ${#bitcoinErrorFull} -gt 0 ] || [ "${1}" == "blockchain-error" ]; then
infoStr=" The ${network}d service is NOT RUNNING!\n ${bitcoinErrorShort}\n Login for more details & options:" infoStr=" The ${network}d service is NOT RUNNING!\n ${bitcoinErrorShort}\n Login for more details & options:"
else else
infoStr=" The ${network}d service is running:\n ${bitcoinErrorShort}\n Login with SSH for more details:" infoStr=" The ${network}d service is running:\n ${bitcoinErrorShort}\n Login with SSH for more details:"

View File

@@ -46,21 +46,23 @@ if [ "${command}" == "check-repair" ]; then
echo "# --> new kernel detected - checking if LCD driver needs update ..." echo "# --> new kernel detected - checking if LCD driver needs update ..."
if [ ${oldDrivers} -eq 1 ]; then if [ ${oldDrivers} -eq 1 ]; then
echo "# --> old LCD driver detected - starting update ..." echo "# --> old LCD driver detected - starting update ..."
sudo rm -rf /home/admin/LCD-show
cd /home/admin cd /home/admin
sudo -u admin git clone https://github.com/MrYacha/LCD-show.git sudo -u admin git clone https://github.com/MrYacha/LCD-show.git
sudo -u admin chmod -R 755 LCD-show sudo -u admin chmod -R 755 LCD-show
sudo -u admin chown -R admin:admin LCD-show sudo -u admin chown -R admin:admin LCD-show
cd LCD-show/ cd /home/admin/LCD-show
sudo -u admin git reset --hard 53dd0bf sudo -u admin git reset --hard b012c487669afd3e997fc63fcc097d45a5a6a34e
echo "# --> correcting rotate setting" echo "# --> correcting rotate setting"
if [ "${lcdrotate}" == "on" ]; then if [ "${lcdrotate}" == "on" ]; then
sudo sed -i "s/^dtoverlay=.*/dtoverlay=waveshare35a:rotate=90/g" /boot/config.txt sudo sed -i "s/^dtoverlay=.*/dtoverlay=tft35a:rotate=90/g" /boot/config.txt
else else
sudo sed -i "s/^dtoverlay=.*/dtoverlay=waveshare35a:rotate=270/g" /boot/config.txt sudo sed -i "s/^dtoverlay=.*/dtoverlay=waveshare35a:rotate=270/g" /boot/config.txt
fi fi
echo "# --> restart to acrivate new driver" echo "# --> restart to acrivate new driver"
./LCD35-show chmod +x ./LCD35-show
sudo ./LCD35-show
sudo shutdown -r now sudo shutdown -r now
else else
echo "# --> new LCD driver detected - no need to update LCD drivers." echo "# --> new LCD driver detected - no need to update LCD drivers."
@@ -87,14 +89,26 @@ elif [ "${command}" == "rotate" ]; then
if [ ${oldDrivers} -eq 1 ]; then if [ ${oldDrivers} -eq 1 ]; then
sudo sed -i "s/^dtoverlay=.*/dtoverlay=tft35a:rotate=90/g" /boot/config.txt sudo sed -i "s/^dtoverlay=.*/dtoverlay=tft35a:rotate=90/g" /boot/config.txt
# if touchscreen is on
if [ "${touchscreen}" = "1" ]; then
echo "Also rotate touchscreen ..."
cat << EOF | sudo tee /etc/X11/xorg.conf.d/40-libinput.conf >/dev/null
Section "InputClass"
Identifier "libinput touchscreen catchall"
MatchIsTouchscreen "on"
Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
EOF
fi
else else
sudo sed -i "s/^dtoverlay=.*/dtoverlay=waveshare35a:rotate=90/g" /boot/config.txt sudo sed -i "s/^dtoverlay=.*/dtoverlay=waveshare35a:rotate=90/g" /boot/config.txt
# delete possible touchscreen rotate
sudo rm /etc/X11/xorg.conf.d/40-libinput.conf >/dev/null
fi fi
sudo sed -i "s/^lcdrotate=.*/lcdrotate=1/g" /mnt/hdd/raspiblitz.conf sudo sed -i "s/^lcdrotate=.*/lcdrotate=1/g" /mnt/hdd/raspiblitz.conf
# delete possible touchscreen rotate
sudo rm /etc/X11/xorg.conf.d/40-libinput.conf >/dev/null
echo "# OK - a restart is needed: sudo shutdown -r now" echo "# OK - a restart is needed: sudo shutdown -r now"
# TURN ROTATE OFF # TURN ROTATE OFF
@@ -104,12 +118,14 @@ elif [ "${command}" == "rotate" ]; then
if [ ${oldDrivers} -eq 1 ]; then if [ ${oldDrivers} -eq 1 ]; then
sudo sed -i "s/^dtoverlay=.*/dtoverlay=tft35a:rotate=270/g" /boot/config.txt sudo sed -i "s/^dtoverlay=.*/dtoverlay=tft35a:rotate=270/g" /boot/config.txt
# delete possible touchscreen rotate
sudo rm /etc/X11/xorg.conf.d/40-libinput.conf >/dev/null
else else
sudo sed -i "s/^dtoverlay=.*/dtoverlay=waveshare35a:rotate=270/g" /boot/config.txt sudo sed -i "s/^dtoverlay=.*/dtoverlay=waveshare35a:rotate=270/g" /boot/config.txt
fi
sudo sed -i "s/^lcdrotate=.*/lcdrotate=0/g" /mnt/hdd/raspiblitz.conf
# if touchscreen is on # if touchscreen is on
if [ "${touchscreen}" = "1" ]; then if [ "${touchscreen}" = "1" ]; then
echo "Also rotate touchscreen ..." echo "Also rotate touchscreen ..."
cat << EOF | sudo tee /etc/X11/xorg.conf.d/40-libinput.conf >/dev/null cat << EOF | sudo tee /etc/X11/xorg.conf.d/40-libinput.conf >/dev/null
@@ -123,7 +139,11 @@ EndSection
EOF EOF
fi fi
echo "OK - a restart is needed: sudo shutdown -r now" fi
sudo sed -i "s/^lcdrotate=.*/lcdrotate=0/g" /mnt/hdd/raspiblitz.conf
echo "OK - a restart is needed: sudo shutdown -r now"
else else
echo "error='missing second parameter - see help'" echo "error='missing second parameter - see help'"

View File

@@ -43,10 +43,10 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
# check if running Tor # check if running Tor
if [ ${runBehindTor} = on ]; then if [ ${runBehindTor} = on ]; then
echo "OK, running behind Tor." echo "# OK, running behind Tor"
else else
echo "Not running Tor" echo "# Not running Tor"
echo "Activate Tor from the SERVICES menu before installing JoinMarket." echo "# Activate Tor from the SERVICES menu before installing JoinMarket."
exit 1 exit 1
fi fi
@@ -55,13 +55,13 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
if [ ! -f "/home/joinmarket/joinmarket-clientserver/jmvenv/bin/activate" ] ; then if [ ! -f "/home/joinmarket/joinmarket-clientserver/jmvenv/bin/activate" ] ; then
echo "*** Cleaning before install ***" echo "# cleaning before install"
sudo userdel -rf joinmarket 2>/dev/null sudo userdel -rf joinmarket 2>/dev/null
echo "*** Add the 'joinmarket' user ***" echo "# add the 'joinmarket' user"
adduser --disabled-password --gecos "" joinmarket adduser --disabled-password --gecos "" joinmarket
echo "*** setting PASSWORD_B as the password for the 'joinmarket' user ***" echo "# setting PASSWORD_B as the password for the 'joinmarket' user"
PASSWORD_B=$(sudo cat /mnt/hdd/${network}/${network}.conf | grep rpcpassword | cut -c 13-) PASSWORD_B=$(sudo cat /mnt/hdd/${network}/${network}.conf | grep rpcpassword | cut -c 13-)
echo "joinmarket:$PASSWORD_B" | sudo chpasswd echo "joinmarket:$PASSWORD_B" | sudo chpasswd
# add to sudo group (required for installation) # add to sudo group (required for installation)
@@ -81,44 +81,43 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
# copy old JoinMarket data to app-data # copy old JoinMarket data to app-data
cp -rf /home/admin/joinmarket-clientserver/scripts/wallets /mnt/hdd/app-data/.joinmarket/ 2>/dev/null cp -rf /home/admin/joinmarket-clientserver/scripts/wallets /mnt/hdd/app-data/.joinmarket/ 2>/dev/null
chown -R joinmarket:joinmarket /mnt/hdd/app-data/.joinmarket chown -R joinmarket:joinmarket /mnt/hdd/app-data/.joinmarket
ln -s /mnt/hdd/app-data/.joinmarket /home/joinmarket/ 2>/dev/null ln -s /mnt/hdd/app-data/.joinmarket /home/joinmarket/ 2>/dev/null
chown -R joinmarket:joinmarket /home/joinmarket/.joinmarket chown -R joinmarket:joinmarket /home/joinmarket/.joinmarket
# specify wallet.dat in old config for multiwallet for multiwallet support # specify wallet.dat in old config for multiwallet for multiwallet support
if [ -f "/home/joinmarket/.joinmarket/joinmarket.cfg" ] ; then if [ -f "/home/joinmarket/.joinmarket/joinmarket.cfg" ] ; then
sudo -u joinmarket sed -i "s/^rpc_wallet_file =.*/rpc_wallet_file = wallet.dat/g" /home/joinmarket/.joinmarket/joinmarket.cfg sudo -u joinmarket sed -i "s/^rpc_wallet_file =.*/rpc_wallet_file = wallet.dat/g" /home/joinmarket/.joinmarket/joinmarket.cfg
echo "Specified to use wallet.dat in the recovered joinmarket.cfg" echo "# specified to use wallet.dat in the recovered joinmarket.cfg"
fi fi
# install joinmarket # install joinmarket
cd /home/joinmarket cd /home/joinmarket
# PySide2 for armf: https://packages.debian.org/buster/python3-pyside2.qtcore # PySide2 for armf: https://packages.debian.org/buster/python3-pyside2.qtcore
echo "# installing ARM specific dependencies to run the QT GUI on ARM"
sudo apt install -y python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qtwidgets zlib1g-dev libjpeg-dev sudo apt install -y python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qtwidgets zlib1g-dev libjpeg-dev
# from https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/docs/INSTALL.md echo "# installing JoinMarket"
sudo apt install -y python3-dev python3-pip git build-essential automake pkg-config libtool libffi-dev libssl-dev libgmp-dev libsodium-dev
sudo -u joinmarket git clone https://github.com/Joinmarket-Org/joinmarket-clientserver sudo -u joinmarket git clone https://github.com/Joinmarket-Org/joinmarket-clientserver
cd joinmarket-clientserver cd joinmarket-clientserver
git reset --hard v0.6.3.1 sudo -u joinmarket git reset --hard v0.7.0
# make install.sh set up jmvenv with -- system-site-packages
# set up jmvenv sed -i "s#^ virtualenv -p \"\${python}\" \"\${jm_source}/jmvenv\" || return 1#\
sudo apt install -y virtualenv virtualenv --system-site-packages -p \"\${python}\" \"\${jm_source}/jmvenv\" || return 1#g" \
# use the PySide2 armf package from the system install.sh
sudo -u joinmarket virtualenv --system-site-packages -p /usr/bin/python3.7 jmvenv sudo -u joinmarket ./install.sh --with-qt
echo "# installing python requirements to run the QT GUI on ARM"
source jmvenv/bin/activate || exit 1 source jmvenv/bin/activate || exit 1
pip install -r requirements/base.txt # use the PySide2 armf package from the system
# https://github.com/JoinMarket-Org/joinmarket-clientserver/blob/master/requirements/gui.txt
/home/joinmarket/joinmarket-clientserver/jmvenv/bin/python -c 'import PySide2' /home/joinmarket/joinmarket-clientserver/jmvenv/bin/python -c 'import PySide2'
pip install qrcode[pil] pip install qrcode[pil]
pip install https://github.com/sunu/qt5reactor/archive/58410aaead2185e9917ae9cac9c50fe7b70e4a60.zip#egg=qt5reactor pip install https://github.com/sunu/qt5reactor/archive/58410aaead2185e9917ae9cac9c50fe7b70e4a60.zip#egg=qt5reactor
# add the joininbox menu echo "# adding the joininbox menu"
sudo rm -rf /home/joinmarket/joininbox sudo rm -rf /home/joinmarket/joininbox
sudo -u joinmarket git clone https://github.com/openoms/joininbox.git /home/joinmarket/joininbox sudo -u joinmarket git clone https://github.com/openoms/joininbox.git /home/joinmarket/joininbox
# check the latest at: # check the latest at:
# https://github.com/openoms/joininbox/releases/ # https://github.com/openoms/joininbox/releases/
sudo -u joinmarket git reset --hard v0.1.2 sudo -u joinmarket git reset --hard v0.1.3.1
sudo -u joinmarket cp /home/joinmarket/joininbox/scripts/* /home/joinmarket/ sudo -u joinmarket cp /home/joinmarket/joininbox/scripts/* /home/joinmarket/
sudo -u joinmarket cp /home/joinmarket/joininbox/scripts/.* /home/joinmarket/ 2>/dev/null sudo -u joinmarket cp /home/joinmarket/joininbox/scripts/.* /home/joinmarket/ 2>/dev/null
sudo chmod +x /home/joinmarket/*.sh sudo chmod +x /home/joinmarket/*.sh
@@ -142,7 +141,7 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
sudo -u joinmarket sed -i "s/^runBehindTor=.*/runBehindTor=on/g" /home/joinmarket/joinin.conf sudo -u joinmarket sed -i "s/^runBehindTor=.*/runBehindTor=on/g" /home/joinmarket/joinin.conf
fi fi
# autostart for joinmarket echo "# setting the autostart script for joinmarket"
echo " echo "
# automatically start startup.sh for joinmarket unless # automatically start startup.sh for joinmarket unless
# when running in a tmux session # when running in a tmux session
@@ -165,14 +164,14 @@ fi
cat > /home/admin/startup.sh <<EOF cat > /home/admin/startup.sh <<EOF
# check for joinmarket.cfg # check for joinmarket.cfg
if [ ! -f "/home/joinmarket/.joinmarket/joinmarket.cfg" ] ; then if [ ! -f "/home/joinmarket/.joinmarket/joinmarket.cfg" ] ; then
echo "Generating the joinmarket.cfg" echo "# generating the joinmarket.cfg"
echo "" echo ""
. /home/joinmarket/joinmarket-clientserver/jmvenv/bin/activate &&\ . /home/joinmarket/joinmarket-clientserver/jmvenv/bin/activate &&\
cd /home/joinmarket/joinmarket-clientserver/scripts/ cd /home/joinmarket/joinmarket-clientserver/scripts/
python wallet-tool.py generate --datadir=/home/joinmarket/.joinmarket python wallet-tool.py generate --datadir=/home/joinmarket/.joinmarket
sudo chmod 600 /home/joinmarket/.joinmarket/joinmarket.cfg || exit 1 sudo chmod 600 /home/joinmarket/.joinmarket/joinmarket.cfg || exit 1
echo "" echo ""
echo "Editing the joinmarket.cfg" echo "# editing the joinmarket.cfg"
sed -i "s/^rpc_user =.*/rpc_user = raspibolt/g" /home/joinmarket/.joinmarket/joinmarket.cfg sed -i "s/^rpc_user =.*/rpc_user = raspibolt/g" /home/joinmarket/.joinmarket/joinmarket.cfg
PASSWORD_B=\$(sudo cat /mnt/hdd/bitcoin/bitcoin.conf | grep rpcpassword | cut -c 13-) PASSWORD_B=\$(sudo cat /mnt/hdd/bitcoin/bitcoin.conf | grep rpcpassword | cut -c 13-)
sed -i "s/^rpc_password =.*/rpc_password = \$PASSWORD_B/g" /home/joinmarket/.joinmarket/joinmarket.cfg sed -i "s/^rpc_password =.*/rpc_password = \$PASSWORD_B/g" /home/joinmarket/.joinmarket/joinmarket.cfg
@@ -188,7 +187,7 @@ if [ ! -f "/home/joinmarket/.joinmarket/joinmarket.cfg" ] ; then
sed -i "s/^#socks5 = true/socks5 = true/g" /home/joinmarket/.joinmarket/joinmarket.cfg sed -i "s/^#socks5 = true/socks5 = true/g" /home/joinmarket/.joinmarket/joinmarket.cfg
sed -i "s/^#port = 6667/port = 6667/g" /home/joinmarket/.joinmarket/joinmarket.cfg sed -i "s/^#port = 6667/port = 6667/g" /home/joinmarket/.joinmarket/joinmarket.cfg
sed -i "s/^#usessl = false/usessl = false/g" /home/joinmarket/.joinmarket/joinmarket.cfg sed -i "s/^#usessl = false/usessl = false/g" /home/joinmarket/.joinmarket/joinmarket.cfg
echo "Edited the joinmarket.cfg to communicate over Tor only." echo "# edited the joinmarket.cfg to communicate over Tor only."
fi fi
EOF EOF
mv /home/admin/startup.sh /home/joinmarket/startup.sh mv /home/admin/startup.sh /home/joinmarket/startup.sh
@@ -226,7 +225,7 @@ if [ "$1" = "0" ] || [ "$1" = "off" ]; then
if [ -f "/home/joinmarket/joinmarket-clientserver/jmvenv/bin/activate" ] ; then if [ -f "/home/joinmarket/joinmarket-clientserver/jmvenv/bin/activate" ] ; then
echo "*** REMOVING JOINMARKET ***" echo "*** REMOVING JOINMARKET ***"
sudo userdel -rf joinmarket 2>/dev/null sudo userdel -rf joinmarket 2>/dev/null
echo "OK JoinMarket removed" echo "# OK JoinMarket is removed"
else else
echo "JoinMarket is not installed." echo "JoinMarket is not installed."
fi fi

View File

@@ -88,11 +88,12 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
sudo -u rtl rm -rf /home/rtl/RTL 2>/dev/null sudo -u rtl rm -rf /home/rtl/RTL 2>/dev/null
sudo -u rtl git clone https://github.com/ShahanaFarooqui/RTL.git /home/rtl/RTL sudo -u rtl git clone https://github.com/ShahanaFarooqui/RTL.git /home/rtl/RTL
cd /home/rtl/RTL cd /home/rtl/RTL
sudo -u rtl git reset --hard v0.8.4 # check https://github.com/Ride-The-Lightning/RTL/releases/
sudo -u rtl git reset --hard v0.9.0
# from https://github.com/Ride-The-Lightning/RTL/commits/master # from https://github.com/Ride-The-Lightning/RTL/commits/master
# git checkout 917feebfa4fb583360c140e817c266649307ef72 # git checkout 917feebfa4fb583360c140e817c266649307ef72
if [ -d "/home/rtl/RTL" ]; then if [ -d "/home/rtl/RTL" ]; then
echo "OK - RTL code copy looks good" echo "OK - RTL code copy looks good"
else else
echo "FAIL - code copy did not run correctly" echo "FAIL - code copy did not run correctly"
echo "ABORT - RTL install" echo "ABORT - RTL install"

View File

@@ -6,7 +6,7 @@
# command info # command info
if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then
echo "small config script to set a fixed domain or IP for LND" echo "small config script to set a fixed domain or IP for LND"
echo "internet.setaddress.sh [on|off] [?address]" echo "lnd.setaddress.sh [on|off] [?address]"
exit 1 exit 1
fi fi
@@ -95,4 +95,4 @@ if [ "${mode}" = "off" ]; then
fi fi
echo "may needs reboot to run normal again" echo "may needs reboot to run normal again"
exit 0 exit 0