Gentoo Archives: gentoo-commits

From: "Anthony G. Basile" <blueness@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-p2p/bitcoinxtd/, net-p2p/bitcoinxtd/files/
Date: Fri, 09 Oct 2015 00:46:41
Message-Id: 1444351735.075c3915658d7be2a319d7bf6b9c847de4db4767.blueness@gentoo
1 commit: 075c3915658d7be2a319d7bf6b9c847de4db4767
2 Author: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
3 AuthorDate: Fri Oct 9 00:48:35 2015 +0000
4 Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
5 CommitDate: Fri Oct 9 00:48:55 2015 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=075c3915
7
8 net-p2p/bitcoinxtd: initial commit, bug #557900.
9
10 Thanks Ron OHara.
11
12 Package-Manager: portage-2.2.20.1
13
14 net-p2p/bitcoinxtd/Manifest | 1 +
15 net-p2p/bitcoinxtd/bitcoinxtd-0.11.0.ebuild | 120 +++++++++++++
16 net-p2p/bitcoinxtd/files/9999-syslibs.patch | 243 ++++++++++++++++++++++++++
17 net-p2p/bitcoinxtd/files/bitcoinxt.conf | 8 +
18 net-p2p/bitcoinxtd/files/bitcoinxt.confd | 12 ++
19 net-p2p/bitcoinxtd/files/bitcoinxt.initd | 29 +++
20 net-p2p/bitcoinxtd/files/bitcoinxtd.logrotate | 8 +
21 net-p2p/bitcoinxtd/files/bitcoinxtd.service | 30 ++++
22 net-p2p/bitcoinxtd/metadata.xml | 19 ++
23 9 files changed, 470 insertions(+)
24
25 diff --git a/net-p2p/bitcoinxtd/Manifest b/net-p2p/bitcoinxtd/Manifest
26 new file mode 100644
27 index 0000000..0b2beb9
28 --- /dev/null
29 +++ b/net-p2p/bitcoinxtd/Manifest
30 @@ -0,0 +1 @@
31 +DIST bitcoinxtd-0.11.0.tar.gz 5226736 SHA256 f6fc1651b3cad90bae6f9d70a5f476ca4cd9b8b38681331bccc6d2651c5e2c89 SHA512 044f2b95644b831641fc48fe65e980438e58e784635b32f393e9aeb6473124708df3870aa3bd3848acd90b4b9785fba9163ad07e5ea7d243c175741429bc2b6b WHIRLPOOL 5b2e692e0ccafff454260bb1f8871bec2775c21124e22cf11fd3d175b2d25634fc514e0cfe6b6334e20692846319e9f5fd1a580d8ef31389d6e84025bc600eaa
32
33 diff --git a/net-p2p/bitcoinxtd/bitcoinxtd-0.11.0.ebuild b/net-p2p/bitcoinxtd/bitcoinxtd-0.11.0.ebuild
34 new file mode 100644
35 index 0000000..7fe3e69
36 --- /dev/null
37 +++ b/net-p2p/bitcoinxtd/bitcoinxtd-0.11.0.ebuild
38 @@ -0,0 +1,120 @@
39 +# Copyright 1999-2015 Gentoo Foundation
40 +# Distributed under the terms of the GNU General Public License v2
41 +# $Id$
42 +
43 +EAPI=5
44 +
45 +DB_VER="4.8"
46 +
47 +inherit db-use autotools eutils toolchain-funcs user systemd
48 +
49 +DESCRIPTION="BitcoinXT crypto-currency wallet for automated services"
50 +HOMEPAGE="https://github/bitcoinxt/bitcoinxt"
51 +My_PV="${PV/\.0/}A"
52 +SRC_URI="https://github.com/bitcoinxt/bitcoinxt/archive/v${My_PV}.tar.gz -> ${P}.tar.gz"
53 +
54 +LICENSE="MIT"
55 +SLOT="0"
56 +KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~x86 ~amd64-linux ~x86-linux"
57 +IUSE="+doc +ssl +logrotate +upnp +wallet"
58 +
59 +OPENSSL_DEPEND="dev-libs/openssl:0[-bindist]"
60 +WALLET_DEPEND="media-gfx/qrencode sys-libs/db:$(db_ver_to_slot "${DB_VER}")[cxx]"
61 +
62 +RDEPEND="
63 + app-shells/bash:0
64 + sys-apps/sed
65 + dev-libs/boost[threads(+)]
66 + dev-libs/glib:2
67 + dev-libs/crypto++
68 + ssl? ( ${OPENSSL_DEPEND} )
69 + logrotate? ( app-admin/logrotate )
70 + wallet? ( ${WALLET_DEPEND} )
71 + upnp? ( net-libs/miniupnpc )
72 + virtual/bitcoin-leveldb
73 +"
74 +
75 +DEPEND="${RDEPEND}"
76 +
77 +S="${WORKDIR}/bitcoinxt-${My_PV}"
78 +
79 +pkg_setup() {
80 + local UG='bitcoinxt'
81 + enewgroup "${UG}"
82 + enewuser "${UG}" -1 -1 /var/lib/bitcoinxt "${UG}"
83 +}
84 +
85 +src_prepare() {
86 + epatch "${FILESDIR}/9999-syslibs.patch"
87 + eautoreconf
88 +}
89 +
90 +src_configure() {
91 + local my_econf=
92 +
93 + if use upnp; then
94 + my_econf="${my_econf} --with-miniupnpc --enable-upnp-default"
95 + else
96 + my_econf="${my_econf} --without-miniupnpc --disable-upnp-default"
97 + fi
98 + if use wallet; then
99 + my_econf="${my_econf} --enable-wallet"
100 + else
101 + my_econf="${my_econf} --disable-wallet"
102 + fi
103 + my_econf="${my_econf} --with-system-leveldb"
104 + econf \
105 + --disable-ccache \
106 + --disable-static \
107 + --without-libs \
108 + --without-utils \
109 + --with-daemon \
110 + --without-gui \
111 + ${my_econf} \
112 + "$@"
113 +}
114 +
115 +src_compile() {
116 + local OPTS=()
117 +
118 + OPTS+=("CXXFLAGS=${CXXFLAGS} -I$(db_includedir "${DB_VER}")")
119 + OPTS+=("LDFLAGS=${LDFLAGS} -ldb_cxx-${DB_VER}")
120 +
121 + use ssl && OPTS+=(USE_SSL=1)
122 + use upnp && OPTS+=(USE_UPNP=1)
123 +
124 + cd src || die
125 + emake CXX="$(tc-getCXX)" "${OPTS[@]}" bitcoind
126 + mv bitcoind ${PN}
127 +}
128 +
129 +src_install() {
130 + local my_topdir="/var/lib/bitcoinxt"
131 + local my_data="${my_topdir}/.bitcoinxt"
132 +
133 + dobin src/${PN}
134 +
135 + insinto "${my_data}"
136 + doins "${FILESDIR}/bitcoinxt.conf"
137 + fowners bitcoinxt:bitcoinxt "${my_data}/bitcoinxt.conf"
138 + fperms 600 "${my_data}/bitcoinxt.conf"
139 +
140 + newconfd "${FILESDIR}/bitcoinxt.confd" ${PN}
141 + newinitd "${FILESDIR}/bitcoinxt.initd" ${PN}
142 + systemd_dounit "${FILESDIR}/bitcoinxtd.service"
143 +
144 + keepdir "${my_data}"
145 + fperms 700 "${my_topdir}"
146 + fowners bitcoinxt:bitcoinxt "${my_topdir}"
147 + fowners bitcoinxt:bitcoinxt "${my_data}"
148 +
149 + if use doc; then
150 + dodoc README.md
151 + dodoc doc/release-notes.md
152 + fi
153 +
154 + if use logrotate; then
155 + insinto /etc/logrotate.d
156 + newins "${FILESDIR}/bitcoinxtd.logrotate" bitcoinxtd
157 + fi
158 +}
159
160 diff --git a/net-p2p/bitcoinxtd/files/9999-syslibs.patch b/net-p2p/bitcoinxtd/files/9999-syslibs.patch
161 new file mode 100644
162 index 0000000..2cdf2ab
163 --- /dev/null
164 +++ b/net-p2p/bitcoinxtd/files/9999-syslibs.patch
165 @@ -0,0 +1,243 @@
166 +diff --git a/build-aux/m4/bitcoin_subdir_to_include.m4 b/build-aux/m4/bitcoin_subdir_to_include.m4
167 +index 66f106c..5f0a3b1 100644
168 +--- a/build-aux/m4/bitcoin_subdir_to_include.m4
169 ++++ b/build-aux/m4/bitcoin_subdir_to_include.m4
170 +@@ -5,7 +5,7 @@ AC_DEFUN([BITCOIN_SUBDIR_TO_INCLUDE],[
171 + AC_MSG_RESULT([default])
172 + else
173 + echo "#include <$2$3.h>" >conftest.cpp
174 +- newinclpath=`${CXXCPP} ${CPPFLAGS} -M conftest.cpp 2>/dev/null | [ tr -d '\\n\\r\\\\' | sed -e 's/^.*[[:space:]:]\(\/[^[:space:]]*\)]$3[\.h[[:space:]].*$/\1/' -e t -e d`]
175 ++ newinclpath=$(${CXXCPP} ${CPPFLAGS} -M conftest.cpp 2>/dev/null | sed [-E -e ':a' -e '/\\$/!b b' -e N -e 's/\\\n/ /' -e 't a' -e ':b' -e 's/^[^:]*:[[:space:]]*(([^[:space:]\]|\\.)*[[:space:]])*(([^[:space:]\]|\\.)*)]$3\.h[([[:space:]].*)?$/\3/' -e 't' -e d])
176 + AC_MSG_RESULT([${newinclpath}])
177 + if test "x${newinclpath}" != "x"; then
178 + eval "$1=\"\$$1\"' -I${newinclpath}'"
179 +diff --git a/configure.ac b/configure.ac
180 +index 37fe47e..14e5c34 100644
181 +--- a/configure.ac
182 ++++ b/configure.ac
183 +@@ -170,6 +170,18 @@ AC_ARG_WITH([utils],
184 + [build_bitcoin_utils=$withval],
185 + [build_bitcoin_utils=yes])
186 +
187 ++AC_ARG_ENABLE([util-cli],
188 ++ [AS_HELP_STRING([--enable-util-cli],
189 ++ [build bitcoin-cli])],
190 ++ [build_bitcoin_cli=$enableval],
191 ++ [build_bitcoin_cli=$build_bitcoin_utils])
192 ++
193 ++AC_ARG_ENABLE([util-tx],
194 ++ [AS_HELP_STRING([--enable-util-tx],
195 ++ [build bitcoin-tx])],
196 ++ [build_bitcoin_tx=$enableval],
197 ++ [build_bitcoin_tx=$build_bitcoin_utils])
198 ++
199 + AC_ARG_WITH([libs],
200 + [AS_HELP_STRING([--with-libs],
201 + [build libraries (default=yes)])],
202 +@@ -488,14 +500,65 @@ if test x$use_reduce_exports = xyes; then
203 + [AC_MSG_ERROR([Cannot set default symbol visibility. Use --disable-reduce-exports.])])
204 + fi
205 +
206 ++dnl Check for leveldb, only if explicitly requested
207 + LEVELDB_CPPFLAGS=
208 + LIBLEVELDB=
209 + LIBMEMENV=
210 +-AM_CONDITIONAL([EMBEDDED_LEVELDB],[true])
211 ++AC_ARG_WITH([system-leveldb],
212 ++ [AS_HELP_STRING([--with-system-leveldb],
213 ++ [Build with system LevelDB (default is no; DANGEROUS; NOT SUPPORTED)])],
214 ++ [system_leveldb=$withval],
215 ++ [system_leveldb=no]
216 ++)
217 ++if test x$system_leveldb != xno; then
218 ++ LEVELDB_CPPFLAGS=
219 ++ AC_CHECK_LIB([leveldb],[main],[
220 ++ LIBLEVELDB=-lleveldb
221 ++ ],[
222 ++ AC_MSG_ERROR([leveldb library not found; using --with-system-leveldb is not supported anyway])
223 ++ ])
224 ++ TEMP_LIBS="$LIBS"
225 ++ LIBS="$LIBS $LIBLEVELDB"
226 ++ AC_CHECK_LIB([memenv],[main],[
227 ++ LIBMEMENV=-lmemenv
228 ++ ],[
229 ++ AC_MSG_ERROR([LevelDB's memenv library not found; using --with-system-leveldb is not supported anyway])
230 ++ ])
231 ++ LIBS="$TEMP_LIBS"
232 ++ AC_CHECK_HEADER([leveldb/filter_policy.h],[],[
233 ++ AC_MSG_ERROR([LevelDB headers not found; using --with-system-leveldb is not supported anyway])
234 ++ ])
235 ++ AC_CHECK_HEADER([leveldb/helpers/memenv.h],[
236 ++ AC_MSG_CHECKING([for memenv.h path])
237 ++ BITCOIN_SUBDIR_TO_INCLUDE([LEVELDB_CPPFLAGS],[leveldb/helpers/],[memenv])
238 ++ ],[
239 ++ AC_CHECK_HEADER([memenv.h],[],[
240 ++ AC_MSG_ERROR([LevelDB headers not found; using --with-system-leveldb is not supported anyway])
241 ++ ])
242 ++ ])
243 ++fi
244 ++AM_CONDITIONAL([EMBEDDED_LEVELDB],[test x$system_leveldb = xno])
245 + AC_SUBST(LEVELDB_CPPFLAGS)
246 + AC_SUBST(LIBLEVELDB)
247 + AC_SUBST(LIBMEMENV)
248 +
249 ++dnl Check for libsecp256k1, only if explicitly requested
250 ++AC_ARG_WITH([system-libsecp256k1],
251 ++ [AS_HELP_STRING([--with-system-libsecp256k1],
252 ++ [Build with system libsecp256k1 (default is no; DANGEROUS; NOT SUPPORTED)])],
253 ++ [system_libsecp256k1=$withval],
254 ++ [system_libsecp256k1=no]
255 ++)
256 ++if test x$system_libsecp256k1 != xno; then
257 ++ PKG_CHECK_MODULES([libsecp256k1],[libsecp256k1],,[true])
258 ++else
259 ++ libsecp256k1_CFLAGS='-I$(srcdir)/secp256k1/include'
260 ++ libsecp256k1_LIBS='secp256k1/libsecp256k1.la'
261 ++fi
262 ++AM_CONDITIONAL([EMBEDDED_LIBSECP256K1],[test x$system_libsecp256k1 = xno])
263 ++AC_SUBST(libsecp256k1_CFLAGS)
264 ++AC_SUBST(libsecp256k1_LIBS)
265 ++
266 + if test x$enable_wallet != xno; then
267 + dnl Check for libdb_cxx only if wallet enabled
268 + BITCOIN_FIND_BDB48
269 +@@ -515,7 +578,7 @@ BITCOIN_QT_INIT
270 + dnl sets $bitcoin_enable_qt, $bitcoin_enable_qt_test, $bitcoin_enable_qt_dbus
271 + BITCOIN_QT_CONFIGURE([$use_pkgconfig], [qt4])
272 +
273 +-if test x$build_bitcoin_utils$build_bitcoind$bitcoin_enable_qt$use_tests = xnononono; then
274 ++if test x$build_bitcoin_cli$build_bitcoin_tx$build_bitcoind$bitcoin_enable_qt$use_tests = xnonononono; then
275 + use_boost=no
276 + else
277 + use_boost=yes
278 +@@ -701,9 +764,13 @@ AC_MSG_CHECKING([whether to build bitcoind])
279 + AM_CONDITIONAL([BUILD_BITCOIND], [test x$build_bitcoind = xyes])
280 + AC_MSG_RESULT($build_bitcoind)
281 +
282 +-AC_MSG_CHECKING([whether to build utils (bitcoin-cli bitcoin-tx)])
283 +-AM_CONDITIONAL([BUILD_BITCOIN_UTILS], [test x$build_bitcoin_utils = xyes])
284 +-AC_MSG_RESULT($build_bitcoin_utils)
285 ++AC_MSG_CHECKING([whether to build bitcoin-cli])
286 ++AM_CONDITIONAL([BUILD_BITCOIN_CLI], [test x$build_bitcoin_cli = xyes])
287 ++AC_MSG_RESULT($build_bitcoin_cli)
288 ++
289 ++AC_MSG_CHECKING([whether to build bitcoin-tx])
290 ++AM_CONDITIONAL([BUILD_BITCOIN_TX], [test x$build_bitcoin_tx = xyes])
291 ++AC_MSG_RESULT($build_bitcoin_tx)
292 +
293 + AC_MSG_CHECKING([whether to build libraries])
294 + AM_CONDITIONAL([BUILD_BITCOIN_LIBS], [test x$build_bitcoin_libs = xyes])
295 +@@ -826,7 +893,7 @@ else
296 + AC_MSG_RESULT([no])
297 + fi
298 +
299 +-if test x$build_bitcoin_utils$build_bitcoin_libs$build_bitcoind$bitcoin_enable_qt$use_tests = xnonononono; then
300 ++if test x$build_bitcoin_cli$build_bitcoin_tx$build_bitcoin_libs$build_bitcoind$bitcoin_enable_qt$use_tests = xnononononono; then
301 + AC_MSG_ERROR([No targets! Please specify at least one of: --with-utils --with-libs --with-daemon --with-gui or --enable-tests])
302 + fi
303 +
304 +@@ -895,8 +962,10 @@ PKGCONFIG_LIBDIR_TEMP="$PKG_CONFIG_LIBDIR"
305 + unset PKG_CONFIG_LIBDIR
306 + PKG_CONFIG_LIBDIR="$PKGCONFIG_LIBDIR_TEMP"
307 +
308 ++if test x$system_libsecp256k1 = xno; then
309 + ac_configure_args="${ac_configure_args} --disable-shared --with-pic --with-bignum=no"
310 + AC_CONFIG_SUBDIRS([src/secp256k1])
311 ++fi
312 +
313 + AC_OUTPUT
314 +
315 +diff --git a/qa/pull-tester/rpc-tests.sh b/qa/pull-tester/rpc-tests.sh
316 +index 9b31865..5bb187c 100755
317 +--- a/qa/pull-tester/rpc-tests.sh
318 ++++ b/qa/pull-tester/rpc-tests.sh
319 +@@ -57,7 +57,7 @@ testScriptsExt=(
320 + extArg="-extended"
321 + passOn=${@#$extArg}
322 +
323 +-if [ "x${ENABLE_BITCOIND}${ENABLE_UTILS}${ENABLE_WALLET}" = "x111" ]; then
324 ++if [ "x${ENABLE_BITCOIND}${ENABLE_CLI}${ENABLE_WALLET}" = "x111" ]; then
325 + for (( i = 0; i < ${#testScripts[@]}; i++ ))
326 + do
327 + if [ -z "$1" ] || [ "${1:0:1}" == "-" ] || [ "$1" == "${testScripts[$i]}" ] || [ "$1.py" == "${testScripts[$i]}" ]
328 +diff --git a/qa/pull-tester/tests-config.sh.in b/qa/pull-tester/tests-config.sh.in
329 +index 10f4d33..e0e407d 100755
330 +--- a/qa/pull-tester/tests-config.sh.in
331 ++++ b/qa/pull-tester/tests-config.sh.in
332 +@@ -8,7 +8,7 @@ EXEEXT="@EXEEXT@"
333 +
334 + # These will turn into comments if they were disabled when configuring.
335 + @ENABLE_WALLET_TRUE@ENABLE_WALLET=1
336 +-@BUILD_BITCOIN_UTILS_TRUE@ENABLE_UTILS=1
337 ++@BUILD_BITCOIN_CLI_TRUE@ENABLE_CLI=1
338 + @BUILD_BITCOIND_TRUE@ENABLE_BITCOIND=1
339 +
340 + REAL_BITCOIND="$BUILDDIR/src/bitcoind${EXEEXT}"
341 +diff --git a/src/Makefile.am b/src/Makefile.am
342 +index 1c2f770..4d60ddf 100644
343 +--- a/src/Makefile.am
344 ++++ b/src/Makefile.am
345 +@@ -1,4 +1,6 @@
346 ++if EMBEDDED_LIBSECP256K1
347 + DIST_SUBDIRS = secp256k1
348 ++endif
349 + AM_LDFLAGS = $(PTHREAD_CFLAGS) $(LIBTOOL_LDFLAGS)
350 +
351 +
352 +@@ -20,7 +22,7 @@ endif
353 + BITCOIN_CONFIG_INCLUDES=-I$(builddir)/config
354 + BITCOIN_INCLUDES=-I$(builddir) -I$(builddir)/obj $(BOOST_CPPFLAGS) $(LEVELDB_CPPFLAGS) $(CRYPTO_CFLAGS) $(SSL_CFLAGS)
355 +
356 +-BITCOIN_INCLUDES += -I$(srcdir)/secp256k1/include
357 ++BITCOIN_INCLUDES += $(libsecp256k1_CFLAGS)
358 +
359 + LIBBITCOIN_SERVER=libbitcoin_server.a
360 + LIBBITCOIN_WALLET=libbitcoin_wallet.a
361 +@@ -30,10 +32,16 @@ LIBBITCOIN_UTIL=libbitcoin_util.a
362 + LIBBITCOIN_CRYPTO=crypto/libbitcoin_crypto.a
363 + LIBBITCOIN_UNIVALUE=univalue/libbitcoin_univalue.a
364 + LIBBITCOINQT=qt/libbitcoinqt.a
365 ++if EMBEDDED_LIBSECP256K1
366 + LIBSECP256K1=secp256k1/libsecp256k1.la
367 ++else
368 ++LIBSECP256K1=$(libsecp256k1_LIBS)
369 ++endif
370 +
371 ++if EMBEDDED_LIBSECP256K1
372 + $(LIBSECP256K1): $(wildcard secp256k1/src/*) $(wildcard secp256k1/include/*)
373 + $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
374 ++endif
375 +
376 + # Make is not made aware of per-object dependencies to avoid limiting building parallelization
377 + # But to build the less dependent modules first, we manually select their order here:
378 +@@ -63,8 +71,11 @@ if BUILD_BITCOIND
379 + bin_PROGRAMS += bitcoind
380 + endif
381 +
382 +-if BUILD_BITCOIN_UTILS
383 +- bin_PROGRAMS += bitcoin-cli bitcoin-tx
384 ++if BUILD_BITCOIN_CLI
385 ++ bin_PROGRAMS += bitcoin-cli
386 ++endif
387 ++if BUILD_BITCOIN_TX
388 ++ bin_PROGRAMS += bitcoin-tx
389 + endif
390 +
391 + .PHONY: FORCE
392 +diff --git a/src/Makefile.test.include b/src/Makefile.test.include
393 +index 0997148..14b4deb 100644
394 +--- a/src/Makefile.test.include
395 ++++ b/src/Makefile.test.include
396 +@@ -111,10 +111,12 @@ bitcoin_test_check: $(TEST_BINARY) FORCE
397 + bitcoin_test_clean : FORCE
398 + rm -f $(CLEAN_BITCOIN_TEST) $(test_test_bitcoin_OBJECTS) $(TEST_BINARY)
399 +
400 ++if EMBEDDED_LIBSECP256K1
401 + check-local:
402 + @echo "Running test/bitcoin-util-test.py..."
403 + $(AM_V_at)srcdir=$(srcdir) PYTHONPATH=$(builddir)/test $(srcdir)/test/bitcoin-util-test.py
404 + $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C secp256k1 check
405 ++endif
406 +
407 + %.json.h: %.json
408 + @$(MKDIR_P) $(@D)
409
410 diff --git a/net-p2p/bitcoinxtd/files/bitcoinxt.conf b/net-p2p/bitcoinxtd/files/bitcoinxt.conf
411 new file mode 100644
412 index 0000000..c6a55f3
413 --- /dev/null
414 +++ b/net-p2p/bitcoinxtd/files/bitcoinxt.conf
415 @@ -0,0 +1,8 @@
416 +# http://www.bitcoin.org/smf/index.php?topic=644.0
417 +#rpcuser=
418 +#rpcpassword=
419 +
420 +
421 +
422 +
423 +
424
425 diff --git a/net-p2p/bitcoinxtd/files/bitcoinxt.confd b/net-p2p/bitcoinxtd/files/bitcoinxt.confd
426 new file mode 100644
427 index 0000000..134b934
428 --- /dev/null
429 +++ b/net-p2p/bitcoinxtd/files/bitcoinxt.confd
430 @@ -0,0 +1,12 @@
431 +# Config file for /etc/init.d/bitcoinxt
432 +
433 +# owner of bitcoinxtd process (don't change, must be existing)
434 +BITCOINXT_USER="bitcoinxt"
435 +BITCOINXT_CONF="/var/lib/bitcoinxt/.bitcoinxt/bitcoinxt.conf"
436 +BITCOINXT_DATA="/var/lib/bitcoinxt/.bitcoinxt"
437 +
438 +# See http://www.bitcoin.org/smf/index.php?topic=1063
439 +BITCOINXT_OPTS="-conf=${BITCOINXT_CONF} -datadir=${BITCOINXT_DATA} ${BITCOINXT_OPTS}"
440 +
441 +# nice level
442 +NICELEVEL="19"
443
444 diff --git a/net-p2p/bitcoinxtd/files/bitcoinxt.initd b/net-p2p/bitcoinxtd/files/bitcoinxt.initd
445 new file mode 100644
446 index 0000000..bb2cc87
447 --- /dev/null
448 +++ b/net-p2p/bitcoinxtd/files/bitcoinxt.initd
449 @@ -0,0 +1,29 @@
450 +#!/sbin/runscript
451 +# Copyright 1999-2014 Gentoo Foundation
452 +# Distributed under the terms of the GNU General Public License v2
453 +# $Id$
454 +
455 +vardir="/var/lib/bitcoinxt"
456 +conffile="${vardir}/.bitcoinxt/bitcoinxt.conf"
457 +bitcoinxtd_user="${BITCOINXT_USER:-nobody:nobody}"
458 +
459 +description="BitcoinXT crypto-currency wallet for automated services"
460 +pidfile="/run/${SVCNAME}.pid"
461 +command="/usr/bin/bitcoinxtd"
462 +command_args="${BITCOINXT_OPTS}"
463 +command_background="true"
464 +start_stop_daemon_args="-u ${bitcoinxtd_user} -e HOME=${vardir} -N ${NICELEVEL:-0} -w 2000"
465 +
466 +depend() {
467 + need net
468 +}
469 +
470 +start_pre() {
471 + checkpath -f -o ${bitcoinxtd_user} -m 0400 ${conffile} || return 1
472 +
473 + if ! grep -q '^rpcpassword=' "${conffile}"; then
474 + eerror "Please edit `readlink -f ${conffile}`"
475 + eerror "There must be at least a line assigning rpcpassword=something-secure"
476 + return 1
477 + fi
478 +}
479
480 diff --git a/net-p2p/bitcoinxtd/files/bitcoinxtd.logrotate b/net-p2p/bitcoinxtd/files/bitcoinxtd.logrotate
481 new file mode 100644
482 index 0000000..d23bac7
483 --- /dev/null
484 +++ b/net-p2p/bitcoinxtd/files/bitcoinxtd.logrotate
485 @@ -0,0 +1,8 @@
486 +/var/lib/bitcoinxt/.bitcoinxt/debug.log {
487 + missingok
488 + weekly
489 + sharedscripts
490 + postrotate
491 + killall -HUP bitcoinxtd
492 + endscript
493 +}
494
495 diff --git a/net-p2p/bitcoinxtd/files/bitcoinxtd.service b/net-p2p/bitcoinxtd/files/bitcoinxtd.service
496 new file mode 100644
497 index 0000000..c3469ff
498 --- /dev/null
499 +++ b/net-p2p/bitcoinxtd/files/bitcoinxtd.service
500 @@ -0,0 +1,30 @@
501 +# It's not recommended to modify this file in-place, because it will be
502 +# overwritten during package upgrades. If you want to customize, the
503 +# best way is to create file
504 +# "/etc/systemd/system/bitcoinxtd.service.d/*.conf"
505 +# containing your changes
506 +
507 +# For example, if you want to change some daemon and/or unit options,
508 +# create a file named
509 +# "/etc/systemd/system/bitcoinxtd.service.d/myopts.conf"
510 +# containing:
511 +# [Service]
512 +# Environment="BITCOINXT_OPTS=-debug -logtimestamps"
513 +# Nice=10
514 +# This will override the setting appearing below.
515 +
516 +# Note that almost all daemon options could be specified in
517 +# /etc/bitcoinxt/bitcoinxt.conf
518 +
519 +[Unit]
520 +Description=BitcoinXT Daemon
521 +After=network.target
522 +
523 +[Service]
524 +User=bitcoinxt
525 +Environment=BITCOINXT_OPTS=
526 +ExecStart=/usr/bin/bitcoinxtd -daemon=0 $BITCOINXT_OPTS
527 +ExecReload=/bin/kill -HUP $MAINPID
528 +
529 +[Install]
530 +WantedBy=multi-user.target
531
532 diff --git a/net-p2p/bitcoinxtd/metadata.xml b/net-p2p/bitcoinxtd/metadata.xml
533 new file mode 100644
534 index 0000000..a4c7c61
535 --- /dev/null
536 +++ b/net-p2p/bitcoinxtd/metadata.xml
537 @@ -0,0 +1,19 @@
538 +<?xml version="1.0" encoding="UTF-8"?>
539 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
540 +<pkgmetadata>
541 + <herd>proxy-maintainers</herd>
542 + <maintainer>
543 + <email>blueness@g.o</email>
544 + <name>Anthony G. Basile</name>
545 + </maintainer>
546 + <maintainer>
547 + <email>rono@×××××××.com</email>
548 + <name>Ron OHara</name>
549 + </maintainer>
550 + <use>
551 + <flag name='doc'> Include documentatio</flag>
552 + <flag name='logrotate'>Use app-admin/logrotate for rotating logs</flag>
553 + <flag name='upnp'>Enable Universal Plug and Play</flag>
554 + <flag name='wallet'>Enable wallet support</flag>
555 + </use>
556 +</pkgmetadata>