Add options for components to be installed in prod install script
This commit is contained in:
		
							parent
							
								
									bdb76b3d4b
								
							
						
					
					
						commit
						6e38caee63
					
				@ -668,129 +668,131 @@ ext4CreateDir()
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# does bitcoin exist?
 | 
					# does bitcoin exist?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
###########
 | 
					##########
 | 
				
			||||||
## dialog #
 | 
					# dialog #
 | 
				
			||||||
###########
 | 
					##########
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#: ${DIALOG=dialog}
 | 
					: ${DIALOG=dialog}
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#: ${DIALOG_OK=0}
 | 
					: ${DIALOG_OK=0}
 | 
				
			||||||
#: ${DIALOG_CANCEL=1}
 | 
					: ${DIALOG_CANCEL=1}
 | 
				
			||||||
#: ${DIALOG_HELP=2}
 | 
					: ${DIALOG_HELP=2}
 | 
				
			||||||
#: ${DIALOG_EXTRA=3}
 | 
					: ${DIALOG_EXTRA=3}
 | 
				
			||||||
#: ${DIALOG_ITEM_HELP=4}
 | 
					: ${DIALOG_ITEM_HELP=4}
 | 
				
			||||||
#: ${DIALOG_ESC=255}
 | 
					: ${DIALOG_ESC=255}
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#: ${SIG_OFFNE=0}
 | 
					: ${SIG_OFFNE=0}
 | 
				
			||||||
#: ${SIG_HUP=1}
 | 
					: ${SIG_HUP=1}
 | 
				
			||||||
#: ${SIG_INT=2}
 | 
					: ${SIG_INT=2}
 | 
				
			||||||
#: ${SIG_QUIT=3}
 | 
					: ${SIG_QUIT=3}
 | 
				
			||||||
#: ${SIG_KILL=9}
 | 
					: ${SIG_KILL=9}
 | 
				
			||||||
#: ${SIG_TERM=15}
 | 
					: ${SIG_TERM=15}
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#input=`tempfile 2>/dev/null` || input=/tmp/input$$
 | 
					input=`tempfile 2>/dev/null` || input=/tmp/input$$
 | 
				
			||||||
#output=`tempfile 2>/dev/null` || output=/tmp/test$$
 | 
					output=`tempfile 2>/dev/null` || output=/tmp/test$$
 | 
				
			||||||
#trap "rm -f $input $output" $SIG_OFFNE $SIG_HUP $SIG_INT $SIG_TRAP $SIG_TERM
 | 
					trap "rm -f $input $output" $SIG_OFFNE $SIG_HUP $SIG_INT $SIG_TRAP $SIG_TERM
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#DIALOG_ERROR=254
 | 
					DIALOG_ERROR=254
 | 
				
			||||||
#export DIALOG_ERROR
 | 
					export DIALOG_ERROR
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#backtitle="Mempool Fullnode Installer"
 | 
					backtitle="Mempool Fullnode Installer"
 | 
				
			||||||
#title="Mempool Fullnode Installer"
 | 
					title="Mempool Fullnode Installer"
 | 
				
			||||||
#returncode=0
 | 
					returncode=0
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
##################
 | 
					#################
 | 
				
			||||||
## dialog part 1 #
 | 
					# dialog part 1 #
 | 
				
			||||||
##################
 | 
					#################
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#$CUT >$input <<-EOF
 | 
					$CUT >$input <<-EOF
 | 
				
			||||||
#Tor:Enable Tor v3 HS Onion:ON
 | 
					Tor:Enable Tor v3 HS Onion:ON
 | 
				
			||||||
#Certbot:Enable HTTPS using Certbot:ON
 | 
					Mainnet:Enable Bitcoin Mainnet:ON
 | 
				
			||||||
#Mainnet:Enable Bitcoin Mainnet:ON
 | 
					Mainnet-Minfee:Enable Bitcoin Mainnet Minfee:ON
 | 
				
			||||||
#Mainnet-Minfee:Enable Bitcoin Mainnet Minfee:ON
 | 
					Testnet:Enable Bitcoin Testnet:ON
 | 
				
			||||||
#Testnet:Enable Bitcoin Testnet:ON
 | 
					Signet:Enable Bitcoin Signet:ON
 | 
				
			||||||
#Liquid:Enable Elements Liquid:ON
 | 
					Liquid:Enable Elements Liquid:ON
 | 
				
			||||||
#Bisq:Enable Bisq:ON
 | 
					Liquidtestnet:Enable Elements Liquidtestnet:ON
 | 
				
			||||||
#Lightmode:Enable Electrs Lightmode to save disk space:ON
 | 
					Bisq:Enable Bisq:ON
 | 
				
			||||||
#Smalldisk:Disable Electrs Compaction to save disk space:ON
 | 
					EOF
 | 
				
			||||||
#Firewall:Enable Firewall:ON
 | 
					
 | 
				
			||||||
#EOF
 | 
					cat $input | sed -e 's/^/"/' -e 's/:/" "/g' -e 's/$/"/' >$output
 | 
				
			||||||
