Skip to content

Commit 798dcf0

Browse files
napolyalkumripcurlxEmzyalvasw
committed
Update script to install Haveno seed node as a system service
Co-authored-by: alkum <98610826+alkum@users.noreply.github.com> Co-authored-by: Christoph Atteneder <christoph.atteneder@gmail.com> Co-authored-by: Stephan Oeste <emzy@emzy.de> Co-authored-by: Alva Swanson <alvasw@protonmail.com>
1 parent 947caca commit 798dcf0

File tree

3 files changed

+22
-35
lines changed

3 files changed

+22
-35
lines changed

seednode/haveno.env

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# configuration for haveno service
22
# install in /etc/default/haveno.env
33

4-
# java home, set to openjdk 10
5-
JAVA_HOME=/usr/lib/jvm/openjdk-10.0.2
4+
# java home, set to latest openjdk 11 from os repository
5+
JAVA_HOME=/usr/lib/jvm/openjdk-11-openjdk-amd64
66

77
# java memory and remote management options
8-
JAVA_OPTS="-Xms4096M -Xmx4096M"
8+
JAVA_OPTS="-Xms4096M -Xmx4096M" -XX:+ExitOnOutOfMemoryError"
99

1010
# use external tor (change to -1 for internal tor binary)
1111
HAVENO_EXTERNAL_TOR_PORT=9051
@@ -28,7 +28,7 @@ BITCOIN_RPC_BLOCKNOTIFY_PORT=5120
2828
HAVENO_HOME=__HAVENO_HOME__
2929
HAVENO_APP_NAME=haveno-seednode
3030
HAVENO_ENTRYPOINT=haveno-seednode
31-
HAVENO_BASE_CURRENCY=btc_mainnet
31+
HAVENO_BASE_CURRENCY=xmr_mainnet
3232

3333
# haveno node settings
3434
HAVENO_NODE_PORT=8000

seednode/install_seednode_debian.sh

+16-29
Original file line numberDiff line numberDiff line change
@@ -7,22 +7,21 @@ echo "[*] Haveno Seednode installation script"
77

88
ROOT_USER=root
99
ROOT_GROUP=root
10-
ROOT_PKG="build-essential libtool autotools-dev automake pkg-config bsdmainutils python3 git vim screen ufw"
10+
ROOT_PKG="build-essential libtool autotools-dev automake pkg-config bsdmainutils python3 git vim screen ufw openjdk-11-jdk"
1111
ROOT_HOME=/root
1212

1313
SYSTEMD_SERVICE_HOME=/etc/systemd/system
1414
SYSTEMD_ENV_HOME=/etc/default
1515

