From e7e1837e360a0cb0d6365e97c42122aa3ba48a46 Mon Sep 17 00:00:00 2001 From: layman Date: Sat, 30 Nov 2013 19:11:17 -0500 Subject: net-p2p/namecoind: initial commit Package-Manager: portage-2.2.7 Manifest-Sign-Key: 0xF52D4BBA --- net-p2p/namecoind/Manifest | 7 ++ net-p2p/namecoind/files/namecoin.conf | 8 ++ net-p2p/namecoind/files/namecoin.confd | 10 ++ net-p2p/namecoind/files/namecoin.initd | 104 +++++++++++++++++++++ .../files/namecoind-0.3.72-makefile.patch | 52 +++++++++++ net-p2p/namecoind/metadata.xml | 8 ++ net-p2p/namecoind/namecoind-0.3.72.ebuild | 77 +++++++++++++++ 7 files changed, 266 insertions(+) create mode 100644 net-p2p/namecoind/Manifest create mode 100644 net-p2p/namecoind/files/namecoin.conf create mode 100644 net-p2p/namecoind/files/namecoin.confd create mode 100644 net-p2p/namecoind/files/namecoin.initd create mode 100644 net-p2p/namecoind/files/namecoind-0.3.72-makefile.patch create mode 100644 net-p2p/namecoind/metadata.xml create mode 100644 net-p2p/namecoind/namecoind-0.3.72.ebuild diff --git a/net-p2p/namecoind/Manifest b/net-p2p/namecoind/Manifest new file mode 100644 index 0000000..27afd2e --- /dev/null +++ b/net-p2p/namecoind/Manifest @@ -0,0 +1,7 @@ +AUX namecoin.conf 80 SHA256 541ae10cc2246b620de3e7efa97eee59efacf83d28ea5f1297a121d0708226d2 SHA512 43bef890505a1fac88887bb39e9fdd4ec673ae8838a40279b33711e970551f5a75ac25171c41f8c83de2c953b157f7a3f57171e868fd9f626007d9909331a19f WHIRLPOOL 728e38b62da2c7c3a1149ac511b92d156f7b3c51dacfadd7ce74d9e6f915a6547c4cc8d34159243f50eee333c63b35949b311ea5a7f48a6c3bf17a5d4d47c123 +AUX namecoin.confd 244 SHA256 4fbf157c72d254497298f0e08440dd038f668b921dd61ff5c3306e0a02bb8e1f SHA512 dedd94211b7808a8bd067c929ce5dd7f864cb8ae9c90eceb4856cf88cd81ec0ae20ad12c38450257e6d5c08f7eeca7cb116bfc2b7fe28bd854668eaf67f65b5d WHIRLPOOL 55b75fe9cd772fc24fb857ec2c9930cdb162dd425b5903adb586f9220516ef1b06a3090f5733a471d5819797b6763bb7350a57d0786f29b4bcdfa737ee5ac9d9 +AUX namecoin.initd 2510 SHA256 794f327eb304a9e7ea47a8b9c3cae99a671b4069046ab02845f3ddc2deed73a0 SHA512 cf639ccb07366e29e00f3165ede6497109d72c820d27b186d31003768deeea2103568f2d24f2cc04d994e096d6a33e3b15c8aacd2c340ffc2f5d6d9d71b58842 WHIRLPOOL 78b8c1033570089e4d7609c14a8548d2c4f4d9bfdac1c99f7f6f0a800af14f6a12488a5c5e5215b5d1e6add13e163e234dd06748a338227a1a5eeb30ec34af8c +AUX namecoind-0.3.72-makefile.patch 1582 SHA256 c69a27a610e906fe7605fa5c5df4c497795c5580b2f55b0db987ce95616110cc SHA512 9102a487acdb176c7b77fc7fab73b5aa7f5098819030bad813890e96d01ba9250817b39b1fa2c945cc6bce67f92f66ae429a81c7d760a1740d46fc88d8f9efd5 WHIRLPOOL 717a4eaeb253d1c4aab5fce83daddfcee26a06a999487625c9c8df3c70448b591ae8b5a358e08a33450c4d2da6ea08aee75a54e2761c6448ac1d30c1d93e239e +DIST namecoind-0.3.72.zip 1611426 SHA256 7a47611cd4dff27fbf64ccff9ef524ec33046993a2e9cb3efcb978ef1077d5dc SHA512 f8a0f8c6c7a079afe50291f68807dc6a9b89c124c601033085fa75ba48cdf5c1bb4d0528b831c854c589e4ec5db7f14d8b7df89be791e5805d3e68617b970436 WHIRLPOOL 23e287ad503a1da5033cda39a2f0e4e6aaecdad083e3f2beaca8500670121c6ec25ce8914345142e21f366fccbd78420b33ad4391cee0a000878abb604aeede2 +EBUILD namecoind-0.3.72.ebuild 1735 SHA256 541c666642d68a4e20ed5bfcae805810285cde998f83f22bdba396f8b22f84bb SHA512 838f4e597d9c8ad7ef7f37132f13e708982f972c5274121dc7c0ce5818c98a2340125f4aaa49819fb162c38a80b6f6021f05189b1abb61deebf63bfcb5b7eee0 WHIRLPOOL 51a1f2606e602681ee1a146e96a965a2feda444839015bfa93bc0f437112024c46b5d05c7e20b0fe4bcb1ae04fe54b3e39b491521ac2c40193558cea9df78f5f +MISC metadata.xml 238 SHA256 f13e6e7b65d20beb9ae945d520160ef0dba80c1965754958945904d7e3c0a75f SHA512 3c3d75f1cb90ffcfb98df47481fbde6d451254a29fa87577acd25bc27cbcc3e5dbc0c1efce5974be905428f0b7caf912c8b051417aff92763847fa377493a153 WHIRLPOOL 6ec3d597b87aff99014404b8b732e6f600aafc3c3eeebfab135c9c19cde2e43161cfa23f841bd72826cc3393b724e1dac115c15dcce2b74ace6f1d6ec209dbf3 diff --git a/net-p2p/namecoind/files/namecoin.conf b/net-p2p/namecoind/files/namecoin.conf new file mode 100644 index 0000000..c6a55f3 --- /dev/null +++ b/net-p2p/namecoind/files/namecoin.conf @@ -0,0 +1,8 @@ +# http://www.bitcoin.org/smf/index.php?topic=644.0 +#rpcuser= +#rpcpassword= + + + + + diff --git a/net-p2p/namecoind/files/namecoin.confd b/net-p2p/namecoind/files/namecoin.confd new file mode 100644 index 0000000..0120a56 --- /dev/null +++ b/net-p2p/namecoind/files/namecoin.confd @@ -0,0 +1,10 @@ +# Config file for /etc/init.d/namecoin + +# owner of namecoind process (don't change, must be existing) +NAMECOIN_USER="namecoin" + +# See http://www.bitcoin.org/smf/index.php?topic=1063 +NAMECOIN_OPTS="${NAMECOIN_OPTS}" + +# nice level +NICELEVEL="19" diff --git a/net-p2p/namecoind/files/namecoin.initd b/net-p2p/namecoind/files/namecoin.initd new file mode 100644 index 0000000..4330c91 --- /dev/null +++ b/net-p2p/namecoind/files/namecoin.initd @@ -0,0 +1,104 @@ +#!/sbin/runscript +# Distributed under the terms of the GNU General Public License, v2 or later + +VARDIR="/var/lib/namecoin" +CONFFILE="${VARDIR}/.namecoin/bitcoin.conf" + +depend() { + need net +} + +checkconfig() { + if [[ "${NAMECOIN_USER}" == "" ]] ; then + eerror "Please edit /etc/conf.d/namecoind" + eerror "A user must be specified to run namecoind as that user." + eerror "Modify USER to your needs (you may also add a group after a colon)" + return 1 + fi + if ! `getent passwd | cut -d ':' -f 1 | grep $( echo "${NAMECOIN_USER}" | cut -d ':' -f 1 ) -sq` ; then + eerror "Please edit /etc/conf.d/namecoind" + eerror "Specified user must exist!" + return 1 + fi + if `echo "${NAMECOIN_USER}" | grep ':' -sq` ; then + if ! `cut -d ':' -f 1 /etc/group | grep $( echo "${NAMECOIN_USER}" | cut -d ':' -f 2 ) -sq` ; then + eerror "Please edit /etc/conf.d/namecoind" + eerror "Specified group must exist!" + return 1 + fi + fi + if ! grep -q '^rpcpassword=' "${CONFFILE}"; then + eerror "Please edit `readlink -f ${CONFFILE}`" + eerror "There must be at least a line assigning rpcpassword=something-secure" + return 1 + fi + if ! stat -Lc '%a' "${CONFFILE}" | grep -q '^[4567]00$'; then + eerror "`readlink -f ${CONFFILE}` should not be readable by other users" + return 1 + fi + return 0 +} + +start() { + checkconfig || return 1 + ebegin "Starting Namecoind daemon" + + pkg-config openrc + if [ $? = 0 ]; then + start_openrc + else + start_baselayout + fi +} + +stop() { + ebegin "Stopping Namecoin daemon" + + pkg-config openrc + if [ $? = 0 ]; then + stop_openrc + else + stop_baselayout + fi +} + +start_openrc() { + start-stop-daemon \ + --start --user "${NAMECOIN_USER}" --name namecoind \ + --pidfile /var/run/namecoind.pid --make-pidfile \ + --env HOME="${VARDIR}" --exec /usr/bin/namecoind \ + --nicelevel "${NICELEVEL}" \ + --background \ + --wait 2000 \ + -- ${NAMECOIN_OPTS} + eend $? +} + +stop_openrc() { + start-stop-daemon --stop --user "${NAMECOIN_USER}" \ + --name namecoind --pidfile /var/run/namecoind.pid \ + --wait 30000 \ + --progress + eend $? +} + +start_baselayout() { + start-stop-daemon \ + --start --user "${NAMECOIN_USER}" --name namecoind \ + --pidfile /var/run/namecoind.pid --make-pidfile \ + --env HOME="${VARDIR}" --exec /usr/bin/namecoind \ + --chuid "${NAMECOIN_USER}" \ + --nicelevel "${NICELEVEL}" \ + --background \ + -- ${NAMECOIN_OPTS} + eend $? +} + +stop_baselayout() { + start-stop-daemon \ + --stop \ + --user "${NAMECOIN_USER}" \ + --name namecoind \ + --pidfile /var/run/namecoind.pid + eend $? +} diff --git a/net-p2p/namecoind/files/namecoind-0.3.72-makefile.patch b/net-p2p/namecoind/files/namecoind-0.3.72-makefile.patch new file mode 100644 index 0000000..f899694 --- /dev/null +++ b/net-p2p/namecoind/files/namecoind-0.3.72-makefile.patch @@ -0,0 +1,52 @@ +diff -Naur namecoinq-vQ.3.72.orig/src/Makefile namecoinq-vQ.3.72/src/Makefile +--- namecoinq-vQ.3.72.orig/src/Makefile 2013-10-29 09:38:10.000000000 -0400 ++++ namecoinq-vQ.3.72/src/Makefile 2013-11-30 18:43:25.016028725 -0500 +@@ -1,6 +1,6 @@ +-CXX=g++ ++CXX?=g++ + +-DEFS=-D_MT -DNOPCH -DFOURWAYSSE2 -DUSE_SSL ++DEFS=-D_MT -DNOPCH -DFOURWAYSSE2 -DUSE_SSL + + # Detect MinGW + MINGW=$(shell uname -s|grep -i mingw32) +@@ -8,20 +8,10 @@ + # Link boost statically + DEFS += -DBOOST_THREAD_USE_LIB + +-INCLUDEPATHS= \ +- -I../libs/openssl-1.0.1e/include \ +- -I../libs/db-4.7.25.NC/build_unix \ +- -I../libs/boost_1_50_0 +- +-LIBPATHS= \ +- -L../libs/openssl-1.0.1e \ +- -L../libs/db-4.7.25.NC/build_unix \ +- -L../libs/boost_1_50_0/stage/lib +- + LIBBOOST_SUFFIX= + + LIBS= \ +- -Wl,-Bstatic \ ++ -Wl,-Bdynamic \ + -l boost_system$(LIBBOOST_SUFFIX) \ + -l boost_filesystem$(LIBBOOST_SUFFIX) \ + -l boost_program_options$(LIBBOOST_SUFFIX) \ +@@ -70,7 +60,7 @@ + -l pthread + endif + +-CXXFLAGS=-O2 -Wno-invalid-offsetof -Wformat $(DEFS) $(INCLUDEPATHS) ++#CXXFLAGS=-O2 -Wno-invalid-offsetof -Wformat $(DEFS) $(INCLUDEPATHS) + HEADERS=headers.h strlcpy.h serialize.h uint256.h util.h key.h bignum.h base58.h \ + script.h allocators.h db.h walletdb.h crypter.h net.h irc.h keystore.h main.h wallet.h bitcoinrpc.h uibase.h ui.h noui.h init.h auxpow.h + +@@ -110,7 +100,7 @@ + obj/nogui/namecoin.o: namecoin.h + + namecoind: $(OBJS:obj/%=obj/nogui/%) obj/nogui/namecoin.o +- $(CXX) $(CXXFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS) ++ $(CXX) $(CXXFLAGS) -o $@ $^ $(LDFLAGS) $(LIBS) + + clean: + -rm -f namecoin namecoind diff --git a/net-p2p/namecoind/metadata.xml b/net-p2p/namecoind/metadata.xml new file mode 100644 index 0000000..1e75873 --- /dev/null +++ b/net-p2p/namecoind/metadata.xml @@ -0,0 +1,8 @@ + + + + + blueness@gentoo.org + Anthony G. Basile + + diff --git a/net-p2p/namecoind/namecoind-0.3.72.ebuild b/net-p2p/namecoind/namecoind-0.3.72.ebuild new file mode 100644 index 0000000..05cad52 --- /dev/null +++ b/net-p2p/namecoind/namecoind-0.3.72.ebuild @@ -0,0 +1,77 @@ +# Copyright 2010-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=4 + +DB_VER="4.8" + +inherit db-use eutils toolchain-funcs + +DESCRIPTION="A P2P network based domain name system" +HOMEPAGE="https://dot-bit.org/" +SRC_URI="https://github.com/namecoinq/namecoinq/archive/v${PV/0/Q}.zip -> ${P}.zip" + +LICENSE="MIT ISC cryptopp" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="ssl upnp" + +RDEPEND=" + dev-libs/boost[threads(+)] + dev-libs/crypto++ + dev-libs/openssl[-bindist] + upnp? ( + net-libs/miniupnpc + ) + sys-libs/db:$(db_ver_to_slot "${DB_VER}")[cxx] +" +DEPEND="${RDEPEND} + >=app-shells/bash-4.1 +" + +S="${WORKDIR}/namecoinq-v${PV/0/Q}" + +pkg_setup() { + local UG='namecoin' + enewgroup "${UG}" + enewuser "${UG}" -1 -1 /var/lib/namecoin "${UG}" +} + +src_prepare() { + epatch "${FILESDIR}"/namecoind-0.3.72-makefile.patch +} + +src_compile() { + local OPTS=() + + OPTS+=("CXXFLAGS=${CXXFLAGS} -I$(db_includedir "${DB_VER}")") + OPTS+=("LDFLAGS=${LDFLAGS} -ldb_cxx-${DB_VER}") + + use ssl && OPTS+=(USE_SSL=1) + use upnp && OPTS+=(USE_UPNP=1) + + cd src || die + emake CXX="$(tc-getCXX)" "${OPTS[@]}" ${PN} +} + +src_install() { + dobin src/${PN} + + insinto /etc/namecoin + doins "${FILESDIR}/namecoin.conf" + fowners namecoin:namecoin /etc/namecoin/namecoin.conf + fperms 600 /etc/namecoin/namecoin.conf + + newconfd "${FILESDIR}/namecoin.confd" ${PN} + newinitd "${FILESDIR}/namecoin.initd" ${PN} + + keepdir /var/lib/namecoin/.namecoin + fperms 700 /var/lib/namecoin + fowners namecoin:namecoin /var/lib/namecoin/ + fowners namecoin:namecoin /var/lib/namecoin/.namecoin + dosym /etc/namecoin/namecoin.conf /var/lib/namecoin/.namecoin/bitcoin.conf + + dodoc doc/README + dodoc DESIGN-namecoin.md FAQ.md doc/README_merged-mining.md +} -- cgit v1.2.3-65-gdbad