#
 | 
					cat $output >$input
 | 
				
			||||||
#cat $input | sed -e 's/^/"/' -e 's/:/" "/g' -e 's/$/"/' >$output
 | 
					
 | 
				
			||||||
#cat $output >$input
 | 
					$DIALOG --backtitle "${backtitle}" \
 | 
				
			||||||
#
 | 
					        --title "${title}" "$@" \
 | 
				
			||||||
#$DIALOG --backtitle "${backtitle}" \
 | 
					        --checklist "Toggle the features below to configure your fullnode:\n" \
 | 
				
			||||||
#        --title "${title}" "$@" \
 | 
					        20 80 10 \
 | 
				
			||||||
#        --checklist "Toggle the features below to configure your fullnode:\n" \
 | 
					        --file $input 2> $output
 | 
				
			||||||
#        20 80 10 \
 | 
					
 | 
				
			||||||
#        --file $input 2> $output
 | 
					retval=$?
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#retval=$?
 | 
					tempfile=$output
 | 
				
			||||||
#
 | 
					if [ $retval != $DIALOG_OK ];then
 | 
				
			||||||
#tempfile=$output
 | 
					    echo "Installation aborted."
 | 
				
			||||||
#if [ $retval != $DIALOG_OK ];then
 | 
					    exit 1
 | 
				
			||||||
#    echo "Installation aborted."
 | 
					fi
 | 
				
			||||||
#    exit 1
 | 
					
 | 
				
			||||||
#fi
 | 
					if grep Tor $tempfile >/dev/null 2>&1;then
 | 
				
			||||||
#
 | 
					    TOR_INSTALL=ON
 | 
				
			||||||
#if grep Tor $tempfile >/dev/null 2>&1;then
 | 
					else
 | 
				
			||||||
#    TOR_INSTALL=ON
 | 
					    TOR_INSTALL=OFF
 | 
				
			||||||
#else
 | 
					fi
 | 
				
			||||||
#    TOR_INSTALL=OFF
 | 
					
 | 
				
			||||||
#fi
 | 
					if grep Mainnet $tempfile >/dev/null 2>&1;then
 | 
				
			||||||
#
 | 
					    BITCOIN_MAINNET_ENABLE=ON
 | 
				
			||||||
#if grep Certbot $tempfile >/dev/null 2>&1;then
 | 
					else
 | 
				
			||||||
#    CERTBOT_INSTALL=ON
 | 
					    BITCOIN_MAINNET_ENABLE=OFF
 | 
				
			||||||
#else
 | 
					fi
 | 
				
			||||||
#    CERTBOT_INSTALL=OFF
 | 
					
 | 
				
			||||||
#fi
 | 
					if grep Mainnet-Minfee $tempfile >/dev/null 2>&1;then
 | 
				
			||||||
#
 | 
					    BITCOIN_MAINNET_MINFEE_ENABLE=ON
 | 
				
			||||||
#if grep Mainnet $tempfile >/dev/null 2>&1;then
 | 
					else
 | 
				
			||||||
#    BITCOIN_MAINNET_ENABLE=ON
 | 
					    BITCOIN_MAINNET_MINFEE_ENABLE=OFF
 | 
				
			||||||
#else
 | 
					fi
 | 
				
			||||||
#    BITCOIN_MAINNET_ENABLE=OFF
 | 
					
 | 
				
			||||||
#fi
 | 
					if grep Testnet $tempfile >/dev/null 2>&1;then
 | 
				
			||||||
#
 | 
					    BITCOIN_TESTNET_ENABLE=ON
 | 
				
			||||||
#if grep Mainnet-Minfee $tempfile >/dev/null 2>&1;then
 | 
					else
 | 
				
			||||||
#    BITCOIN_MAINNET_MINFEE_ENABLE=ON
 | 
					    BITCOIN_TESTNET_ENABLE=OFF
 | 
				
			||||||
#else
 | 
					fi
 | 
				
			||||||
#    BITCOIN_MAINNET_MINFEE_ENABLE=OFF
 | 
					
 | 
				
			||||||
#fi
 | 
					if grep Signet $tempfile >/dev/null 2>&1;then
 | 
				
			||||||
#
 | 
					    BITCOIN_SIGNET_ENABLE=ON
 | 
				
			||||||
#if grep Testnet $tempfile >/dev/null 2>&1;then
 | 
					else
 | 
				
			||||||
#    BITCOIN_TESTNET_ENABLE=ON
 | 
					    BITCOIN_SIGNET_ENABLE=OFF
 | 
				
			||||||
#else
 | 
					fi
 | 
				
			||||||
#    BITCOIN_TESTNET_ENABLE=OFF
 | 
					
 | 
				
			||||||
#fi
 | 
					if [ "${BITCOIN_MAINNET_ENABLE}" = ON -o "${BITCOIN_MAINNET_MINFEE_ENABLE}" = ON -o "${BITCOIN_TESTNET_ENABLE}" = ON -o "${BITCOIN_SIGNET_ENABLE}" = ON ];then
 | 
				
			||||||
#
 | 
					    BITCOIN_INSTALL=ON
 | 
				
			||||||