16-
HAVENO_REPO_URL=https://github.com/bisq-network/bisq
16+
HAVENO_REPO_URL=https://github.com/haveno-dex/haveno
1717
HAVENO_REPO_NAME=haveno
1818
HAVENO_REPO_TAG=master
19-
HAVENO_LATEST_RELEASE=$(curl -s https://api.github.com/repos/bisq-network/bisq/releases/latest|grep tag_name|head -1|cut -d '"' -f4)
19+
HAVENO_LATEST_RELEASE=$(curl -s https://api.github.com/repos/haveno-dex/haveno/releases/latest|grep tag_name|head -1|cut -d '"' -f4)
2020
HAVENO_HOME=/haveno
2121
HAVENO_USER=haveno
2222

23-
# by default, this script will build and setup bitcoin fullnode
24-
# if you want to use an existing bitcoin fullnode, see next section
25-
BITCOIN_INSTALL=true
23+
# by default, this script will not build and setup bitcoin full-node
24+
BITCOIN_INSTALL=false
2625
BITCOIN_REPO_URL=https://github.com/bitcoin/bitcoin
2726
BITCOIN_REPO_NAME=bitcoin
2827
BITCOIN_REPO_TAG=$(curl -s https://api.github.com/repos/bitcoin/bitcoin/releases/latest|grep tag_name|head -1|cut -d '"' -f4)
@@ -60,19 +59,13 @@ sudo -H -i -u "${ROOT_USER}" DEBIAN_FRONTEND=noninteractive apt-get upgrade -qq
6059
echo "[*] Installing base packages"
6160
sudo -H -i -u "${ROOT_USER}" DEBIAN_FRONTEND=noninteractive apt-get install -qq -y ${ROOT_PKG}
6261

63-
echo "[*] Installing Git LFS"
64-
sudo -H -i -u "${ROOT_USER}" apt-get install git-lfs
65-
sudo -H -i -u "${ROOT_USER}" git lfs install
66-
6762
echo "[*] Cloning Haveno repo"
6863
sudo -H -i -u "${ROOT_USER}" git config --global advice.detachedHead false
6964
sudo -H -i -u "${ROOT_USER}" git clone --branch "${HAVENO_REPO_TAG}" "${HAVENO_REPO_URL}" "${ROOT_HOME}/${HAVENO_REPO_NAME}"
7065

7166
echo "[*] Installing Tor"
72-
sudo -H -i -u "${ROOT_USER}" wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gp
73-
g --dearmor | tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null
74-
sudo -H -i -u "${ROOT_USER}" echo "deb [arch=amd64 signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.o
75-
rg/torproject.org focal main" > /etc/apt/sources.list.d/tor.list
67+
sudo -H -i -u "${ROOT_USER}" wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | sudo gpg --dearmor | sudo tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null
68+
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.org/torproject.org focal main" | sudo -H -i -u "${ROOT_USER}" tee /etc/apt/sources.list.d/tor.list
7669
sudo -H -i -u "${ROOT_USER}" DEBIAN_FRONTEND=noninteractive apt-get update -q
7770
sudo -H -i -u "${ROOT_USER}" DEBIAN_FRONTEND=noninteractive apt-get install -qq -y ${TOR_PKG}
7871

@@ -128,17 +121,14 @@ echo "[*] Moving Haveno repo"
128121
sudo -H -i -u "${ROOT_USER}" mv "${ROOT_HOME}/${HAVENO_REPO_NAME}" "${HAVENO_HOME}/${HAVENO_REPO_NAME}"
129122
sudo -H -i -u "${ROOT_USER}" chown -R "${HAVENO_USER}:${HAVENO_GROUP}" "${HAVENO_HOME}/${HAVENO_REPO_NAME}"
130123

131-
echo "[*] Installing OpenJDK 10.0.2 from Haveno repo"
132-
sudo -H -i -u "${ROOT_USER}" "${HAVENO_HOME}/${HAVENO_REPO_NAME}/scripts/install_java.sh"
133-
134124
echo "[*] Installing Haveno init script"
135-
sudo -H -i -u "${ROOT_USER}" install -c -o "${ROOT_USER}" -g "${ROOT_GROUP}" -m 644 "${HAVENO_HOME}/${HAVENO_REPO_NAME}/seednode/haveno.service" "${SYSTEMD_SERVICE_HOME}/haveno.service"
125+
sudo -H -i -u "${ROOT_USER}" install -c -o "${ROOT_USER}" -g "${ROOT_GROUP}" -m 644 "${HAVENO_HOME}/${HAVENO_REPO_NAME}/seednode/haveno-seednode.service" "${SYSTEMD_SERVICE_HOME}/haveno-seednode.service"
136126
if [ "${BITCOIN_INSTALL}" = true ];then
137-
sudo sed -i -e "s/#Requires=bitcoin.service/Requires=bitcoin.service/" "${SYSTEMD_SERVICE_HOME}/haveno.service"
138-
sudo sed -i -e "s/#BindsTo=bitcoin.service/BindsTo=bitcoin.service/" "${SYSTEMD_SERVICE_HOME}/haveno.service"
127+
sudo sed -i -e "s/#Requires=bitcoin.service/Requires=bitcoin.service/" "${SYSTEMD_SERVICE_HOME}/haveno-seednode.service"
128+
sudo sed -i -e "s/#BindsTo=bitcoin.service/BindsTo=bitcoin.service/" "${SYSTEMD_SERVICE_HOME}/haveno-seednode.service"
139129
fi
140-
sudo sed -i -e "s/__HAVENO_REPO_NAME__/${HAVENO_REPO_NAME}/" "${SYSTEMD_SERVICE_HOME}/haveno.service"
141-
sudo sed -i -e "s!__HAVENO_HOME__!${HAVENO_HOME}!" "${SYSTEMD_SERVICE_HOME}/haveno.service"
130+
sudo sed -i -e "s/__HAVENO_REPO_NAME__/${HAVENO_REPO_NAME}/" "${SYSTEMD_SERVICE_HOME}/haveno-seednode.service"
131+
sudo sed -i -e "s!__HAVENO_HOME__!${HAVENO_HOME}!" "${SYSTEMD_SERVICE_HOME}/haveno-seednode.service"
142132

143133
echo "[*] Installing Haveno environment file with Bitcoin RPC credentials"
144134
sudo -H -i -u "${ROOT_USER}" install -c -o "${ROOT_USER}" -g "${ROOT_GROUP}" -m 644 "${HAVENO_HOME}/${HAVENO_REPO_NAME}/seednode/haveno.env" "${SYSTEMD_ENV_HOME}/haveno.env"
@@ -154,16 +144,13 @@ sudo sed -i -e "s!__HAVENO_HOME__!${HAVENO_HOME}!" "${SYSTEMD_ENV_HOME}/haveno.e
154144
echo "[*] Checking out Haveno ${HAVENO_LATEST_RELEASE}"
155145
sudo -H -i -u "${HAVENO_USER}" sh -c "cd ${HAVENO_HOME}/${HAVENO_REPO_NAME} && git checkout ${HAVENO_LATEST_RELEASE}"
156146

157-
echo "[*] Performing Git LFS pull"
158-
sudo -H -i -u "${HAVENO_USER}" sh -c "cd ${HAVENO_HOME}/${HAVENO_REPO_NAME} && git lfs pull"
159-
160147
echo "[*] Building Haveno from source"
161148
sudo -H -i -u "${HAVENO_USER}" sh -c "cd ${HAVENO_HOME}/${HAVENO_REPO_NAME} && ./gradlew build -x test < /dev/null" # redirect from /dev/null is necessary to workaround gradlew non-interactive shell hanging issue
162149

163150
echo "[*] Updating systemd daemon configuration"
164151
sudo -H -i -u "${ROOT_USER}" systemctl daemon-reload
165152
sudo -H -i -u "${ROOT_USER}" systemctl enable tor.service
166-
sudo -H -i -u "${ROOT_USER}" systemctl enable haveno.service
153+
sudo -H -i -u "${ROOT_USER}" systemctl enable haveno-seednode.service
167154
if [ "${BITCOIN_INSTALL}" = true ];then
168155
sudo -H -i -u "${ROOT_USER}" systemctl enable bitcoin.service
169156
fi
@@ -185,13 +172,13 @@ fi
185172
echo "[*] Adding notes to motd"
186173
sudo -H -i -u "${ROOT_USER}" sh -c 'echo " " >> /etc/motd'
187174
sudo -H -i -u "${ROOT_USER}" sh -c 'echo "Haveno Seednode instructions:" >> /etc/motd'
188-
sudo -H -i -u "${ROOT_USER}" sh -c 'echo "https://github.com/bisq-network/bisq/tree/master/seednode" >> /etc/motd'
175+
sudo -H -i -u "${ROOT_USER}" sh -c 'echo "https://github.com/haveno-dex/haveno/tree/master/seednode" >> /etc/motd'
189176
sudo -H -i -u "${ROOT_USER}" sh -c 'echo " " >> /etc/motd'
190177
sudo -H -i -u "${ROOT_USER}" sh -c 'echo "How to check logs for Haveno-Seednode service:" >> /etc/motd'
191-
sudo -H -i -u "${ROOT_USER}" sh -c 'echo "sudo journalctl --no-pager --unit haveno" >> /etc/motd'
178+
sudo -H -i -u "${ROOT_USER}" sh -c 'echo "sudo journalctl --no-pager --unit haveno-seednode" >> /etc/motd'
192179
sudo -H -i -u "${ROOT_USER}" sh -c 'echo " " >> /etc/motd'
193180
sudo -H -i -u "${ROOT_USER}" sh -c 'echo "How to restart Haveno-Seednode service:" >> /etc/motd'
194-
sudo -H -i -u "${ROOT_USER}" sh -c 'echo "sudo service haveno restart" >> /etc/motd'
181+
sudo -H -i -u "${ROOT_USER}" sh -c 'echo "sudo service haveno-seednode restart" >> /etc/motd'
195182

196183
echo '[*] Done!'
197184

seednode/uninstall_seednode_debian.sh

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ echo "[*] Uninstalling Bitcoin and Haveno, will delete all data!!"
33
sleep 10
44
sudo rm -rf /root/haveno
55
sudo systemctl stop bitcoin
6-
sudo systemctl stop haveno
6+
sudo systemctl stop haveno-seednode
77
sudo systemctl disable bitcoin
8-
sudo systemctl disable haveno
8+
sudo systemctl disable haveno-seednode
99
sudo userdel -f -r haveno
1010
sudo userdel -f -r bitcoin
1111
echo "[*] Done!"

0 commit comments

Comments
 (0)