diff --git a/install b/install index 793c27568..baeca3689 100755 --- a/install +++ b/install @@ -25,28 +25,28 @@ esac ######################################## # tor onion and clearnet hostname -TOR_INSTALL=true -CERTBOT_INSTALL=true +TOR_INSTALL=ON +CERTBOT_INSTALL=ON # install 3 network daemons -BITCOIN_INSTALL=true -BISQ_INSTALL=true -ELEMENTS_INSTALL=true +BITCOIN_INSTALL=ON +BISQ_INSTALL=ON +ELEMENTS_INSTALL=ON # configure 4 network instances -BITCOIN_MAINNET_ENABLE=true -BITCOIN_TESTNET_ENABLE=true -BISQ_MAINNET_ENABLE=true -ELEMENTS_LIQUID_ENABLE=true +BITCOIN_MAINNET_ENABLE=ON +BITCOIN_TESTNET_ENABLE=ON +BISQ_MAINNET_ENABLE=ON +ELEMENTS_LIQUID_ENABLE=ON # enable lightmode and disable compaction to fit on 1TB SSD drive -BITCOIN_ELECTRS_LIGHT_MODE=true -BITCOIN_ELECTRS_COMPACTION=false -ELEMENTS_ELECTRS_LIGHT_MODE=true -ELEMENTS_ELECTRS_COMPACTION=false +BITCOIN_ELECTRS_LIGHT_MODE=ON +BITCOIN_ELECTRS_COMPACTION=OFF +ELEMENTS_ELECTRS_LIGHT_MODE=ON +ELEMENTS_ELECTRS_COMPACTION=OFF # automaitcally configure firewall -FIREWALL_CONFIGURE=true +FIREWALL_CONFIGURE=ON ############ # probe OS # @@ -383,7 +383,7 @@ zfsCreateFilesystems() zfs create -o "mountpoint=${BITCOIN_ELECTRS_HOME}" "${ZPOOL}/bitcoin/electrs" # electrs mainnet data - if [ "${BITCOIN_MAINNET_ENABLE}" = true ];then + if [ "${BITCOIN_MAINNET_ENABLE}" = ON ];then zfs create -o "mountpoint=${ELECTRS_MAINNET_DATA}" "${ELECTRS_MAINNET_ZPOOL}/electrs/mainnet" for folder in cache history txstore do @@ -392,7 +392,7 @@ zfsCreateFilesystems() fi # electrs testnet data - if [ "${BITCOIN_TESTNET_ENABLE}" = true ];then + if [ "${BITCOIN_TESTNET_ENABLE}" = ON ];then zfs create -o "mountpoint=${ELECTRS_TESTNET_DATA}" "${ELECTRS_TESTNET_ZPOOL}/electrs/testnet" for folder in cache history txstore do @@ -401,7 +401,7 @@ zfsCreateFilesystems() fi # electrs liquid data - if [ "${ELEMENTS_LIQUID_ENABLE}" = true ];then + if [ "${ELEMENTS_LIQUID_ENABLE}" = ON ];then zfs create -o "mountpoint=${ELECTRS_LIQUID_DATA}" "${ELECTRS_LIQUID_ZPOOL}/electrs/liquid" for folder in cache history txstore do @@ -409,7 +409,7 @@ zfsCreateFilesystems() done fi - if [ "${BISQ_INSTALL}" = true ];then + if [ "${BISQ_INSTALL}" = ON ];then zfs create -o "mountpoint=${BISQ_HOME}" "${ZPOOL}/bisq" fi @@ -428,7 +428,9 @@ zfsCreateFilesystems() # does bitcoin exist? -# dialog +########## +# dialog # +########## : ${DIALOG=dialog} @@ -439,7 +441,7 @@ zfsCreateFilesystems() : ${DIALOG_ITEM_HELP=4} : ${DIALOG_ESC=255} -: ${SIG_NONE=0} +: ${SIG_OFFNE=0} : ${SIG_HUP=1} : ${SIG_INT=2} : ${SIG_QUIT=3} @@ -448,126 +450,222 @@ zfsCreateFilesystems() input=`tempfile 2>/dev/null` || input=/tmp/input$$ output=`tempfile 2>/dev/null` || output=/tmp/test$$ -trap "rm -f $input $output" $SIG_NONE $SIG_HUP $SIG_INT $SIG_TRAP $SIG_TERM - - -case "x$DIALOGOPTS" in -*--no-items*|*--noitem*) - CUT="cut -d: -f1,3" - ;; -*) - CUT="cat" - ;; -esac - -$CUT >$input <<-EOF - Apple:It's an apple.:off - Dog:No, that's not my dog.:ON - Orange:Yeah, that's juicy.:off - Chicken:Normally not a pet.:off - Cat:No, never put a dog and a cat together!:oN - Fish:Cats like fish.:On - Lemon:You know how it tastes.:on -EOF -cat $input | sed -e 's/^/"/' -e 's/:/" "/g' -e 's/$/"/' >$output -cat $output >$input - -$DIALOG --backtitle "No Such Organization" \ - --title "CHECKLIST BOX" "$@" \ - --checklist "Hi, this is a checklist box. You can use this to \n\ -present a list of choices which can be turned on or \n\ -off. If there are more items than can fit on the \n\ -screen, the list will be scrolled. You can use the \n\ -UP/DOWN arrow keys, the first letter of the choice as a \n\ -hot key, or the number keys 1-9 to choose an option. \n\ -Press SPACE to toggle an option on/off. \n\n\ - Which of the following are fruits?" 20 61 5 \ - --file $input 2> $output - -retval=$? - -tempfile=$output -case $retval in - $DIALOG_OK) - echo "Result: `cat $tempfile`";; - $DIALOG_CANCEL) - echo "Cancel pressed.";; - $DIALOG_HELP) - echo "Help pressed: `cat $tempfile`";; - $DIALOG_EXTRA) - echo "Extra button pressed.";; - $DIALOG_ITEM_HELP) - echo "Item-help button pressed: `cat $tempfile`";; - $DIALOG_ESC) - if test -s $tempfile ; then - cat $tempfile - else - echo "ESC pressed." - fi - ;; -esac +trap "rm -f $input $output" $SIG_OFFNE $SIG_HUP $SIG_INT $SIG_TRAP $SIG_TERM DIALOG_ERROR=254 export DIALOG_ERROR backtitle="Mempool Fullnode Installer" +title="Mempool Fullnode Installer" returncode=0 -while test $returncode != 1 && test $returncode != 250 -do -exec 3>&1 -value=`$DIALOG --ok-label "Submit" \ - --backtitle "$backtitle" "$@" \ - --form "Your fullnode will be installed as follows:" \ -20 60 0 \ - "Hostname:" 1 1 "$HOSTNAME" 1 10 40 0 \ - "UID:" 2 1 "$uid" 2 10 8 0 \ - "GID:" 3 1 "$gid" 3 10 8 0 \ - "HOME:" 4 1 "$home" 4 10 40 0 \ -2>&1 1>&3` -returncode=$? -exec 3>&- +################# +# dialog part 1 # +################# -show=`echo "$value" |sed -e 's/^/ /'` +$CUT >$input <<-EOF +Tor:Enable Tor v3 HS Onion:ON +Certbot:Enable HTTPS using Certbot:ON +Mainnet:Enable Bitcoin Mainnet:ON +Testnet:Enable Bitcoin Testnet:ON +Liquid:Enable Elements Liquid:ON +Bisq:Enable Bisq:ON +Lightmode:Enable Electrs Lightmode to save disk space:ON +Smalldisk:Disable Electrs Compaction to save disk space:ON +Firewall:Enable Firewall:ON +EOF - case $returncode in - $DIALOG_CANCEL) - "$DIALOG" \ - --clear \ - --backtitle "$backtitle" \ - --yesno "Really quit?" 10 30 - case $? in - $DIALOG_OK) - break - ;; - $DIALOG_CANCEL) - returncode=99 - ;; - esac - ;; - $DIALOG_OK) - "$DIALOG" \ - --clear \ - --backtitle "$backtitle" --no-collapse --cr-wrap \ - --msgbox "Resulting data:\n\ -$show" 10 40 - ;; - $DIALOG_ERROR) - echo "ERROR!$value" - exit - ;; - $DIALOG_ESC) - echo "ESC pressed." - exit - ;; - *) - echo "Return code was $returncode" - exit - ;; - esac -done +cat $input | sed -e 's/^/"/' -e 's/:/" "/g' -e 's/$/"/' >$output +cat $output >$input +$DIALOG --backtitle "${backtitle}" \ + --title "${title}" "$@" \ + --checklist "Toggle the features below to configure your fullnode:\n" \ + 20 80 10 \ + --file $input 2> $output +retval=$? + +tempfile=$output +if [ $retval != $DIALOG_OK ];then + echo "Installation aborted." + exit 1 +fi + +if grep Tor $tempfile >/dev/null 2>&1;then + TOR_INSTALL=ON +else + TOR_INSTALL=OFF +fi + +if grep Certbot $tempfile >/dev/null 2>&1;then + CERTBOT_INSTALL=ON +else + CERTBOT_INSTALL=OFF +fi + +if grep Mainnet $tempfile >/dev/null 2>&1;then + BITCOIN_MAINNET_ENABLE=ON +else + BITCOIN_MAINNET_ENABLE=OFF +fi + +if grep Testnet $tempfile >/dev/null 2>&1;then + BITCOIN_TESTNET_ENABLE=ON +else + BITCOIN_TESTNET_ENABLE=OFF +fi + +if grep Liquid $tempfile >/dev/null 2>&1;then + ELEMENTS_INSTALL=ON + ELEMENTS_LIQUID_ENABLE=ON +else + ELEMENTS_INSTALL=OFF + ELEMENTS_LIQUID_ENABLE=OFF +fi + +if grep Bisq $tempfile >/dev/null 2>&1;then + BISQ_INSTALL=ON + BISQ_MAINNET_ENABLE=ON +else + BISQ_INSTALL=OFF + BISQ_MAINNET_ENABLE=OFF +fi + +if grep Lightmode $tempfile >/dev/null 2>&1;then + BITCOIN_ELECTRS_LIGHT_MODE=ON +else + BITCOIN_ELECTRS_LIGHT_MODE=OFF +fi + +if grep Smalldisk $tempfile >/dev/null 2>&1;then + BITCOIN_ELECTRS_LIGHT_MODE=ON +else + BITCOIN_ELECTRS_LIGHT_MODE=OFF +fi + +################# +# dialog part 2 # +################# + +$DIALOG --cr-wrap \ + --title "INPUT BOX" --clear \ + --inputbox "$@" \ +"Enter the FQDN hostname for obtaining an SSL certificate using Certbot:" 0 0 "${HOSTNAME}" 2> $tempfile +HOSTNAME=$(cat $tempfile) + +################# +# dialog part 3 # +################# + +# --form text height width formheight +# [ label y x item y x flen ilen ] + #"BISQ_BLOCKNOTIFY_HOST" 0 1 "${BISQ_BLOCKNOTIFY_HOST}" 0 30 0 0 \ + +$DIALOG --ok-label "Submit" \ + --backtitle "$backtitle" "$@" \ + --form "Your fullnode will be installed as follows:" 30 70 0 \ + "BISQ_BLOCKNOTIFY_PORT" 1 1 "${BISQ_BLOCKNOTIFY_PORT}" 1 35 35 0 \ + "BISQ_GROUP" 2 1 "${BISQ_GROUP}" 2 35 35 0 \ + "BISQ_HOME" 3 1 "${BISQ_HOME}" 3 35 35 0 \ + "BISQ_INSTALL" 4 1 "${BISQ_INSTALL}" 4 35 35 0 \ + "BISQ_LATEST_RELEASE" 5 1 "${BISQ_LATEST_RELEASE}" 5 35 35 0 \ + "BISQ_MAINNET_ENABLE" 6 1 "${BISQ_MAINNET_ENABLE}" 6 35 35 0 \ + "BISQ_REPO_BRANCH" 7 1 "${BISQ_REPO_BRANCH}" 7 35 35 0 \ + "BISQ_REPO_NAME" 8 1 "${BISQ_REPO_NAME}" 8 35 35 0 \ + "BISQ_REPO_URL" 9 1 "${BISQ_REPO_URL}" 9 35 35 0 \ + "BISQ_USER" 10 1 "${BISQ_USER}" 10 35 35 0 \ + "BITCOIN_ELECTRS_COMPACTION" 11 1 "${BITCOIN_ELECTRS_COMPACTION}" 11 35 35 0 \ + "BITCOIN_ELECTRS_HOME" 12 1 "${BITCOIN_ELECTRS_HOME}" 12 35 35 0 \ + "BITCOIN_ELECTRS_LATEST_RELEASE" 13 1 "${BITCOIN_ELECTRS_LATEST_RELEASE}" 13 35 35 0 \ + "BITCOIN_ELECTRS_LIGHT_MODE" 14 1 "${BITCOIN_ELECTRS_LIGHT_MODE}" 14 35 35 0 \ + "BITCOIN_ELECTRS_REPO_BRANCH" 15 1 "${BITCOIN_ELECTRS_REPO_BRANCH}" 15 35 35 0 \ + "BITCOIN_ELECTRS_REPO_NAME" 16 1 "${BITCOIN_ELECTRS_REPO_NAME}" 16 35 35 0 \ + "BITCOIN_ELECTRS_REPO_URL" 17 1 "${BITCOIN_ELECTRS_REPO_URL}" 17 35 35 0 \ + "BITCOIN_GROUP" 18 1 "${BITCOIN_GROUP}" 18 35 35 0 \ + "BITCOIN_HOME" 19 1 "${BITCOIN_HOME}" 19 35 35 0 \ + "BITCOIN_INSTALL" 20 1 "${BITCOIN_INSTALL}" 20 35 35 0 \ + "BITCOIN_LATEST_RELEASE" 21 1 "${BITCOIN_LATEST_RELEASE}" 21 35 35 0 \ + "BITCOIN_MAINNET_ENABLE" 22 1 "${BITCOIN_MAINNET_ENABLE}" 22 35 35 0 \ + "BITCOIN_MAINNET_P2P_HOST" 23 1 "${BITCOIN_MAINNET_P2P_HOST}" 23 35 35 0 \ + "BITCOIN_MAINNET_P2P_PORT" 24 1 "${BITCOIN_MAINNET_P2P_PORT}" 24 35 35 0 \ + "BITCOIN_MAINNET_RPC_HOST" 25 1 "${BITCOIN_MAINNET_RPC_HOST}" 25 35 35 0 \ + "BITCOIN_MAINNET_RPC_PASS" 26 1 "${BITCOIN_MAINNET_RPC_PASS}" 26 35 35 0 \ + "BITCOIN_MAINNET_RPC_PORT" 27 1 "${BITCOIN_MAINNET_RPC_PORT}" 27 35 35 0 \ + "BITCOIN_MAINNET_RPC_USER" 28 1 "${BITCOIN_MAINNET_RPC_USER}" 28 35 35 0 \ + "BITCOIN_REPO_BRANCH" 29 1 "${BITCOIN_REPO_BRANCH}" 29 35 35 0 \ + "BITCOIN_REPO_NAME" 30 1 "${BITCOIN_REPO_NAME}" 30 35 35 0 \ + "BITCOIN_REPO_URL" 31 1 "${BITCOIN_REPO_URL}" 31 35 35 0 \ + "BITCOIN_TESTNET_DATA" 32 1 "${BITCOIN_TESTNET_DATA}" 32 35 35 0 \ + "BITCOIN_TESTNET_ENABLE" 33 1 "${BITCOIN_TESTNET_ENABLE}" 33 35 35 0 \ + "BITCOIN_TESTNET_P2P_HOST" 34 1 "${BITCOIN_TESTNET_P2P_HOST}" 34 35 35 0 \ + "BITCOIN_TESTNET_P2P_PORT" 35 1 "${BITCOIN_TESTNET_P2P_PORT}" 35 35 35 0 \ + "BITCOIN_TESTNET_RPC_HOST" 36 1 "${BITCOIN_TESTNET_RPC_HOST}" 36 35 35 0 \ + "BITCOIN_TESTNET_RPC_PASS" 37 1 "${BITCOIN_TESTNET_RPC_PASS}" 37 35 35 0 \ + "BITCOIN_TESTNET_RPC_PORT" 38 1 "${BITCOIN_TESTNET_RPC_PORT}" 38 35 35 0 \ + "BITCOIN_TESTNET_RPC_USER" 39 1 "${BITCOIN_TESTNET_RPC_USER}" 39 35 35 0 \ + "BITCOIN_USER" 40 1 "${BITCOIN_USER}" 40 35 35 0 \ + "ELECTRS_DATA_ROOT" 41 1 "${ELECTRS_DATA_ROOT}" 41 35 35 0 \ + "ELECTRS_LIQUID_DATA" 42 1 "${ELECTRS_LIQUID_DATA}" 42 35 35 0 \ + "ELECTRS_LIQUID_HTTP_HOST" 43 1 "${ELECTRS_LIQUID_HTTP_HOST}" 43 35 35 0 \ + "ELECTRS_LIQUID_HTTP_PORT" 44 1 "${ELECTRS_LIQUID_HTTP_PORT}" 44 35 35 0 \ + "ELECTRS_LIQUID_ZPOOL" 45 1 "${ELECTRS_LIQUID_ZPOOL}" 45 35 35 0 \ + "ELECTRS_MAINNET_DATA" 46 1 "${ELECTRS_MAINNET_DATA}" 46 35 35 0 \ + "ELECTRS_MAINNET_HTTP_HOST" 47 1 "${ELECTRS_MAINNET_HTTP_HOST}" 47 35 35 0 \ + "ELECTRS_MAINNET_HTTP_PORT" 48 1 "${ELECTRS_MAINNET_HTTP_PORT}" 48 35 35 0 \ + "ELECTRS_MAINNET_ZPOOL" 49 1 "${ELECTRS_MAINNET_ZPOOL}" 49 35 35 0 \ + "ELECTRS_TESTNET_DATA" 50 1 "${ELECTRS_TESTNET_DATA}" 50 35 35 0 \ + "ELECTRS_TESTNET_HTTP_HOST" 51 1 "${ELECTRS_TESTNET_HTTP_HOST}" 51 35 35 0 \ + "ELECTRS_TESTNET_HTTP_PORT" 52 1 "${ELECTRS_TESTNET_HTTP_PORT}" 52 35 35 0 \ + "ELECTRS_TESTNET_ZPOOL" 53 1 "${ELECTRS_TESTNET_ZPOOL}" 53 35 35 0 \ + "ELEMENTS_ELECTRS_COMPACTION" 54 1 "${ELEMENTS_ELECTRS_COMPACTION}" 54 35 35 0 \ + "ELEMENTS_ELECTRS_HOME" 55 1 "${ELEMENTS_ELECTRS_HOME}" 55 35 35 0 \ + "ELEMENTS_ELECTRS_LATEST_RELEASE" 56 1 "${ELEMENTS_ELECTRS_LATEST_RELEASE}" 56 35 35 0 \ + "ELEMENTS_ELECTRS_LIGHT_MODE" 57 1 "${ELEMENTS_ELECTRS_LIGHT_MODE}" 57 35 35 0 \ + "ELEMENTS_ELECTRS_REPO_BRANCH" 58 1 "${ELEMENTS_ELECTRS_REPO_BRANCH}" 58 35 35 0 \ + "ELEMENTS_ELECTRS_REPO_NAME" 59 1 "${ELEMENTS_ELECTRS_REPO_NAME}" 59 35 35 0 \ + "ELEMENTS_ELECTRS_REPO_URL" 60 1 "${ELEMENTS_ELECTRS_REPO_URL}" 60 35 35 0 \ + "ELEMENTS_GROUP" 61 1 "${ELEMENTS_GROUP}" 61 35 35 0 \ + "ELEMENTS_HOME" 62 1 "${ELEMENTS_HOME}" 62 35 35 0 \ + "ELEMENTS_INSTALL" 63 1 "${ELEMENTS_INSTALL}" 63 35 35 0 \ + "ELEMENTS_LATEST_RELEASE" 64 1 "${ELEMENTS_LATEST_RELEASE}" 64 35 35 0 \ + "ELEMENTS_LIQUID_ENABLE" 65 1 "${ELEMENTS_LIQUID_ENABLE}" 65 35 35 0 \ + "ELEMENTS_LIQUID_P2P_HOST" 66 1 "${ELEMENTS_LIQUID_P2P_HOST}" 66 35 35 0 \ + "ELEMENTS_LIQUID_P2P_PORT" 67 1 "${ELEMENTS_LIQUID_P2P_PORT}" 67 35 35 0 \ + "ELEMENTS_LIQUID_RPC_HOST" 68 1 "${ELEMENTS_LIQUID_RPC_HOST}" 68 35 35 0 \ + "ELEMENTS_LIQUID_RPC_PASS" 69 1 "${ELEMENTS_LIQUID_RPC_PASS}" 69 35 35 0 \ + "ELEMENTS_LIQUID_RPC_PORT" 70 1 "${ELEMENTS_LIQUID_RPC_PORT}" 70 35 35 0 \ + "ELEMENTS_LIQUID_RPC_USER" 71 1 "${ELEMENTS_LIQUID_RPC_USER}" 71 35 35 0 \ + "ELEMENTS_REPO_BRANCH" 72 1 "${ELEMENTS_REPO_BRANCH}" 72 35 35 0 \ + "ELEMENTS_REPO_NAME" 73 1 "${ELEMENTS_REPO_NAME}" 73 35 35 0 \ + "ELEMENTS_REPO_URL" 74 1 "${ELEMENTS_REPO_URL}" 74 35 35 0 \ + "ELEMENTS_USER" 75 1 "${ELEMENTS_USER}" 75 35 35 0 \ + "MEMPOOL_BISQ_HTTP_HOST" 76 1 "${MEMPOOL_BISQ_HTTP_HOST}" 76 35 35 0 \ + "MEMPOOL_BISQ_HTTP_PORT" 77 1 "${MEMPOOL_BISQ_HTTP_PORT}" 77 35 35 0 \ + "MEMPOOL_GROUP" 78 1 "${MEMPOOL_GROUP}" 78 35 35 0 \ + "MEMPOOL_HOME" 79 1 "${MEMPOOL_HOME}" 79 35 35 0 \ + "MEMPOOL_LATEST_RELEASE" 80 1 "${MEMPOOL_LATEST_RELEASE}" 80 35 35 0 \ + "MEMPOOL_LIQUID_HTTP_HOST" 81 1 "${MEMPOOL_LIQUID_HTTP_HOST}" 81 35 35 0 \ + "MEMPOOL_LIQUID_HTTP_PORT" 82 1 "${MEMPOOL_LIQUID_HTTP_PORT}" 82 35 35 0 \ + "MEMPOOL_MAINNET_HTTP_HOST" 83 1 "${MEMPOOL_MAINNET_HTTP_HOST}" 83 35 35 0 \ + "MEMPOOL_MAINNET_HTTP_PORT" 84 1 "${MEMPOOL_MAINNET_HTTP_PORT}" 84 35 35 0 \ + "MEMPOOL_REPO_BRANCH" 85 1 "${MEMPOOL_REPO_BRANCH}" 85 35 35 0 \ + "MEMPOOL_REPO_NAME" 86 1 "${MEMPOOL_REPO_NAME}" 86 35 35 0 \ + "MEMPOOL_REPO_URL" 87 1 "${MEMPOOL_REPO_URL}" 87 35 35 0 \ + "MEMPOOL_TESTNET_HTTP_HOST" 88 1 "${MEMPOOL_TESTNET_HTTP_HOST}" 88 35 35 0 \ + "MEMPOOL_TESTNET_HTTP_PORT" 89 1 "${MEMPOOL_TESTNET_HTTP_PORT}" 89 35 35 0 \ + "MEMPOOL_TOR_HS" 90 1 "${MEMPOOL_TOR_HS}" 90 35 35 0 \ + "MEMPOOL_USER" 91 1 "${MEMPOOL_USER}" 91 35 35 0 \ + "HOSTNAME" 92 1 "${HOSTNAME}" 92 35 35 0 \ + "TOR_INSTALL" 93 1 "${TOR_INSTALL}" 93 35 35 0 \ + "CERTBOT_INSTALL" 94 1 "${CERTBOT_INSTALL}" 94 35 35 0 \ + +retval=$? + +if [ $retval != $DIALOG_OK ];then + echo "Installation aborted." + exit 1 +fi ############################ # START DOING ACTUAL STUFF # @@ -576,7 +674,6 @@ done date echo "[*] Mempool installation script for ${OS}" -set exit 0 ################################### @@ -609,7 +706,7 @@ osSudo "${MEMPOOL_USER}" git clone --branch "${MEMPOOL_REPO_BRANCH}" "${MEMPOOL_ # Tor installation # #################### -if [ "${TOR_INSTALL}" = true ];then +if [ "${TOR_INSTALL}" = ON ];then echo "[*] Installing Tor package" osPackageInstall "${TOR_PKG}" @@ -633,7 +730,7 @@ fi # Bitcoin installation # ######################## -if [ "${BITCOIN_INSTALL}" = true ];then +if [ "${BITCOIN_INSTALL}" = ON ];then echo "[*] Creating Bitcoin user with Tor access" osSudo "${ROOT_USER}" useradd -d "${BITCOIN_HOME}" -G "${TOR_GROUP}" "${BITCOIN_USER}" @@ -658,7 +755,7 @@ fi # Elements installation # ######################### -if [ "${ELEMENTS_INSTALL}" = true ];then +if [ "${ELEMENTS_INSTALL}" = ON ];then echo "[*] Creating Elements user with Tor access" osSudo "${ROOT_USER}" useradd -d "${ELEMENTS_HOME}" -G "${TOR_GROUP}" "${ELEMENTS_USER}" @@ -719,7 +816,7 @@ osSudo "${ELEMENTS_USER}" sh -c "cd ${ELEMENTS_ELECTRS_HOME} && cargo run --rele # Bisq installation # ##################### -if [ "${BISQ_INSTALL}" = true ];then +if [ "${BISQ_INSTALL}" = ON ];then echo "[*] Creating Bisq user with Tor access" osSudo "${BISQ_USER}" useradd -d "${BISQ_HOME}" -G "${TOR_GROUP}" "${BISQ_USER}" @@ -739,7 +836,7 @@ fi # Bitcoin instance for Mainnet # ################################ -if [ "${BITCOIN_MAINNET_ENABLE}" = true ];then +if [ "${BITCOIN_MAINNET_ENABLE}" = ON ];then echo "[*] Installing Bitcoin Mainnet RPC credentials" osSudo "${ROOT_USER}" sed -i -e "s/__BITCOIN_MAINNET_RPC_USER__/${BITCOIN_MAINNET_RPC_USER}/" "${BITCOIN_HOME}/bitcoin.conf" osSudo "${ROOT_USER}" sed -i -e "s/__BITCOIN_MAINNET_RPC_PASS__/${BITCOIN_MAINNET_RPC_PASS}/" "${BITCOIN_HOME}/bitcoin.conf" @@ -752,7 +849,7 @@ fi # Bitcoin instance for Testnet # ################################ -if [ "${BITCOIN_TESTNET_ENABLE}" = true ];then +if [ "${BITCOIN_TESTNET_ENABLE}" = ON ];then echo "[*] Installing Bitcoin Testnet RPC credentials" osSudo "${ROOT_USER}" sed -i -e "s/__BITCOIN_TESTNET_RPC_USER__/${BITCOIN_TESTNET_RPC_USER}/" "${BITCOIN_TESTNET_DATA}/bitcoin.conf" osSudo "${ROOT_USER}" sed -i -e "s/__BITCOIN_TESTNET_RPC_PASS__/${BITCOIN_TESTNET_RPC_PASS}/" "${BITCOIN_TESTNET_DATA}/bitcoin.conf" @@ -765,28 +862,28 @@ fi # Electrs instance for Bitcoin Mainnet # ######################################## -if [ "${BITCOIN_MAINNET_ENABLE}" = true ];then +if [ "${BITCOIN_MAINNET_ENABLE}" = ON ];then fi ######################################## # Electrs instance for Bitcoin Testnet # ######################################## -if [ "${BITCOIN_TESTNET_ENABLE}" = true ];then +if [ "${BITCOIN_TESTNET_ENABLE}" = ON ];then fi ######################################## # Electrs instance for Elements Liquid # ######################################## -if [ "${ELEMENTS_LIQUID_ENABLE}" = true ];then +if [ "${ELEMENTS_LIQUID_ENABLE}" = ON ];then fi ##################################### # Bisq instance for Bitcoin Mainnet # ##################################### -if [ "${BISQ_MAINNET_ENABLE}" = true ];then +if [ "${BISQ_MAINNET_ENABLE}" = ON ];then echo "[*] Installing Bisq service" osSudo "${ROOT_USER}" install -c -o "${ROOT_USER}" -g "${ROOT_GROUP}" -m 644 "${BISQ_HOME}/${BISQ_REPO_NAME}/seednode/bisq.service" "${DEBIAN_SERVICE_HOME}/bisq.service" osSudo "${ROOT_USER}" sed -i -e "s/#Requires=bitcoin.service/Requires=bitcoin.service/" "${DEBIAN_SERVICE_HOME}/bisq.service" @@ -823,7 +920,7 @@ fi ##### Mempool -> Bitcoin Mainnet instance -if [ "${BITCOIN_MAINNET_ENABLE}" = true ];then +if [ "${BITCOIN_MAINNET_ENABLE}" = ON ];then echo "[*] Creating Mempool instance for Bitcoin Mainnet" osSudo "${MEMPOOL_USER}" git config --global advice.detachedHead false osSudo "${MEMPOOL_USER}" git clone --branch "${MEMPOOL_REPO_BRANCH}" "${MEMPOOL_REPO_URL}" "${MEMPOOL_HOME}/mainnet" @@ -841,24 +938,24 @@ osSudo "${ROOT_USER}" service nginx restart echo "[*] Updating systemd daemon configuration" osSudo "${ROOT_USER}" systemctl daemon-reload -if [ "${TOR_ENABLE}" = true ];then +if [ "${TOR_ENABLE}" = ON ];then osSudo "${ROOT_USER}" systemctl enable tor.service fi -if [ "${BITCOIN_MAINNET_ENABLE}" = true ];then +if [ "${BITCOIN_MAINNET_ENABLE}" = ON ];then osSudo "${ROOT_USER}" systemctl enable bitcoin.service osSudo "${ROOT_USER}" systemctl enable electrs.service osSudo "${ROOT_USER}" systemctl enable mempool.service fi -if [ "${BITCOIN_TESTNET_ENABLE}" = true ];then +if [ "${BITCOIN_TESTNET_ENABLE}" = ON ];then osSudo "${ROOT_USER}" systemctl enable bitcoin-testnet.service osSudo "${ROOT_USER}" systemctl enable electrs-testnet.service osSudo "${ROOT_USER}" systemctl enable mempool-testnet.service fi -if [ "${BISQ_MAINNET_ENABLE}" = true ];then +if [ "${BISQ_MAINNET_ENABLE}" = ON ];then osSudo "${ROOT_USER}" systemctl enable bisq.service osSudo "${ROOT_USER}" systemctl enable mempool-bisq.service fi -if [ "${ELEMENTS_LIQUID_ENABLE}" = true ];then +if [ "${ELEMENTS_LIQUID_ENABLE}" = ON ];then osSudo "${ROOT_USER}" systemctl enable liquid.service osSudo "${ROOT_USER}" systemctl enable electrs-liquid.service osSudo "${ROOT_USER}" systemctl enable mempool-liquid.service @@ -866,20 +963,20 @@ fi ##### OS services -if [ "${BITCOIN_MAINNET_ENABLE}" = true ];then +if [ "${BITCOIN_MAINNET_ENABLE}" = ON ];then echo "[*] Starting Bitcoin Mainnet" osSudo "${ROOT_USER}" systemctl start bitcoin osSudo "${ROOT_USER}" systemctl start electrs osSudo "${ROOT_USER}" journalctl --no-pager --unit bitcoin fi -if [ "${BITCOIN_TESTNET_ENABLE}" = true ];then +if [ "${BITCOIN_TESTNET_ENABLE}" = ON ];then echo "[*] Starting Bitcoin Testnet" osSudo "${ROOT_USER}" systemctl start bitcoin-testnet osSudo "${ROOT_USER}" systemctl start electrs-testnet osSudo "${ROOT_USER}" journalctl --no-pager --unit bitcoin-testnet fi -if [ "${ELEMENTS_LIQUID_ENABLE}" = true ];then +if [ "${ELEMENTS_LIQUID_ENABLE}" = ON ];then echo "[*] Starting Elements Liquid" osSudo "${ROOT_USER}" systemctl start liquid osSudo "${ROOT_USER}" systemctl start electrs-liquid