#if grep Liquid $tempfile >/dev/null 2>&1;then
 | 
					else
 | 
				
			||||||
#    ELEMENTS_INSTALL=ON
 | 
					    BITCOIN_INSTALL=OFF
 | 
				
			||||||
#    ELEMENTS_LIQUID_ENABLE=ON
 | 
					fi
 | 
				
			||||||
#else
 | 
					
 | 
				
			||||||
#    ELEMENTS_INSTALL=OFF
 | 
					if grep Liquid $tempfile >/dev/null 2>&1;then
 | 
				
			||||||
#    ELEMENTS_LIQUID_ENABLE=OFF
 | 
					    ELEMENTS_LIQUID_ENABLE=ON
 | 
				
			||||||
#fi
 | 
					else
 | 
				
			||||||
#
 | 
					    ELEMENTS_LIQUID_ENABLE=OFF
 | 
				
			||||||
#if grep Bisq $tempfile >/dev/null 2>&1;then
 | 
					fi
 | 
				
			||||||
#    BISQ_INSTALL=ON
 | 
					
 | 
				
			||||||
#    BISQ_MAINNET_ENABLE=ON
 | 
					if grep Liquidtestnet $tempfile >/dev/null 2>&1;then
 | 
				
			||||||
#else
 | 
					    ELEMENTS_LIQUIDTESTNET_ENABLE=ON
 | 
				
			||||||
#    BISQ_INSTALL=OFF
 | 
					else
 | 
				
			||||||
#    BISQ_MAINNET_ENABLE=OFF
 | 
					    ELEMENTS_LIQUIDTESTNET_ENABLE=OFF
 | 
				
			||||||
#fi
 | 
					fi
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#if grep Lightmode $tempfile >/dev/null 2>&1;then
 | 
					if [ "${ELEMENTS_LIQUID_ENABLE}" = ON -o "${ELEMENTS_LIQUIDTESTNET_ENABLE}" = ON ];then
 | 
				
			||||||
#    BITCOIN_ELECTRS_LIGHT_MODE=ON
 | 
					    ELEMENTS_INSTALL=ON
 | 
				
			||||||
#else
 | 
					else
 | 
				
			||||||
#    BITCOIN_ELECTRS_LIGHT_MODE=OFF
 | 
					    ELEMENTS_INSTALL=OFF
 | 
				
			||||||
#fi
 | 
					fi
 | 
				
			||||||
#
 | 
					
 | 
				
			||||||
#if grep Smalldisk $tempfile >/dev/null 2>&1;then
 | 
					if grep Bisq $tempfile >/dev/null 2>&1;then
 | 
				
			||||||
#    BITCOIN_ELECTRS_LIGHT_MODE=ON
 | 
					    BISQ_INSTALL=ON
 | 
				
			||||||
#else
 | 
					    BISQ_MAINNET_ENABLE=ON
 | 
				
			||||||
#    BITCOIN_ELECTRS_LIGHT_MODE=OFF
 | 
					else
 | 
				
			||||||
#fi
 | 
					    BISQ_INSTALL=OFF
 | 
				
			||||||
#
 | 
					    BISQ_MAINNET_ENABLE=OFF
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
##################
 | 
					##################
 | 
				
			||||||
## dialog part 2 #
 | 
					## dialog part 2 #
 | 
				
			||||||
##################
 | 
					##################
 | 
				
			||||||
@ -969,12 +971,20 @@ if [ "${BITCOIN_INSTALL}" = ON ];then
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    echo "[*] Creating Bitcoin user with Tor access"
 | 
					    echo "[*] Creating Bitcoin user with Tor access"
 | 
				
			||||||
    osGroupCreate "${BITCOIN_GROUP}"
 | 
					    osGroupCreate "${BITCOIN_GROUP}"
 | 
				
			||||||
    osUserCreate "${BITCOIN_USER}" "${BITCOIN_HOME}" "${BITCOIN_GROUP}" "${TOR_GROUP}"
 | 
					    if [ "${TOR_INSTALL}" = ON ];then
 | 
				
			||||||
 | 
					        osUserCreate "${BITCOIN_USER}" "${BITCOIN_HOME}" "${BITCOIN_GROUP}" "${TOR_GROUP}"
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					        osUserCreate "${BITCOIN_USER}" "${BITCOIN_HOME}" "${BITCOIN_GROUP}"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
    osSudo "${ROOT_USER}" chsh -s `which zsh` "${BITCOIN_USER}"
 | 
					    osSudo "${ROOT_USER}" chsh -s `which zsh` "${BITCOIN_USER}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    echo "[*] Creating Bitcoin minfee user with Tor access"
 | 
					    echo "[*] Creating Bitcoin minfee user with Tor access"
 | 
				
			||||||
    osGroupCreate "${MINFEE_GROUP}"
 | 
					    osGroupCreate "${MINFEE_GROUP}"
 | 
				
			||||||
    osUserCreate "${MINFEE_USER}" "${MINFEE_HOME}" "${MINFEE_GROUP}" "${TOR_GROUP}"
 | 
					    if [ "${TOR_INSTALL}" = ON ];then
 | 
				
			||||||
 | 
					        osUserCreate "${MINFEE_USER}" "${MINFEE_HOME}" "${MINFEE_GROUP}" "${TOR_GROUP}"
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					        osUserCreate "${MINFEE_USER}" "${MINFEE_HOME}" "${MINFEE_GROUP}"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
    osSudo "${ROOT_USER}" chown -R "${MINFEE_USER}:${MINFEE_GROUP}" "${MINFEE_HOME}"
 | 
					    osSudo "${ROOT_USER}" chown -R "${MINFEE_USER}:${MINFEE_GROUP}" "${MINFEE_HOME}"
 | 
				
			||||||
    osSudo "${ROOT_USER}" chsh -s `which zsh` "${MINFEE_USER}"
 | 
					    osSudo "${ROOT_USER}" chsh -s `which zsh` "${MINFEE_USER}"
 | 
				
			||||||
    osSudo "${MINFEE_USER}" touch "${MINFEE_HOME}/.zshrc"
 | 
					    osSudo "${MINFEE_USER}" touch "${MINFEE_HOME}/.zshrc"
 | 
				
			||||||
@ -1022,7 +1032,11 @@ if [ "${ELEMENTS_INSTALL}" = ON ];then
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    echo "[*] Creating Elements user with Tor access"
 | 
					    echo "[*] Creating Elements user with Tor access"
 | 
				
			||||||
    osGroupCreate "${ELEMENTS_GROUP}"
 | 
					    osGroupCreate "${ELEMENTS_GROUP}"
 | 
				
			||||||
    osUserCreate "${ELEMENTS_USER}" "${ELEMENTS_HOME}" "${ELEMENTS_GROUP}" "${TOR_GROUP}"
 | 
					    if [ "${TOR_INSTALL}" = ON ];then
 | 
				
			||||||
 | 
					        osUserCreate "${ELEMENTS_USER}" "${ELEMENTS_HOME}" "${ELEMENTS_GROUP}" "${TOR_GROUP}"
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					        osUserCreate "${ELEMENTS_USER}" "${ELEMENTS_HOME}" "${ELEMENTS_GROUP}"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
    osSudo "${ROOT_USER}" chsh -s `which zsh` "${ELEMENTS_USER}"
 | 
					    osSudo "${ROOT_USER}" chsh -s `which zsh` "${ELEMENTS_USER}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    echo "[*] Creating Elements data folder"
 | 
					    echo "[*] Creating Elements data folder"
 | 
				
			||||||
@ -1063,9 +1077,15 @@ fi
 | 
				
			|||||||
echo "[*] Creating Bitcoin Electrs data folder"
 | 
					echo "[*] Creating Bitcoin Electrs data folder"
 | 
				
			||||||
osSudo "${ROOT_USER}" mkdir -p "${BITCOIN_ELECTRS_HOME}"
 | 
					osSudo "${ROOT_USER}" mkdir -p "${BITCOIN_ELECTRS_HOME}"
 | 
				
			||||||
osSudo "${ROOT_USER}" chown -R "${BITCOIN_USER}:${BITCOIN_GROUP}" "${BITCOIN_ELECTRS_HOME}"
 | 
					osSudo "${ROOT_USER}" chown -R "${BITCOIN_USER}:${BITCOIN_GROUP}" "${BITCOIN_ELECTRS_HOME}"
 | 
				
			||||||
osSudo "${ROOT_USER}" chown -R "${BITCOIN_USER}:${BITCOIN_GROUP}" "${ELECTRS_MAINNET_DATA}"
 | 
					if [ "${BITCOIN_MAINNET_ENABLE}" = ON ];then 
 | 
				
			||||||
osSudo "${ROOT_USER}" chown -R "${BITCOIN_USER}:${BITCOIN_GROUP}" "${ELECTRS_TESTNET_DATA}"
 | 
					    osSudo "${ROOT_USER}" chown -R "${BITCOIN_USER}:${BITCOIN_GROUP}" "${ELECTRS_MAINNET_DATA}"
 | 
				
			||||||
osSudo "${ROOT_USER}" chown -R "${BITCOIN_USER}:${BITCOIN_GROUP}" "${ELECTRS_SIGNET_DATA}"
 | 
					fi
 | 
				
			||||||
 | 
					if [ "${BITCOIN_TESTNET_ENABLE}" = ON ];then 
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" chown -R "${BITCOIN_USER}:${BITCOIN_GROUP}" "${ELECTRS_TESTNET_DATA}"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					if [ "${BITCOIN_SIGNET_ENABLE}" = ON ];then 
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" chown -R "${BITCOIN_USER}:${BITCOIN_GROUP}" "${ELECTRS_SIGNET_DATA}"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
echo "[*] Cloning Bitcoin Electrs repo from ${BITCOIN_ELECTRS_REPO_URL}"
 | 
					echo "[*] Cloning Bitcoin Electrs repo from ${BITCOIN_ELECTRS_REPO_URL}"
 | 
				
			||||||
