From 0487bcb5e4ee35ca509ae3a037fd304c7f05fd66 Mon Sep 17 00:00:00 2001 From: Jakub Matys Date: Thu, 31 May 2018 11:50:46 +0200 Subject: [PATCH] Added Bitcoin Cash node package --- contrib/backends/Makefile | 2 +- contrib/backends/bgold/Makefile | 13 +++++ contrib/backends/bgold/btg.conf | 17 +++++++ .../backends/bgold/debian/bgold-btg.conffiles | 1 + contrib/backends/bgold/debian/bgold-btg.dirs | 1 + .../backends/bgold/debian/bgold-btg.install | 2 + .../backends/bgold/debian/bgold-btg.logrotate | 10 ++++ .../backends/bgold/debian/bgold-btg.postinst | 20 ++++++++ .../backends/bgold/debian/bgold-btg.service | 47 +++++++++++++++++++ contrib/backends/bgold/debian/changelog | 5 ++ contrib/backends/bgold/debian/compat | 1 + contrib/backends/bgold/debian/control | 11 +++++ contrib/backends/bgold/debian/rules | 11 +++++ 13 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 contrib/backends/bgold/Makefile create mode 100644 contrib/backends/bgold/btg.conf create mode 100644 contrib/backends/bgold/debian/bgold-btg.conffiles create mode 100644 contrib/backends/bgold/debian/bgold-btg.dirs create mode 100644 contrib/backends/bgold/debian/bgold-btg.install create mode 100644 contrib/backends/bgold/debian/bgold-btg.logrotate create mode 100644 contrib/backends/bgold/debian/bgold-btg.postinst create mode 100644 contrib/backends/bgold/debian/bgold-btg.service create mode 100644 contrib/backends/bgold/debian/changelog create mode 100644 contrib/backends/bgold/debian/compat create mode 100644 contrib/backends/bgold/debian/control create mode 100755 contrib/backends/bgold/debian/rules diff --git a/contrib/backends/Makefile b/contrib/backends/Makefile index f59747d2..bc6b128c 100644 --- a/contrib/backends/Makefile +++ b/contrib/backends/Makefile @@ -1,4 +1,4 @@ -TARGETS = bitcoin zcash bcash ethereum +TARGETS = bitcoin zcash bcash ethereum bgold IMAGE = blockbook-backend-build-deb NO_CACHE = false diff --git a/contrib/backends/bgold/Makefile b/contrib/backends/bgold/Makefile new file mode 100644 index 00000000..b45b584c --- /dev/null +++ b/contrib/backends/bgold/Makefile @@ -0,0 +1,13 @@ +BGOLD_VERSION := 0.15.0 +BUILD_VERSION := .2 + +all: + wget https://github.com/BTCGPU/BTCGPU/releases/download/v${BGOLD_VERSION}${BUILD_VERSION}/bitcoin-gold-${BGOLD_VERSION}-x86_64-linux-gnu.tar.gz + tar -xf bitcoin-gold-${BGOLD_VERSION}-x86_64-linux-gnu.tar.gz + mv bitcoin-gold-${BGOLD_VERSION} bgold + rm bgold/bin/bitcoin-qt + rm bgold/bin/test_bitcoin + +clean: + rm -rf bgold + rm -f bitcoin-gold-${BGOLD_VERSION}-x86_64-linux-gnu.tar.gz* diff --git a/contrib/backends/bgold/btg.conf b/contrib/backends/bgold/btg.conf new file mode 100644 index 00000000..e7e29f57 --- /dev/null +++ b/contrib/backends/bgold/btg.conf @@ -0,0 +1,17 @@ +daemon=1 +server=1 +nolisten=1 +rpcuser=rpc +rpcpassword=rpc +rpcport=8035 +txindex=1 + +zmqpubhashtx=tcp://127.0.0.1:38335 +zmqpubhashblock=tcp://127.0.0.1:38335 +zmqpubrawblock=tcp://127.0.0.1:38335 +zmqpubrawtx=tcp://127.0.0.1:38335 + +mempoolexpiry=72 +rpcworkqueue=1100 +maxmempool=2000 +dbcache=1000 diff --git a/contrib/backends/bgold/debian/bgold-btg.conffiles b/contrib/backends/bgold/debian/bgold-btg.conffiles new file mode 100644 index 00000000..6db6b017 --- /dev/null +++ b/contrib/backends/bgold/debian/bgold-btg.conffiles @@ -0,0 +1 @@ +/opt/coins/nodes/bgold/btg/btg.conf diff --git a/contrib/backends/bgold/debian/bgold-btg.dirs b/contrib/backends/bgold/debian/bgold-btg.dirs new file mode 100644 index 00000000..a7b72d3c --- /dev/null +++ b/contrib/backends/bgold/debian/bgold-btg.dirs @@ -0,0 +1 @@ +/opt/coins/data/btg/bgold diff --git a/contrib/backends/bgold/debian/bgold-btg.install b/contrib/backends/bgold/debian/bgold-btg.install new file mode 100644 index 00000000..00553b58 --- /dev/null +++ b/contrib/backends/bgold/debian/bgold-btg.install @@ -0,0 +1,2 @@ +bgold/* /opt/coins/nodes/bgold/btg +btg.conf /opt/coins/nodes/bgold/btg diff --git a/contrib/backends/bgold/debian/bgold-btg.logrotate b/contrib/backends/bgold/debian/bgold-btg.logrotate new file mode 100644 index 00000000..245bb02b --- /dev/null +++ b/contrib/backends/bgold/debian/bgold-btg.logrotate @@ -0,0 +1,10 @@ +/opt/coins/data/btg/bgold/debug.log +/opt/coins/data/btg/bgold/db.log +{ + rotate 7 + daily + compress + missingok + notifempty + copytruncate +} diff --git a/contrib/backends/bgold/debian/bgold-btg.postinst b/contrib/backends/bgold/debian/bgold-btg.postinst new file mode 100644 index 00000000..4b382436 --- /dev/null +++ b/contrib/backends/bgold/debian/bgold-btg.postinst @@ -0,0 +1,20 @@ +#!/bin/bash +set -e + +case "$1" in + + configure) + if ! id -u bgold &> /dev/null + then + useradd --system -M -U bgold -s /bin/false + fi + + if [ "$(stat -c '%U' /opt/coins/data/btg/bgold)" != "bgold" ] + then + chown -R bgold:bgold /opt/coins/data/btg/bgold + fi + ;; + +esac + +#DEBHELPER# diff --git a/contrib/backends/bgold/debian/bgold-btg.service b/contrib/backends/bgold/debian/bgold-btg.service new file mode 100644 index 00000000..6563aa31 --- /dev/null +++ b/contrib/backends/bgold/debian/bgold-btg.service @@ -0,0 +1,47 @@ +# It is not recommended to modify this file in-place, because it will +# be overwritten during package upgrades. If you want to add further +# options or overwrite existing ones then use +# $ systemctl edit bgold-btg.service +# See "man systemd.service" for details. + +# Note that almost all daemon options could be specified in +# /opt/coins/nodes/bgold/btg/btg.conf + +[Unit] +Description=Bitcoin Cash daemon (mainnet) +After=network.target + +[Service] +ExecStart=/opt/coins/nodes/bgold/btg/bin/bgoldd -datadir=/opt/coins/data/btg/bgold -conf=/opt/coins/nodes/bgold/btg/btg.conf -pid=/run/bgoldd/btg.pid +# Creates /run/bitcoind owned by bgold +RuntimeDirectory=bgoldd +User=bgold +Type=forking +PIDFile=/run/bgoldd/btg.pid +Restart=on-failure + +# Resource limits +LimitNOFILE=500000 + +# Hardening measures +#################### + +# Provide a private /tmp and /var/tmp. +PrivateTmp=true + +# Mount /usr, /boot/ and /etc read-only for the process. +ProtectSystem=full + +# Disallow the process and all of its children to gain +# new privileges through execve(). +NoNewPrivileges=true + +# Use a new /dev namespace only populated with API pseudo devices +# such as /dev/null, /dev/zero and /dev/random. +PrivateDevices=true + +# Deny the creation of writable and executable memory mappings. +MemoryDenyWriteExecute=true + +[Install] +WantedBy=multi-user.target diff --git a/contrib/backends/bgold/debian/changelog b/contrib/backends/bgold/debian/changelog new file mode 100644 index 00000000..99f7dd6e --- /dev/null +++ b/contrib/backends/bgold/debian/changelog @@ -0,0 +1,5 @@ +bgold (0.15.0-satoshilabs1) unstable; urgency=medium + + * Initial build + + -- Jakub Matys Thu, 31 May 2018 11:46:34 +0200 diff --git a/contrib/backends/bgold/debian/compat b/contrib/backends/bgold/debian/compat new file mode 100644 index 00000000..ec635144 --- /dev/null +++ b/contrib/backends/bgold/debian/compat @@ -0,0 +1 @@ +9 diff --git a/contrib/backends/bgold/debian/control b/contrib/backends/bgold/debian/control new file mode 100644 index 00000000..6fe59eb0 --- /dev/null +++ b/contrib/backends/bgold/debian/control @@ -0,0 +1,11 @@ +Source: bgold +Section: satoshilabs +Priority: optional +Maintainer: jakub.matys@satoshilabs.com +Build-Depends: debhelper, wget, tar, gzip, make, dh-systemd, dh-exec +Standards-Version: 3.9.5 + +Package: bgold-btg +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, logrotate +Description: Satoshilabs packaged bitcoin-gold server diff --git a/contrib/backends/bgold/debian/rules b/contrib/backends/bgold/debian/rules new file mode 100755 index 00000000..f69489df --- /dev/null +++ b/contrib/backends/bgold/debian/rules @@ -0,0 +1,11 @@ +#!/usr/bin/make -f + +DH_VERBOSE = 1 + +%: + dh $@ --with=systemd + +override_dh_systemd_start: + dh_systemd_start --no-start + +override_dh_installinit: