diff --git a/contrib/backends/litecoin/Makefile b/contrib/backends/litecoin/Makefile new file mode 100644 index 00000000..3df13fbb --- /dev/null +++ b/contrib/backends/litecoin/Makefile @@ -0,0 +1,13 @@ +LITECOIN_VERSION := 0.16.0 + +all: + wget https://download.litecoin.org/litecoin-${LITECOIN_VERSION}/linux/litecoin-${LITECOIN_VERSION}-x86_64-linux-gnu.tar.gz + tar -xf litecoin-${LITECOIN_VERSION}-x86_64-linux-gnu.tar.gz + mv litecoin-${LITECOIN_VERSION} litecoin + rm litecoin/bin/litecoin-qt + rm litecoin/bin/test_litecoin + + +clean: + rm -rf litecoin + rm -f litecoin-${LITECOIN_VERSION}-x86_64-linux-gnu.tar.gz diff --git a/contrib/backends/litecoin/debian/backend-litecoin-testnet.conffiles b/contrib/backends/litecoin/debian/backend-litecoin-testnet.conffiles new file mode 100644 index 00000000..6e00ded9 --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin-testnet.conffiles @@ -0,0 +1 @@ +/opt/coins/nodes/litecoin_testnet/litecoin_testnet.conf diff --git a/contrib/backends/litecoin/debian/backend-litecoin-testnet.dirs b/contrib/backends/litecoin/debian/backend-litecoin-testnet.dirs new file mode 100644 index 00000000..60844601 --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin-testnet.dirs @@ -0,0 +1 @@ +/opt/coins/data/litecoin_testnet/backend diff --git a/contrib/backends/litecoin/debian/backend-litecoin-testnet.install b/contrib/backends/litecoin/debian/backend-litecoin-testnet.install new file mode 100644 index 00000000..4a78b7e9 --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin-testnet.install @@ -0,0 +1,2 @@ +litecoin/* /opt/coins/nodes/litecoin_testnet +litecoin_testnet.conf /opt/coins/nodes/litecoin_testnet diff --git a/contrib/backends/litecoin/debian/backend-litecoin-testnet.logrotate b/contrib/backends/litecoin/debian/backend-litecoin-testnet.logrotate new file mode 100644 index 00000000..a380acfd --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin-testnet.logrotate @@ -0,0 +1,10 @@ +/opt/coins/data/litecoin_testnet/backend/testnet3/debug.log +/opt/coins/data/litecoin_testnet/backend/testnet3/db.log +{ + rotate 7 + daily + compress + missingok + notifempty + copytruncate +} diff --git a/contrib/backends/litecoin/debian/backend-litecoin-testnet.postinst b/contrib/backends/litecoin/debian/backend-litecoin-testnet.postinst new file mode 100644 index 00000000..e323208b --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin-testnet.postinst @@ -0,0 +1,20 @@ +#!/bin/bash +set -e + +case "$1" in + + configure) + if ! id -u litecoin &> /dev/null + then + useradd --system -M -U litecoin -s /bin/false + fi + + if [ "$(stat -c '%U' /opt/coins/data/litecoin_testnet/backend)" != "litecoin" ] + then + chown -R litecoin:litecoin /opt/coins/data/litecoin_testnet/backend + fi + ;; + +esac + +#DEBHELPER# diff --git a/contrib/backends/litecoin/debian/backend-litecoin-testnet.service b/contrib/backends/litecoin/debian/backend-litecoin-testnet.service new file mode 100644 index 00000000..fd2ddaef --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin-testnet.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 litecoin-testnet.service +# See "man systemd.service" for details. + +# Note that almost all daemon options could be specified in +# /opt/coins/nodes/litecoin_testnet/litecoin_testnet.conf + +[Unit] +Description=litecoin daemon (testnet) +After=network.target + +[Service] +ExecStart=/opt/coins/nodes/litecoin_testnet/bin/litecoind -datadir=/opt/coins/data/litecoin_testnet/backend -conf=/opt/coins/nodes/litecoin_testnet/litecoin_testnet.conf -pid=/run/litecoind/litecoin_testnet.pid +# Creates /run/litecoind owned by litecoin +RuntimeDirectory=litecoind +User=litecoin +Type=forking +PIDFile=/run/litecoind/litecoin_testnet.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/litecoin/debian/backend-litecoin.conffiles b/contrib/backends/litecoin/debian/backend-litecoin.conffiles new file mode 100644 index 00000000..9808ed97 --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin.conffiles @@ -0,0 +1 @@ +/opt/coins/nodes/litecoin/litecoin.conf diff --git a/contrib/backends/litecoin/debian/backend-litecoin.dirs b/contrib/backends/litecoin/debian/backend-litecoin.dirs new file mode 100644 index 00000000..eae2c1f8 --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin.dirs @@ -0,0 +1 @@ +/opt/coins/data/litecoin/backend diff --git a/contrib/backends/litecoin/debian/backend-litecoin.install b/contrib/backends/litecoin/debian/backend-litecoin.install new file mode 100644 index 00000000..8a70cf18 --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin.install @@ -0,0 +1,2 @@ +litecoin/* /opt/coins/nodes/litecoin +litecoin.conf /opt/coins/nodes/litecoin diff --git a/contrib/backends/litecoin/debian/backend-litecoin.logrotate b/contrib/backends/litecoin/debian/backend-litecoin.logrotate new file mode 100644 index 00000000..70ac2c16 --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin.logrotate @@ -0,0 +1,10 @@ +/opt/coins/data/litecoin/backend/debug.log +/opt/coins/data/litecoin/backend/db.log +{ + rotate 7 + daily + compress + missingok + notifempty + copytruncate +} diff --git a/contrib/backends/litecoin/debian/backend-litecoin.postinst b/contrib/backends/litecoin/debian/backend-litecoin.postinst new file mode 100644 index 00000000..3f612fae --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin.postinst @@ -0,0 +1,20 @@ +#!/bin/bash +set -e + +case "$1" in + + configure) + if ! id -u litecoin &> /dev/null + then + useradd --system -M -U litecoin -s /bin/false + fi + + if [ "$(stat -c '%U' /opt/coins/data/litecoin/backend)" != "litecoin" ] + then + chown -R litecoin:litecoin /opt/coins/data/litecoin/backend + fi + ;; + +esac + +#DEBHELPER# diff --git a/contrib/backends/litecoin/debian/backend-litecoin.service b/contrib/backends/litecoin/debian/backend-litecoin.service new file mode 100644 index 00000000..d825703b --- /dev/null +++ b/contrib/backends/litecoin/debian/backend-litecoin.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 litecoin.service +# See "man systemd.service" for details. + +# Note that almost all daemon options could be specified in +# /opt/coins/nodes/litecoin/litecoin.conf + +[Unit] +Description=litecoin daemon (mainnet) +After=network.target + +[Service] +ExecStart=/opt/coins/nodes/litecoin/bin/litecoind -datadir=/opt/coins/data/litecoin/backend -conf=/opt/coins/nodes/litecoin/litecoin.conf -pid=/run/litecoind/litecoin.pid +# Creates /run/litecoind owned by litecoin +RuntimeDirectory=litecoind +User=litecoin +Type=forking +PIDFile=/run/litecoind/litecoin.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/litecoin/debian/changelog b/contrib/backends/litecoin/debian/changelog new file mode 100644 index 00000000..c0fb2d95 --- /dev/null +++ b/contrib/backends/litecoin/debian/changelog @@ -0,0 +1,5 @@ +litecoin (0.16.0-satoshilabs1) unstable; urgency=medium + + * Initial build + + -- Martin Bohm Mon, 11 Jun 2018 11:12:13 +0200 diff --git a/contrib/backends/litecoin/debian/compat b/contrib/backends/litecoin/debian/compat new file mode 100644 index 00000000..ec635144 --- /dev/null +++ b/contrib/backends/litecoin/debian/compat @@ -0,0 +1 @@ +9 diff --git a/contrib/backends/litecoin/debian/control b/contrib/backends/litecoin/debian/control new file mode 100644 index 00000000..5868d2f0 --- /dev/null +++ b/contrib/backends/litecoin/debian/control @@ -0,0 +1,16 @@ +Source: litecoin +Section: satoshilabs +Priority: optional +Maintainer: martin.bohm@satoshilabs.com +Build-Depends: debhelper, wget, tar, gzip, make, dh-systemd, dh-exec +Standards-Version: 3.9.5 + +Package: backend-litecoin +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, logrotate +Description: Satoshilabs packaged litecoin server + +Package: backend-litecoin-testnet +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, logrotate +Description: Satoshilabs packaged litecoin server diff --git a/contrib/backends/litecoin/debian/rules b/contrib/backends/litecoin/debian/rules new file mode 100755 index 00000000..f69489df --- /dev/null +++ b/contrib/backends/litecoin/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: diff --git a/contrib/backends/litecoin/litecoin.conf b/contrib/backends/litecoin/litecoin.conf new file mode 100644 index 00000000..a2f3c4b6 --- /dev/null +++ b/contrib/backends/litecoin/litecoin.conf @@ -0,0 +1,18 @@ +daemon=1 +server=1 +nolisten=1 +rpcuser=rpc +rpcpassword=rpc +rpcport=8034 +txindex=1 +whitelist=127.0.0.1 +rpcallowip=127.0.0.1 + +zmqpubhashtx=tcp://127.0.0.1:38334 +zmqpubhashblock=tcp://127.0.0.1:38334 + +rpcworkqueue=1100 +maxmempool=2000 +dbcache=1000 + + diff --git a/contrib/backends/litecoin/litecoin_testnet.conf b/contrib/backends/litecoin/litecoin_testnet.conf new file mode 100644 index 00000000..4671d80b --- /dev/null +++ b/contrib/backends/litecoin/litecoin_testnet.conf @@ -0,0 +1,15 @@ +daemon=1 +server=1 +testnet=1 +nolisten=1 +rpcuser=rpc +rpcpassword=rpc +rpcport=18033 +txindex=1 + +zmqpubhashtx=tcp://127.0.0.1:48333 +zmqpubhashblock=tcp://127.0.0.1:48333 + +rpcworkqueue=1100 +maxmempool=2000 +dbcache=1000