osSudo "${BITCOIN_USER}" git config --global advice.detachedHead false
 | 
					osSudo "${BITCOIN_USER}" git config --global advice.detachedHead false
 | 
				
			||||||
@ -1105,43 +1125,46 @@ osSudo "${BITCOIN_USER}" sh -c "cd ${BITCOIN_ELECTRS_HOME} && cargo run --releas
 | 
				
			|||||||
# Liquid -> Electrs installation #
 | 
					# Liquid -> Electrs installation #
 | 
				
			||||||
##################################
 | 
					##################################
 | 
				
			||||||
 | 
					
 | 
				
			||||||
echo "[*] Creating Liquid Electrs data folder"
 | 
					if [ "${ELEMENTS_INSTALL}" = ON ;then
 | 
				
			||||||
osSudo "${ROOT_USER}" mkdir -p "${ELEMENTS_ELECTRS_HOME}"
 | 
					 | 
				
			||||||
osSudo "${ROOT_USER}" chown -R "${ELEMENTS_USER}:${ELEMENTS_GROUP}" "${ELEMENTS_HOME}"
 | 
					 | 
				
			||||||
osSudo "${ROOT_USER}" chown -R "${ELEMENTS_USER}:${ELEMENTS_GROUP}" "${ELEMENTS_ELECTRS_HOME}"
 | 
					 | 
				
			||||||
osSudo "${ROOT_USER}" chown -R "${ELEMENTS_USER}:${ELEMENTS_GROUP}" "${ELECTRS_LIQUID_DATA}"
 | 
					 | 
				
			||||||
osSudo "${ROOT_USER}" chown -R "${ELEMENTS_USER}:${ELEMENTS_GROUP}" "${ELECTRS_LIQUIDTESTNET_DATA}"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
echo "[*] Cloning Liquid Electrs repo from ${ELEMENTS_ELECTRS_REPO_URL}"
 | 
					 | 
				
			||||||
osSudo "${ELEMENTS_USER}" git config --global advice.detachedHead false
 | 
					 | 
				
			||||||
osSudo "${ELEMENTS_USER}" git clone --branch "${ELEMENTS_ELECTRS_REPO_BRANCH}" "${ELEMENTS_ELECTRS_REPO_URL}" "${ELEMENTS_HOME}/${ELEMENTS_ELECTRS_REPO_NAME}"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
echo "[*] Checking out Liquid Electrs ${ELEMENTS_ELECTRS_LATEST_RELEASE}"
 | 
					 | 
				
			||||||
osSudo "${ELEMENTS_USER}" sh -c "cd ${ELEMENTS_HOME}/${ELEMENTS_ELECTRS_REPO_NAME} && git checkout ${ELEMENTS_ELECTRS_LATEST_RELEASE}"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
echo "[*] Cloning Liquid Asset Registry repo from ${LIQUID_ASSET_REGISTRY_DB_URL}"
 | 
					 | 
				
			||||||
osSudo "${ELEMENTS_USER}" git config --global advice.detachedHead false
 | 
					 | 
				
			||||||
osSudo "${ELEMENTS_USER}" git clone "${LIQUID_ASSET_REGISTRY_DB_URL}" "${ELEMENTS_HOME}/${LIQUID_ASSET_REGISTRY_DB_NAME}"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
echo "[*] Cloning Liquid Asset Registry testnet repo from ${LIQUIDTESTNET_ASSET_REGISTRY_DB_URL}"
 | 
					 | 
				
			||||||
osSudo "${ELEMENTS_USER}" git config --global advice.detachedHead false
 | 
					 | 
				
			||||||
osSudo "${ELEMENTS_USER}" git clone "${LIQUIDTESTNET_ASSET_REGISTRY_DB_URL}" "${ELEMENTS_HOME}/${LIQUIDTESTNET_ASSET_REGISTRY_DB_NAME}"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
echo "[*] Building Liquid Electrs release binary"
 | 
					 | 
				
			||||||
osSudo "${ELEMENTS_USER}" sh -c "cd ${ELEMENTS_ELECTRS_HOME} && cargo run --release --features liquid --bin electrs -- --network liquid --version" || true
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
case $OS in
 | 
					 | 
				
			||||||
    FreeBSD)
 | 
					 | 
				
			||||||
        echo "[*] Patching Liquid Electrs code for FreeBSD"
 | 
					 | 
				
			||||||
        osSudo "${ELEMENTS_USER}" sh -c "cd \"${ELEMENTS_HOME}/.cargo/registry/src/github.com-1ecc6299db9ec823/sysconf-0.3.4\" && patch -p1 < \"${MEMPOOL_HOME}/${MEMPOOL_REPO_NAME}/production/freebsd/sysconf.patch\""
 | 
					 | 
				
			||||||
    ;;
 | 
					 | 
				
			||||||
    Debian)
 | 
					 | 
				
			||||||
    ;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
echo "[*] Building Liquid Electrs release binary"
 | 
					 | 
				
			||||||
osSudo "${ELEMENTS_USER}" sh -c "cd ${ELEMENTS_ELECTRS_HOME} && cargo run --release --features liquid --bin electrs -- --network liquid --version" || true
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    echo "[*] Creating Liquid Electrs data folder"
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" mkdir -p "${ELEMENTS_ELECTRS_HOME}"
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" chown -R "${ELEMENTS_USER}:${ELEMENTS_GROUP}" "${ELEMENTS_HOME}"
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" chown -R "${ELEMENTS_USER}:${ELEMENTS_GROUP}" "${ELEMENTS_ELECTRS_HOME}"
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" chown -R "${ELEMENTS_USER}:${ELEMENTS_GROUP}" "${ELECTRS_LIQUID_DATA}"
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" chown -R "${ELEMENTS_USER}:${ELEMENTS_GROUP}" "${ELECTRS_LIQUIDTESTNET_DATA}"
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    echo "[*] Cloning Liquid Electrs repo from ${ELEMENTS_ELECTRS_REPO_URL}"
 | 
				
			||||||
 | 
					    osSudo "${ELEMENTS_USER}" git config --global advice.detachedHead false
 | 
				
			||||||
 | 
					    osSudo "${ELEMENTS_USER}" git clone --branch "${ELEMENTS_ELECTRS_REPO_BRANCH}" "${ELEMENTS_ELECTRS_REPO_URL}" "${ELEMENTS_HOME}/${ELEMENTS_ELECTRS_REPO_NAME}"
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    echo "[*] Checking out Liquid Electrs ${ELEMENTS_ELECTRS_LATEST_RELEASE}"
 | 
				
			||||||
 | 
					    osSudo "${ELEMENTS_USER}" sh -c "cd ${ELEMENTS_HOME}/${ELEMENTS_ELECTRS_REPO_NAME} && git checkout ${ELEMENTS_ELECTRS_LATEST_RELEASE}"
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    echo "[*] Cloning Liquid Asset Registry repo from ${LIQUID_ASSET_REGISTRY_DB_URL}"
 | 
				
			||||||
 | 
					    osSudo "${ELEMENTS_USER}" git config --global advice.detachedHead false
 | 
				
			||||||
 | 
					    osSudo "${ELEMENTS_USER}" git clone "${LIQUID_ASSET_REGISTRY_DB_URL}" "${ELEMENTS_HOME}/${LIQUID_ASSET_REGISTRY_DB_NAME}"
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    echo "[*] Cloning Liquid Asset Registry testnet repo from ${LIQUIDTESTNET_ASSET_REGISTRY_DB_URL}"
 | 
				
			||||||
 | 
					    osSudo "${ELEMENTS_USER}" git config --global advice.detachedHead false
 | 
				
			||||||
 | 
					    osSudo "${ELEMENTS_USER}" git clone "${LIQUIDTESTNET_ASSET_REGISTRY_DB_URL}" "${ELEMENTS_HOME}/${LIQUIDTESTNET_ASSET_REGISTRY_DB_NAME}"
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    echo "[*] Building Liquid Electrs release binary"
 | 
				
			||||||
 | 
					    osSudo "${ELEMENTS_USER}" sh -c "cd ${ELEMENTS_ELECTRS_HOME} && cargo run --release --features liquid --bin electrs -- --network liquid --version" || true
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    case $OS in
 | 
				
			||||||
 | 
					        FreeBSD)
 | 
				
			||||||
 | 
					            echo "[*] Patching Liquid Electrs code for FreeBSD"
 | 
				
			||||||
 | 
					            osSudo "${ELEMENTS_USER}" sh -c "cd \"${ELEMENTS_HOME}/.cargo/registry/src/github.com-1ecc6299db9ec823/sysconf-0.3.4\" && patch -p1 < \"${MEMPOOL_HOME}/${MEMPOOL_REPO_NAME}/production/freebsd/sysconf.patch\""
 | 
				
			||||||
 | 
					        ;;
 | 
				
			||||||
 | 
					        Debian)
 | 
				
			||||||
 | 
					        ;;
 | 
				
			||||||
 | 
					    esac
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    echo "[*] Building Liquid Electrs release binary"
 | 
				
			||||||
 | 
					    osSudo "${ELEMENTS_USER}" sh -c "cd ${ELEMENTS_ELECTRS_HOME} && cargo run --release --features liquid --bin electrs -- --network liquid --version" || true
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
#####################
 | 
					#####################
 | 
				
			||||||
# Bisq installation #
 | 
					# Bisq installation #
 | 
				
			||||||
#####################
 | 
					#####################
 | 
				
			||||||
@ -1150,7 +1173,11 @@ if [ "${BISQ_INSTALL}" = ON ];then
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    echo "[*] Creating Bisq user with Tor access"
 | 
					    echo "[*] Creating Bisq user with Tor access"
 | 
				
			||||||
    osGroupCreate "${BISQ_GROUP}"
 | 
					    osGroupCreate "${BISQ_GROUP}"
 | 
				
			||||||
    osUserCreate "${BISQ_USER}" "${BISQ_HOME}" "${BISQ_GROUP}" "${TOR_GROUP}"
 | 
					    if [ "${TOR_INSTALL}" = ON ];then
 | 
				
			||||||
 | 
					        osUserCreate "${BISQ_USER}" "${BISQ_HOME}" "${BISQ_GROUP}" "${TOR_GROUP}"
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					        osUserCreate "${BISQ_USER}" "${BISQ_HOME}" "${BISQ_GROUP}"
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
    osSudo "${ROOT_USER}" chsh -s `which zsh` "${BISQ_USER}"
 | 
					    osSudo "${ROOT_USER}" chsh -s `which zsh` "${BISQ_USER}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    echo "[*] Creating Bisq data folder"
 | 
					    echo "[*] Creating Bisq data folder"
 | 
				
			||||||
@ -1435,7 +1462,9 @@ case $OS in
 | 
				
			|||||||
            echo "[*] Installing Electrs Signet Cronjob"
 | 
					            echo "[*] Installing Electrs Signet Cronjob"
 | 
				
			||||||
            crontab_bitcoin+="@reboot sleep 90 ; screen -dmS signet /bitcoin/electrs/electrs-start-signet\n"
 | 
					            crontab_bitcoin+="@reboot sleep 90 ; screen -dmS signet /bitcoin/electrs/electrs-start-signet\n"
 | 
				
			||||||
        fi
 | 
					        fi
 | 
				
			||||||
        echo "${crontab_bitcoin}" | crontab -u "${BITCOIN_USER}" -
 | 
					        if [ "${BITCOIN_MAINNET_ENABLE}" = ON -o "${BITCOIN_TESTNET_ENABLE}" = ON -o "${BITCOIN_SIGNET_ENABLE}" = ON ];then
 | 
				
			||||||
 | 
					            echo "${crontab_bitcoin}" | crontab -u "${BITCOIN_USER}" -
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        crontab_elements=()
 | 
					        crontab_elements=()
 | 
				
			||||||
        if [ "${ELEMENTS_LIQUID_ENABLE}" = ON ];then
 | 
					        if [ "${ELEMENTS_LIQUID_ENABLE}" = ON ];then
 | 
				
			||||||
@ -1446,7 +1475,9 @@ case $OS in
 | 
				
			|||||||
            echo "[*] Installing Liquid Asset Testnet Cronjob"
 | 
					            echo "[*] Installing Liquid Asset Testnet Cronjob"
 | 
				
			||||||
            crontab_elements+="6 * * * * cd $HOME/asset_registry_testnet_db && git pull origin master >/dev/null 2>&1\n"
 | 
					            crontab_elements+="6 * * * * cd $HOME/asset_registry_testnet_db && git pull origin master >/dev/null 2>&1\n"
 | 
				
			||||||
        fi
 | 
					        fi
 | 
				
			||||||
        echo "${crontab_elements}" | crontab -u "${ELEMENTS_USER}" -
 | 
					        if [ "${ELEMENTS_LIQUID_ENABLE}" = ON -o "${ELEMENTS_LIQUIDTESTNET_ENABLE}" = ON ];then
 | 
				
			||||||
 | 
					            echo "${crontab_elements}" | crontab -u "${ELEMENTS_USER}" -
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
    ;;
 | 
					    ;;
 | 
				
			||||||
esac
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1459,7 +1490,7 @@ fi
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
##### Mempool -> Bitcoin Mainnet instance
 | 
					##### Mempool -> Bitcoin Mainnet instance
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [ "${BITCOIN_MAINNET_ENABLE}" = ON ];then
 | 
					if [ "${BITCOIN_MAINNET_ENABLE}" = ON -o "${BITCOIN_TESTNET_ENABLE}" = ON -o "${BITCOIN_SIGNET_ENABLE}" = ON ];then
 | 
				
			||||||
    echo "[*] Creating Mempool instance for Bitcoin Mainnet"
 | 
					    echo "[*] Creating Mempool instance for Bitcoin Mainnet"
 | 
				
			||||||
    osSudo "${MEMPOOL_USER}" git config --global advice.detachedHead false
 | 
					    osSudo "${MEMPOOL_USER}" git config --global advice.detachedHead false
 | 
				
			||||||
    osSudo "${MEMPOOL_USER}" git clone --branch "${MEMPOOL_REPO_BRANCH}" "${MEMPOOL_REPO_URL}" "${MEMPOOL_HOME}/mainnet"
 | 
					    osSudo "${MEMPOOL_USER}" git clone --branch "${MEMPOOL_REPO_BRANCH}" "${MEMPOOL_REPO_URL}" "${MEMPOOL_HOME}/mainnet"
 | 
				
			||||||
@ -1564,12 +1595,6 @@ _EOF_
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
##### nginx
 | 
					##### nginx
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
echo "[*] Read tor v3 onion hostnames"
 | 
					 | 
				
			||||||
NGINX_MEMPOOL_ONION=$(cat "${TOR_RESOURCES}/mempool/hostname")
 | 
					 | 
				
			||||||
NGINX_BISQ_ONION=$(cat "${TOR_RESOURCES}/bisq/hostname")
 | 
					 | 
				
			||||||
NGINX_LIQUID_ONION=$(cat "${TOR_RESOURCES}/liquid/hostname")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
echo "[*] Adding Nginx configuration"
 | 
					echo "[*] Adding Nginx configuration"
 | 
				
			||||||
osSudo "${ROOT_USER}" install -c -o "${ROOT_USER}" -g "${ROOT_GROUP}" -m 644 "${MEMPOOL_HOME}/${MEMPOOL_REPO_NAME}/production/nginx/nginx.conf" "${NGINX_CONFIGURATION}"
 | 
					osSudo "${ROOT_USER}" install -c -o "${ROOT_USER}" -g "${ROOT_GROUP}" -m 644 "${MEMPOOL_HOME}/${MEMPOOL_REPO_NAME}/production/nginx/nginx.conf" "${NGINX_CONFIGURATION}"
 | 
				
			||||||
mkdir -p /var/cache/nginx/services /var/cache/nginx/api
 | 
					mkdir -p /var/cache/nginx/services /var/cache/nginx/api
 | 
				
			||||||
@ -1577,9 +1602,15 @@ chown ${NGINX_USER}: /var/cache/nginx/services /var/cache/nginx/api
 | 
				
			|||||||
ln -s /mempool/mempool /etc/nginx/mempool
 | 
					ln -s /mempool/mempool /etc/nginx/mempool
 | 
				
			||||||
osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_USER__!${NGINX_USER}!" "${NGINX_CONFIGURATION}"
 | 
					osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_USER__!${NGINX_USER}!" "${NGINX_CONFIGURATION}"
 | 
				
			||||||
osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_ETC_FOLDER__!${NGINX_ETC_FOLDER}!" "${NGINX_CONFIGURATION}"
 | 
					osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_ETC_FOLDER__!${NGINX_ETC_FOLDER}!" "${NGINX_CONFIGURATION}"
 | 
				
			||||||
osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_MEMPOOL_ONION__!${NGINX_MEMPOOL_ONION%.onion}!" "${NGINX_CONFIGURATION}"
 | 
					if [ "${TOR_INSTALL}" = ON ];then
 | 
				
			||||||
osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_BISQ_ONION__!${NGINX_BISQ_ONION%.onion}!" "${NGINX_CONFIGURATION}"
 | 
					echo "[*] Read tor v3 onion hostnames"
 | 
				
			||||||
osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_LIQUID_ONION__!${NGINX_LIQUID_ONIONi%.onion}!" "${NGINX_CONFIGURATION}"
 | 
					    NGINX_MEMPOOL_ONION=$(cat "${TOR_RESOURCES}/mempool/hostname")
 | 
				
			||||||
 | 
					    NGINX_BISQ_ONION=$(cat "${TOR_RESOURCES}/bisq/hostname")
 | 
				
			||||||
 | 
					    NGINX_LIQUID_ONION=$(cat "${TOR_RESOURCES}/liquid/hostname")
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_MEMPOOL_ONION__!${NGINX_MEMPOOL_ONION%.onion}!" "${NGINX_CONFIGURATION}"
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_BISQ_ONION__!${NGINX_BISQ_ONION%.onion}!" "${NGINX_CONFIGURATION}"
 | 
				
			||||||
 | 
					    osSudo "${ROOT_USER}" sed -i.orig "s!__NGINX_LIQUID_ONION__!${NGINX_LIQUID_ONIONi%.onion}!" "${NGINX_CONFIGURATION}"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
echo "[*] Restarting Nginx"
 | 
					echo "[*] Restarting Nginx"
 | 
				
			||||||
osSudo "${ROOT_USER}" service nginx restart
 | 
					osSudo "${ROOT_USER}" service nginx restart
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1642,7 +1673,7 @@ esac
 | 
				
			|||||||
##### Build Mempool
 | 
					##### Build Mempool
 | 
				
			||||||
 | 
					
 | 
				
			||||||
echo "[*] Build Mempool"
 | 
					echo "[*] Build Mempool"
 | 
				
			||||||
osSudo "${MEMPOOL_USER}" sh -c "cd ${MEMPOOL_HOME} && ./upgrade"
 | 
					osSudo "${MEMPOOL_USER}" sh -c "cd ${MEMPOOL_HOME} && ./upgrade" || true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1727,10 +1758,12 @@ case $OS in
 | 
				
			|||||||
    ;;
 | 
					    ;;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    Debian)
 | 
					    Debian)
 | 
				
			||||||
        echo "This are the generated Tor addresses:"
 | 
					        if [ "${TOR_INSTALL}" = ON ];then
 | 
				
			||||||
        echo "${NGINX_MEMPOOL_ONION}"
 | 
					            echo "This are the generated Tor addresses:"
 | 
				
			||||||
        echo "${NGINX_BISQ_ONION}"
 | 
					            echo "${NGINX_MEMPOOL_ONION}"
 | 
				
			||||||
        echo "${NGINX_LIQUID_ONION}"
 | 
					            echo "${NGINX_BISQ_ONION}"
 | 
				
			||||||
 | 
					            echo "${NGINX_LIQUID_ONION}"
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
    ;;
 | 
					    ;;
 | 
				
			||||||
esac
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user