From 0fb88448c7b86e0c689a642046273470e1a5cee5 Mon Sep 17 00:00:00 2001 From: Justin Wind Date: Mon, 25 Aug 2014 18:57:19 -0700 Subject: [PATCH] fixed dogecoin init.d for 1.8, removed old versions --- net-p2p/dogecoind/Manifest | 13 +- net-p2p/dogecoind/dogecoind-1.6.ebuild | 126 ------------ net-p2p/dogecoind/dogecoind-1.7.0-r1.ebuild | 110 ---------- net-p2p/dogecoind/dogecoind-1.7.0.ebuild | 126 ------------ net-p2p/dogecoind/dogecoind-1.8.0.ebuild | 9 - .../files/dogecoin-sys_leveldb.patch | 193 ------------------ net-p2p/dogecoind/files/dogecoin.confd | 7 + net-p2p/dogecoind/files/dogecoin.initd | 44 ++-- 8 files changed, 41 insertions(+), 587 deletions(-) delete mode 100644 net-p2p/dogecoind/dogecoind-1.6.ebuild delete mode 100644 net-p2p/dogecoind/dogecoind-1.7.0-r1.ebuild delete mode 100644 net-p2p/dogecoind/dogecoind-1.7.0.ebuild delete mode 100644 net-p2p/dogecoind/files/dogecoin-sys_leveldb.patch diff --git a/net-p2p/dogecoind/Manifest b/net-p2p/dogecoind/Manifest index 17e696b..bafa9b6 100644 --- a/net-p2p/dogecoind/Manifest +++ b/net-p2p/dogecoind/Manifest @@ -1,16 +1,9 @@ -AUX dogecoin-sys_leveldb.patch 7264 SHA256 9fbfabdba7c92f82b74e2bca0fefdeeacec281375bf602d86f2797dcf41a777b SHA512 81040d6d6254721716c88cdae8818b2c3d610589b8a2929cda62b73df12d274192eaab066019c2a706fc6d66012d81602de6cdc6f000a2b3d6c39a3d3d5402be WHIRLPOOL e1ae908c4e6a57e2402e4c0280f5516c366783ee688059bffade89928a176b6cbb37ff75dc89f72ebc5152430eb165ecb79964c9e0428f793e2e51376a37a2b1 AUX dogecoin.conf 80 SHA256 541ae10cc2246b620de3e7efa97eee59efacf83d28ea5f1297a121d0708226d2 SHA512 43bef890505a1fac88887bb39e9fdd4ec673ae8838a40279b33711e970551f5a75ac25171c41f8c83de2c953b157f7a3f57171e868fd9f626007d9909331a19f WHIRLPOOL 728e38b62da2c7c3a1149ac511b92d156f7b3c51dacfadd7ce74d9e6f915a6547c4cc8d34159243f50eee333c63b35949b311ea5a7f48a6c3bf17a5d4d47c123 -AUX dogecoin.confd 245 SHA256 334ae7ecfc7a9528bf589834108875f24f5aaba2cc0229968f30e90d6e0ebae3 SHA512 33b23c57ab7dce048b4fa0aad7755227f0a8fe12e46bfe8dbf876b9f251fe6d158db7ac75c558c6ff3aa9b80be07f58c43289cd32ae999616af65e6c96253995 WHIRLPOOL 7010cd72dcbf96a10b9834d7e30401da64a35d4da2190bd2dc9cf54ad2597aecd54a776c1112738cdc9e807b3a5580f40a9be21978df456bc37b9684f4a04eb1 -AUX dogecoin.initd 2511 SHA256 fbaa1a2c534e5b0e1137a32d1f1b10d42951f6f36868bf8ed1e20e3d4b2a49c3 SHA512 656791c9d5812a5ea941a731aa1db10b22df6cfbf014737b9a2e2873ad6ccb642ac1ffacdd942e742ba373d0a5557315ba27a01af738197cf8fcb4240426daaa WHIRLPOOL d9f468153b5ac52df47d697de62b6afbb5b43612a1fb658053f3393a6c1553dfa731bdcb04088a9cd0325eb3f5254be9e3d163560bd5e7a5115950f89161a06f +AUX dogecoin.confd 415 SHA256 8681076255d5ce9c127342bd9bf27f25b0111d3beecde20ca934a7630899184e SHA512 7bc8c86f6bdf8687ca7b4d292865c75575e2dca2fe98ff4f002e690ef7552c32be949d85d69797c99282f68357601bd3d8f84d8d8f27158865ee0bb52b1e6124 WHIRLPOOL 356279af146901a1f6d2ec32d3b37a2d72889305344ae116e8cd51cad71128330aebaac2b97f55d3dd8ef87ca402b299ff6a0ff7844115b7365f036076f90b08 +AUX dogecoin.initd 2978 SHA256 20c28282d865411a8dfb9fa2fbb68329b7d95c9894b2fe25700afcefee80fc5c SHA512 bfba32715eb696ffcee56ef807f9569ab5409b197699139ddc98993703e5f57f74f428e39765139226c6bdbaf85a259ef5afda2ad358f7a55e52ba02a39b8cd6 WHIRLPOOL 56ca35a591c70b8b8425bc65de19d3683cc3ad913f1f5b7d894207b7ad5c5b0e00836b08e2087a3b7093708f5e24253d4a36217f0125bfebaaf393afdd6bb6a0 AUX dogecoin.service 879 SHA256 6c121a84cf9057133f1932622a47e58fbed7b4bb5248b73a356a309b7c728a41 SHA512 6aa48c98cf3d64ee7520dbd8d91fa3a514c7677aacc309db010b2e3184a0ccfcf867c5105d94c7c43e668ab84842790f04a75a0daa0e7db589745e1e5600715c WHIRLPOOL 96361a915fb40668ecb05b068c8acb324a72a037aabf67e39776adc8919c86286feb6c2d2664f4dc2fe59088cc80db114d337312fee0a9b6fae6d2ac7b770cd4 AUX dogecoind.logrotate 113 SHA256 33d642ea78faca1788f25dc725aaa2249d0a60791d56e6d31febd207432ab68e SHA512 d041af278b6138f8f13b3a51928f0e509ef7a5ef767e2f29ce27a6766709b583f6452dd2813cbbe9691765b042ad6b5e50f457dba3022b9b5f1ca419168845d9 WHIRLPOOL c5554efed5fe6979340686ec7e4b8bf51aac7d5c9770ec318f67a9041b4bfa616e7216793e8458b21228bc937e512960bad4588d3449be46d2b1d5f053aeae74 -DIST dogecoin-1.6.tar.gz 3405829 SHA256 cab04d7a33de1b429440bfa98506d4a64417a70bddcb9a33342b38837edf54fd SHA512 dd40d96f87aa787af3ae7da38ec33c94bdc15b1176c2468c3a7408778b3b0e64f2c2bdafa3a85e72ef02fe4b9f931cbe7dec33b1da3bc867978d747f31662621 WHIRLPOOL 9721725f24d712caeab03b863115b9f3d553951cdf48885a3cdc4899f5e5a5eec5a7c1c63c22b5bf7ff93c73cc90b15f8b9c1f4318d8737c1cfa4f7e5aafd1ae -DIST dogecoin-1.7.0.tar.gz 6865456 SHA256 e45cb9f2f24b3028ade4dc4791e72bf36e471920b50a93e03b29b36a95fd63cb SHA512 2d764f9a5411036d39cafb693c698944c200d2b80634e34e187d2265724066d72ce28c018633b5e6ef73a69de8ea8cea67bd1851b1f0dbf7d0cad22b0ee8c741 WHIRLPOOL 94b24bf913ff7fda6229bda40c4c7371dea2e49405edffe1eaf3c0dd8f0aab060ae1f269b70eb1f933a5303076828351ba823496070c60d1230a83f4d53ecdf4 -DIST dogecoin-v1.7.0.tgz 6865456 SHA256 e45cb9f2f24b3028ade4dc4791e72bf36e471920b50a93e03b29b36a95fd63cb SHA512 2d764f9a5411036d39cafb693c698944c200d2b80634e34e187d2265724066d72ce28c018633b5e6ef73a69de8ea8cea67bd1851b1f0dbf7d0cad22b0ee8c741 WHIRLPOOL 94b24bf913ff7fda6229bda40c4c7371dea2e49405edffe1eaf3c0dd8f0aab060ae1f269b70eb1f933a5303076828351ba823496070c60d1230a83f4d53ecdf4 DIST dogecoin-v1.8.0.tgz 8049653 SHA256 8a33958c04213cd621aa3c86910477813af22512f03b47c98995d20d31f3f935 SHA512 898bb7e18d8e6964b9da05a1bc12a42ff3362b954c32415f1d4c0e58572313fafddffb4184670f7083412dbe053050719a7593464654e41799fa90e96aca6083 WHIRLPOOL cfd9336a2d15bb911c17314cb6169472e08d838498bc3dfe9164ea1bf59aa0d782e9958798af4a0feca660ab2dd6ccbd92079b5275c70db206ae8f589b67548f -EBUILD dogecoind-1.6.ebuild 3009 SHA256 61e3b4f3c96997e577de9a64c77eef666cb274085d6cb8a6517bef9db3018b44 SHA512 f7469092e7c38359a46c79808abcec13df8e3cebcc6136b8473e3140851faac9bb9e59b4faf241046e1f2fb26bf43b888ce66ec746194458c0e6e2341a438a5f WHIRLPOOL 2d61fb09f04b01546881b2fa7fde96791349d5659321e5f35664e7b96f4d6ad4672b55d5e1f6491a2ed9c9531b4b064c4c1cc3f274ad2fdfef5acc05be6c60ee -EBUILD dogecoind-1.7.0-r1.ebuild 2581 SHA256 ef30c3fb41fdd0f7b3a7b7ad2bcc8eb74e436caa27f4a3cd1df33de0e1fb2c9e SHA512 3f8a2cb168df4baa22feee4d991a8f1aa2ef1a90ee0bd2e326ac1f0585bed7f2dc686c5553ad95948c6c2654cfdc8d45118604d7310a82f988822153055b85dd WHIRLPOOL e0f1efdc781eb9e829f927225d642e48cbd9b9abfbef1691104efb7df8d410fdc797d002473898c0bcc9b4b0fef9aed65ded67af99dc8641c7dbfbd86943ad47 -EBUILD dogecoind-1.7.0.ebuild 3010 SHA256 bf3ff3002c2049de26bb9c5691d0f9aba18fad853ea72a525022c820880aeb73 SHA512 e9a6eeb49e3a2905db225d2c92e9a17aaab3d2db2659d846f22b4396441d495f1ce37bf9a99814fc9a4c82bf2d52ff0827215fc7fc9c7cc3a676c77f0e99bd9b WHIRLPOOL f280e12463de27aa64640e783ef6eec58b84f56838d5efb7f98012b16332bf2ff42fa25b47373a558fe53ee50aeaa6f99de9acfc8450bb2b6ee75e35295a8a9f -EBUILD dogecoind-1.8.0.ebuild 2532 SHA256 bb7a93346ca478c952b1bd996a921fc1b4e873cbf39729eef30fb48f14537e30 SHA512 6818331444400a1c50dac6aa4a5b2bed77458d228d03ab7c4b36db5f63296e71d1bf1ad8b2dfba6f88b3f0d6f56a236a12171e3cd64b255ce7fff2919b5b50fa WHIRLPOOL b709d4bbc2b348c191f731f9bb33e04692f90701820d897c39a6aabc7d420e3a22833904443e13c15cb3923e52d3a5a0aeaeb0cace6fa577c4101cf5e940d59d +EBUILD dogecoind-1.8.0.ebuild 2181 SHA256 73e497f0150b06d1c078ca6025317730eaa99e2cb4aaacca3a897a35d6724345 SHA512 89657a61b9887fd4342d9e21eca3d69cd5d69ba545ba6f6013ef2aa409a8d959efa4f714ceed2b9cb4056c3fff3e10ff711b52e793c3f8b356ff2b0ecf27c525 WHIRLPOOL 6da5016a4e4ea5b41bba47635475254e054d61eaec64af03af9702f82e3ebcd7c532209ee41508fed7c5ff8a0c23b909683cd32bc78a1ed711a56787ebe6c9e7 MISC ChangeLog 35 SHA256 249b088967e439f9ede35725074ad34e74eb2aebf5afdf87f77f4d9f69a105c1 SHA512 6849adb7ba7996356171b259f1e7d428a27e5168c035787a86a2dc8e37c595bcd4a9887f5cadebeee4aefdce61e1dd6ffc8f924ff1fdda7729b75dcd2a404f43 WHIRLPOOL b8da20935cce8d197d9b83593f52c52f10ba33a9a0ce2c6fb76edc5800eb7275352f602d7b4304690459c7bcdba01df06af92d2e71b58e7822bc16b92c7ab1d1 MISC metadata.xml 325 SHA256 37aef5bcb42f89e449ea4f0ec19174be6c9ba1bafcd49df1d3f60969a2eeb0e9 SHA512 de0df1316737a65c1e0996dbae24e653eac94d439cf2c291126ba0917195345a31518f7b3f9b2d548b2330d615c01797b2a808b341491980d1ffdd23f43bc145 WHIRLPOOL 31a18cf426f2479402744bb74e6987c9cd87899558fe7c9c4e5bd3a4d171d2f0ab21c40898d5c96f7c67ce7a74327f859df1ac51eb2e94a6abc1ce64045de2af diff --git a/net-p2p/dogecoind/dogecoind-1.6.ebuild b/net-p2p/dogecoind/dogecoind-1.6.ebuild deleted file mode 100644 index 49de7ec..0000000 --- a/net-p2p/dogecoind/dogecoind-1.6.ebuild +++ /dev/null @@ -1,126 +0,0 @@ -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -DB_VER="5.1" - -inherit bash-completion-r1 db-use eutils systemd user - -MyPV="${PV/_/-}" -MyPN="dogecoin" -MyP="${MyPN}-${MyPV}" - -DESCRIPTION="P2P Internet currency based on Bitcoin but wow such doge" -HOMEPAGE="https://dogecoin.com/" -SRC_URI="https://github.com/${MyPN}/${MyPN}/archive/${MyPV}.tar.gz -> ${MyP}.tar.gz" - -LICENSE="MIT ISC GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="bash-completion examples ipv6 logrotate upnp system_leveldb" - -RDEPEND=" - dev-libs/boost[threads(+)] - dev-libs/openssl:0[-bindist] - logrotate? ( - app-admin/logrotate - ) - upnp? ( - net-libs/miniupnpc - ) - sys-libs/db:$(db_ver_to_slot "${DB_VER}")[cxx] - system_leveldb? ( - =dev-libs/leveldb-1.15.0[-snappy] - ) -" -DEPEND="${RDEPEND} - >=app-shells/bash-4.1 - sys-apps/sed -" - -S="${WORKDIR}/${MyP}" - -pkg_setup() { - local UG='dogecoin' - enewgroup "${UG}" - enewuser "${UG}" -1 -1 /var/lib/dogecoin "${UG}" -} - -src_prepare() { -# epatch "${FILESDIR}"/${MyPN}-sys_leveldb.patch -# rm -r src/leveldb - - if has_version '>=dev-libs/boost-1.52'; then - sed -i 's/\(-l db_cxx\)/-l boost_chrono$(BOOST_LIB_SUFFIX) \1/' src/makefile.unix - fi -} - -src_configure() { - OPTS=() - - OPTS+=("DEBUGFLAGS=") - OPTS+=("CXXFLAGS=${CXXFLAGS}") - OPTS+=("LDFLAGS=${LDFLAGS}") - - if use upnp; then - OPTS+=("USE_UPNP=1") - else - OPTS+=("USE_UPNP=-") - fi - - use ipv6 || OPTS+=("USE_IPV6=-") - - use system_leveldb && OPTS+=("USE_SYSTEM_LEVELDB=1") - - OPTS+=("BDB_INCLUDE_PATH=$(db_includedir "${DB_VER}")") - OPTS+=("BDB_LIB_SUFFIX=-${DB_VER}") - - cd src || die - emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" -f makefile.unix "${OPTS[@]}" ${PN} -} - -#Tests are broken with and without our dogecoin-sys_leveldb.patch. -#When tests work, make sure to inherit toolchain-funcs -#src_test() { -# cd src || die -# emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" -f makefile.unix "${OPTS[@]}" test_dogecoin -# ./test_dogecoin || die 'Tests failed' -#} - -src_install() { - dobin src/${PN} - - insinto /etc/dogecoin - doins "${FILESDIR}/dogecoin.conf" - fowners dogecoin:dogecoin /etc/dogecoin/dogecoin.conf - fperms 600 /etc/dogecoin/dogecoin.conf - - newconfd "${FILESDIR}/dogecoin.confd" ${PN} - newinitd "${FILESDIR}/dogecoin.initd" ${PN} - systemd_dounit "${FILESDIR}/dogecoin.service" - - keepdir /var/lib/dogecoin/.dogecoin - fperms 700 /var/lib/dogecoin - fowners dogecoin:dogecoin /var/lib/dogecoin/ - fowners dogecoin:dogecoin /var/lib/dogecoin/.dogecoin - dosym /etc/dogecoin/dogecoin.conf /var/lib/dogecoin/.dogecoin/dogecoin.conf - -# dodoc doc/README.md doc/release-notes.md -# newman contrib/debian/manpages/bitcoind.1 dogecoind.1 -# newman contrib/debian/manpages/bitcoin.conf.5 dogecoin.conf.5 - - if use bash-completion; then - :; -# newbashcomp contrib/bitcoind.bash-completion ${PN}.bash-completion - fi - - if use examples; then - docinto examples -# dodoc -r contrib/{bitrpc,pyminer,spendfrom,tidy_datadir.sh,wallettools} - fi - - if use logrotate; then - insinto /etc/logrotate.d - newins "${FILESDIR}/dogecoind.logrotate" dogecoind - fi -} diff --git a/net-p2p/dogecoind/dogecoind-1.7.0-r1.ebuild b/net-p2p/dogecoind/dogecoind-1.7.0-r1.ebuild deleted file mode 100644 index 4d24c5b..0000000 --- a/net-p2p/dogecoind/dogecoind-1.7.0-r1.ebuild +++ /dev/null @@ -1,110 +0,0 @@ -# Distributed under the terms of the GNU General Public License v2 - -EAPI="5" - -DB_VER="5.1" - -inherit autotools db-use eutils versionator systemd user - -MyPV="${PV/_/}" -MyPN="dogecoin" -MyP="${MyPN}-${MyPV}" - -DESCRIPTION="P2P Internet currency based on Bitcoin but wow such doge" -HOMEPAGE="https://dogecoin.com/" -SRC_URI="https://github.com/${MyPN}/${MyPN}/archive/v${MyPV}.tar.gz -> ${MyPN}-v${PV}.tgz" - -LICENSE="MIT ISC GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="debug examples ipv6 logrotate upnp +wallet test" - -RDEPEND=" - >=dev-libs/boost-1.41.0[threads(+)] - dev-libs/openssl:0[-bindist] - logrotate? ( - app-admin/logrotate - ) - upnp? ( - net-libs/miniupnpc - ) - sys-libs/db:$(db_ver_to_slot "${DB_VER}")[cxx] -" -DEPEND="${RDEPEND} - >=app-shells/bash-4.1 - sys-apps/sed -" - -S="${WORKDIR}/${MyP}" - -pkg_setup() { - local UG='dogecoin' - enewgroup "${UG}" - enewuser "${UG}" -1 -1 /var/lib/dogecoin "${UG}" -} - -src_prepare() { - # bitcoin for some reason doesn't use embedded leveldb - # but we will, because version/bug pinning is a good thing -# rm -r src/leveldb -# sed -e 's/^\(LIBLEVELDB=\).*$/\1-lleveldb/' \ -# -e 's/^\(LIBMEMENV=\).*$/\1-lmemenv/' \ -# -e 's/^\(AM_CONDITIONAL(\[EMBEDDED_LEVELDB\],\[\).*\(\])\)$/\1false\2/' \ -# -i configure.ac - - eautoreconf -} - -src_configure() { - econf \ - --disable-silent-rules \ - $(use_enable wallet) \ - $(use_enable ipv6) \ - $(use_enable test tests) \ - --disable-hardening \ - --disable-ccache \ - $(use_enable debug) \ - $(use_with upnp miniupnpc) \ - --without-gui -} - -src_test() { - emake check -} - -src_install() { - dobin "src/${PN}" - dobin "src/dogecoin-cli" - - insinto /etc/dogecoin - newins "${FILESDIR}/dogecoin.conf" dogecoin.conf - fowners dogecoin:dogecoin /etc/dogecoin/dogecoin.conf - fperms 600 /etc/dogecoin/dogecoin.conf - - newconfd "${FILESDIR}/dogecoin.confd" "${PN}" - newinitd "${FILESDIR}/dogecoin.initd" "${PN}" -# systemd_dounit "${FILESDIR}/dogecoind.service" - - keepdir /var/lib/dogecoin/.dogecoin - fperms 700 /var/lib/dogecoin - fowners dogecoin:dogecoin /var/lib/dogecoin/ - fowners dogecoin:dogecoin /var/lib/dogecoin/.dogecoin - dosym /etc/dogecoin/dogecoin.conf /var/lib/dogecoin/.dogecoin/dogecoin.conf - - dodoc doc/README.md doc/release-notes.md -# doman contrib/debian/manpages/{dogecoind.1,dogecoin.conf.5} - -# if use bash-completion; then -# newbashcomp "contrib/${PN}.bash-completion" "${PN}" -# fi - - if use examples; then - docinto examples - dodoc -r contrib/{README.md,bitrpc,pyminer,spendfrom,linearize,qos} - fi - - if use logrotate; then - insinto /etc/logrotate.d - newins "${FILESDIR}/dogecoind.logrotate" dogecoind - fi -} diff --git a/net-p2p/dogecoind/dogecoind-1.7.0.ebuild b/net-p2p/dogecoind/dogecoind-1.7.0.ebuild deleted file mode 100644 index 97ed67f..0000000 --- a/net-p2p/dogecoind/dogecoind-1.7.0.ebuild +++ /dev/null @@ -1,126 +0,0 @@ -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -DB_VER="5.1" - -inherit bash-completion-r1 db-use eutils systemd user - -MyPV="${PV/_/-}" -MyPN="dogecoin" -MyP="${MyPN}-${MyPV}" - -DESCRIPTION="P2P Internet currency based on Bitcoin but wow such doge" -HOMEPAGE="https://dogecoin.com/" -SRC_URI="https://github.com/${MyPN}/${MyPN}/archive/v${MyPV}.tar.gz -> ${MyP}.tar.gz" - -LICENSE="MIT ISC GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="bash-completion examples ipv6 logrotate upnp system_leveldb" - -RDEPEND=" - dev-libs/boost[threads(+)] - dev-libs/openssl:0[-bindist] - logrotate? ( - app-admin/logrotate - ) - upnp? ( - net-libs/miniupnpc - ) - sys-libs/db:$(db_ver_to_slot "${DB_VER}")[cxx] - system_leveldb? ( - =dev-libs/leveldb-1.15.0[-snappy] - ) -" -DEPEND="${RDEPEND} - >=app-shells/bash-4.1 - sys-apps/sed -" - -S="${WORKDIR}/${MyP}" - -pkg_setup() { - local UG='dogecoin' - enewgroup "${UG}" - enewuser "${UG}" -1 -1 /var/lib/dogecoin "${UG}" -} - -src_prepare() { -# epatch "${FILESDIR}"/${MyPN}-sys_leveldb.patch -# rm -r src/leveldb - - if has_version '>=dev-libs/boost-1.52'; then - sed -i 's/\(-l db_cxx\)/-l boost_chrono$(BOOST_LIB_SUFFIX) \1/' src/makefile.unix - fi -} - -src_configure() { - OPTS=() - - OPTS+=("DEBUGFLAGS=") - OPTS+=("CXXFLAGS=${CXXFLAGS}") - OPTS+=("LDFLAGS=${LDFLAGS}") - - if use upnp; then - OPTS+=("USE_UPNP=1") - else - OPTS+=("USE_UPNP=-") - fi - - use ipv6 || OPTS+=("USE_IPV6=-") - - use system_leveldb && OPTS+=("USE_SYSTEM_LEVELDB=1") - - OPTS+=("BDB_INCLUDE_PATH=$(db_includedir "${DB_VER}")") - OPTS+=("BDB_LIB_SUFFIX=-${DB_VER}") - - cd src || die - emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" -f makefile.unix "${OPTS[@]}" ${PN} -} - -#Tests are broken with and without our dogecoin-sys_leveldb.patch. -#When tests work, make sure to inherit toolchain-funcs -#src_test() { -# cd src || die -# emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" -f makefile.unix "${OPTS[@]}" test_dogecoin -# ./test_dogecoin || die 'Tests failed' -#} - -src_install() { - dobin src/${PN} - - insinto /etc/dogecoin - doins "${FILESDIR}/dogecoin.conf" - fowners dogecoin:dogecoin /etc/dogecoin/dogecoin.conf - fperms 600 /etc/dogecoin/dogecoin.conf - - newconfd "${FILESDIR}/dogecoin.confd" ${PN} - newinitd "${FILESDIR}/dogecoin.initd" ${PN} - systemd_dounit "${FILESDIR}/dogecoin.service" - - keepdir /var/lib/dogecoin/.dogecoin - fperms 700 /var/lib/dogecoin - fowners dogecoin:dogecoin /var/lib/dogecoin/ - fowners dogecoin:dogecoin /var/lib/dogecoin/.dogecoin - dosym /etc/dogecoin/dogecoin.conf /var/lib/dogecoin/.dogecoin/dogecoin.conf - -# dodoc doc/README.md doc/release-notes.md -# newman contrib/debian/manpages/bitcoind.1 dogecoind.1 -# newman contrib/debian/manpages/bitcoin.conf.5 dogecoin.conf.5 - - if use bash-completion; then - :; -# newbashcomp contrib/bitcoind.bash-completion ${PN}.bash-completion - fi - - if use examples; then - docinto examples -# dodoc -r contrib/{bitrpc,pyminer,spendfrom,tidy_datadir.sh,wallettools} - fi - - if use logrotate; then - insinto /etc/logrotate.d - newins "${FILESDIR}/dogecoind.logrotate" dogecoind - fi -} diff --git a/net-p2p/dogecoind/dogecoind-1.8.0.ebuild b/net-p2p/dogecoind/dogecoind-1.8.0.ebuild index 743c0fb..b1cf14b 100644 --- a/net-p2p/dogecoind/dogecoind-1.8.0.ebuild +++ b/net-p2p/dogecoind/dogecoind-1.8.0.ebuild @@ -44,20 +44,11 @@ pkg_setup() { } src_prepare() { - # bitcoin for some reason doesn't use embedded leveldb - # but we will, because version/bug pinning is a good thing -# rm -r src/leveldb -# sed -e 's/^\(LIBLEVELDB=\).*$/\1-lleveldb/' \ -# -e 's/^\(LIBMEMENV=\).*$/\1-lmemenv/' \ -# -e 's/^\(AM_CONDITIONAL(\[EMBEDDED_LEVELDB\],\[\).*\(\])\)$/\1false\2/' \ -# -i configure.ac - eautoreconf } src_configure() { econf \ - --disable-silent-rules \ $(use_enable wallet) \ $(use_enable test tests) \ --disable-hardening \ diff --git a/net-p2p/dogecoind/files/dogecoin-sys_leveldb.patch b/net-p2p/dogecoind/files/dogecoin-sys_leveldb.patch deleted file mode 100644 index b64fc78..0000000 --- a/net-p2p/dogecoind/files/dogecoin-sys_leveldb.patch +++ /dev/null @@ -1,193 +0,0 @@ -diff -Naur dogecoin-0.8.5.3-rc3.orig/bitcoin-qt.pro dogecoin-0.8.5.3-rc3/bitcoin-qt.pro ---- dogecoin-0.8.5.3-rc3.orig/bitcoin-qt.pro 2013-11-28 21:17:05.000000000 -0500 -+++ dogecoin-0.8.5.3-rc3/bitcoin-qt.pro 2013-11-29 14:53:00.960537685 -0500 -@@ -5,7 +5,7 @@ - INCLUDEPATH += src src/json src/qt - QT += core gui network - greaterThan(QT_MAJOR_VERSION, 4): QT += widgets --DEFINES += QT_GUI BOOST_THREAD_USE_LIB BOOST_SPIRIT_THREADSAFE -+DEFINES += QT_GUI BOOST_THREAD_USE_LIB BOOST_SPIRIT_THREADSAFE LEVELDB_WITHOUT_MEMENV - CONFIG += no_include_pwd - CONFIG += thread - -@@ -101,25 +101,30 @@ - QTPLUGIN += qcncodecs qjpcodecs qtwcodecs qkrcodecs qtaccessiblewidgets - } - -+contains(USE_SYSTEM_LEVELDB, 1) { -+ LIBS += -lleveldb -+} else { - INCLUDEPATH += src/leveldb/include src/leveldb/helpers --LIBS += $$PWD/src/leveldb/libleveldb.a $$PWD/src/leveldb/libmemenv.a -+LIBS += $$PWD/src/leveldb/libleveldb.a - !win32 { - # we use QMAKE_CXXFLAGS_RELEASE even without RELEASE=1 because we use RELEASE to indicate linking preferences not -O preferences -- genleveldb.commands = cd $$PWD/src/leveldb && CC=$$QMAKE_CC CXX=$$QMAKE_CXX $(MAKE) OPT=\"$$QMAKE_CXXFLAGS $$QMAKE_CXXFLAGS_RELEASE\" libleveldb.a libmemenv.a -+ genleveldb.commands = cd $$PWD/src/leveldb && CC=$$QMAKE_CC CXX=$$QMAKE_CXX $(MAKE) OPT=\"$$QMAKE_CXXFLAGS $$QMAKE_CXXFLAGS_RELEASE\" libleveldb.a - } else { - # make an educated guess about what the ranlib command is called - isEmpty(QMAKE_RANLIB) { - QMAKE_RANLIB = $$replace(QMAKE_STRIP, strip, ranlib) - } - LIBS += -lshlwapi -- genleveldb.commands = cd $$PWD/src/leveldb && CC=$$QMAKE_CC CXX=$$QMAKE_CXX TARGET_OS=OS_WINDOWS_CROSSCOMPILE $(MAKE) OPT=\"$$QMAKE_CXXFLAGS $$QMAKE_CXXFLAGS_RELEASE\" libleveldb.a libmemenv.a && $$QMAKE_RANLIB $$PWD/src/leveldb/libleveldb.a && $$QMAKE_RANLIB $$PWD/src/leveldb/libmemenv.a -+ genleveldb.commands = cd $$PWD/src/leveldb && CC=$$QMAKE_CC CXX=$$QMAKE_CXX TARGET_OS=OS_WINDOWS_CROSSCOMPILE $(MAKE) OPT=\"$$QMAKE_CXXFLAGS $$QMAKE_CXXFLAGS_RELEASE\" libleveldb.a && $$QMAKE_RANLIB $$PWD/src/leveldb/libleveldb.a - } - genleveldb.target = $$PWD/src/leveldb/libleveldb.a - genleveldb.depends = FORCE - PRE_TARGETDEPS += $$PWD/src/leveldb/libleveldb.a - QMAKE_EXTRA_TARGETS += genleveldb -+} - # Gross ugly hack that depends on qmake internals, unfortunately there is no other way to do it. --QMAKE_CLEAN += $$PWD/src/leveldb/libleveldb.a; cd $$PWD/src/leveldb ; $(MAKE) clean -+QMAKE_CLEAN += $$PWD/src/leveldb/libleveldb.a; cd $$PWD/src/leveldb && $(MAKE) clean || true -+ - - # regenerate src/build.h - !win32|contains(USE_BUILD_INFO, 1) { -diff -Naur dogecoin-0.8.5.3-rc3.orig/src/leveldb.cpp dogecoin-0.8.5.3-rc3/src/leveldb.cpp ---- dogecoin-0.8.5.3-rc3.orig/src/leveldb.cpp 2013-11-28 21:17:05.000000000 -0500 -+++ dogecoin-0.8.5.3-rc3/src/leveldb.cpp 2013-11-29 14:55:33.760543008 -0500 -@@ -8,7 +8,9 @@ - #include - #include - #include --#include -+#ifndef LEVELDB_WITHOUT_MEMENV -+#include -+#endif - - #include - -@@ -43,8 +45,12 @@ - options = GetOptions(nCacheSize); - options.create_if_missing = true; - if (fMemory) { -+#ifndef LEVELDB_WITHOUT_MEMENV - penv = leveldb::NewMemEnv(leveldb::Env::Default()); - options.env = penv; -+#else -+ throw std::runtime_error("CLevelDB(): compiled without memenv support"); -+#endif - } else { - if (fWipe) { - printf("Wiping LevelDB in %s\n", path.string().c_str()); -diff -Naur dogecoin-0.8.5.3-rc3.orig/src/makefile.unix dogecoin-0.8.5.3-rc3/src/makefile.unix ---- dogecoin-0.8.5.3-rc3.orig/src/makefile.unix 2013-11-28 21:17:05.000000000 -0500 -+++ dogecoin-0.8.5.3-rc3/src/makefile.unix 2013-11-29 15:08:58.337571033 -0500 -@@ -110,8 +110,7 @@ - # adds some defaults in front. Unfortunately, LDFLAGS=... $(LDFLAGS) does not work. - xLDFLAGS=$(LDHARDENING) $(LDFLAGS) - --OBJS= \ -- leveldb/libleveldb.a \ -+BASEOBJS := \ - obj/alert.o \ - obj/version.o \ - obj/checkpoints.o \ -@@ -120,7 +119,6 @@ - obj/crypter.o \ - obj/key.o \ - obj/db.o \ -- obj/init.o \ - obj/keystore.o \ - obj/main.o \ - obj/net.o \ -@@ -141,9 +139,17 @@ - obj/hash.o \ - obj/bloom.o \ - obj/noui.o \ -- obj/leveldb.o \ - obj/txdb.o - -+OBJS := \ -+ obj/leveldb.o \ -+ obj/init.o \ -+ $(BASEOBJS) -+ -+TESTOBJS := \ -+ obj-test/leveldb.o \ -+ $(patsubst test/%.cpp,obj-test/%.o,$(wildcard test/*.cpp)) \ -+ $(BASEOBJS) - - ifdef USE_SSE2 - DEFS += -DUSE_SSE2 -@@ -156,15 +162,25 @@ - test check: test_dogecoin FORCE - ./test_dogecoin - -+ifdef USE_SYSTEM_LEVELDB -+ LIBS += -lleveldb -+ TESTLIBS += -lmemenv -+else - # - # LevelDB support - # - MAKEOVERRIDES = --LIBS += $(CURDIR)/leveldb/libleveldb.a $(CURDIR)/leveldb/libmemenv.a -+LIBS += $(CURDIR)/leveldb/libleveldb.a -+TESTLIBS += $(CURDIR)/leveldb/libmemenv.a - DEFS += $(addprefix -I,$(CURDIR)/leveldb/include) - DEFS += $(addprefix -I,$(CURDIR)/leveldb/helpers) - leveldb/libleveldb.a: -- @echo "Building LevelDB ..." && cd leveldb && $(MAKE) CC=$(CC) CXX=$(CXX) OPT="$(xCXXFLAGS)" libleveldb.a libmemenv.a && cd .. -+ @echo "Building LevelDB ..." && cd leveldb && $(MAKE) CC=$(CC) CXX=$(CXX) OPT="$(xCXXFLAGS)" libleveldb.a && cd .. -+leveldb/libmemenv.a: -+ @echo "Building LevelDB memenv ..." && cd leveldb && $(MAKE) CC=$(CC) CXX=$(CXX) OPT="$(xCXXFLAGS)" libmemenv.a && cd .. -+OBJS += leveldb/libleveldb.a -+TESTOBJS += leveldb/libmemenv.a -+endif - - # auto-generated dependencies: - -include obj/*.P -@@ -175,33 +191,34 @@ - version.cpp: obj/build.h - DEFS += -DHAVE_BUILD_INFO - --obj/%-sse2.o: %-sse2.cpp -- $(CXX) -c $(xCXXFLAGS) -msse2 -MMD -MF $(@:%.o=%.d) -o $@ $< -+P_TO_D = \ - @cp $(@:%.o=%.d) $(@:%.o=%.P); \ -- sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \ -+ sed -e 's/\#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \ - -e '/^$$/ d' -e 's/$$/ :/' < $(@:%.o=%.d) >> $(@:%.o=%.P); \ - rm -f $(@:%.o=%.d) - -+obj/%-sse2.o: %-sse2.cpp -+ $(CXX) -c $(xCXXFLAGS) -msse2 -MMD -MF $(@:%.o=%.d) -o $@ $< -+ $(P_TO_D) -+ - obj/%.o: %.cpp -- $(CXX) -c $(xCXXFLAGS) -MMD -MF $(@:%.o=%.d) -o $@ $< -- @cp $(@:%.o=%.d) $(@:%.o=%.P); \ -- sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \ -- -e '/^$$/ d' -e 's/$$/ :/' < $(@:%.o=%.d) >> $(@:%.o=%.P); \ -- rm -f $(@:%.o=%.d) -+ $(CXX) -c $(xCXXFLAGS) -DLEVELDB_WITHOUT_MEMENV -MMD -MF $(@:%.o=%.d) -o $@ $< -+ $(P_TO_D) - --dogecoind: $(OBJS:obj/%=obj/%) -+dogecoind: $(OBJS) - $(LINK) $(xCXXFLAGS) -o $@ $^ $(xLDFLAGS) $(LIBS) - --TESTOBJS := $(patsubst test/%.cpp,obj-test/%.o,$(wildcard test/*.cpp)) -- - obj-test/%.o: test/%.cpp - $(CXX) -c $(TESTDEFS) $(xCXXFLAGS) -MMD -MF $(@:%.o=%.d) -o $@ $< -- @cp $(@:%.o=%.d) $(@:%.o=%.P); \ -- sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$$//' \ -- -e '/^$$/ d' -e 's/$$/ :/' < $(@:%.o=%.d) >> $(@:%.o=%.P); \ -- rm -f $(@:%.o=%.d) -+ $(P_TO_D) -+ -+obj-test/leveldb.o: leveldb.cpp -+ $(CXX) -c $(TESTDEFS) $(xCXXFLAGS) -MMD -MF $(@:%.o=%.d) -o $@ $< -+ $(P_TO_D) -+ -+TESTOBJS := $(patsubst test/%.cpp,obj-test/%.o,$(wildcard test/*.cpp)) - --test_dogecoin: $(TESTOBJS) $(filter-out obj/init.o,$(OBJS:obj/%=obj/%)) -+test_dogecoin: $(TESTOBJS) - $(LINK) $(xCXXFLAGS) -o $@ $(LIBPATHS) $^ $(TESTLIBS) $(xLDFLAGS) $(LIBS) - - clean: diff --git a/net-p2p/dogecoind/files/dogecoin.confd b/net-p2p/dogecoind/files/dogecoin.confd index 7751418..5ecf71a 100644 --- a/net-p2p/dogecoind/files/dogecoin.confd +++ b/net-p2p/dogecoind/files/dogecoin.confd @@ -3,6 +3,13 @@ # owner of dogecoind process (don't change, must be existing) DOGECOIN_USER="dogecoin" +# homedir of DOGECOIN_USER +DOGECOIN_USERDIR="/var/lib/dogecoin" + +DOGECOIN_DATADIR="${DOGECOIN_USERDIR}/.dogecoin" + +DOGECOIN_CONFFILE="${DOGECOIN_DATADIR}/dogecoin.conf" + # See http://www.bitcoin.org/smf/index.php?topic=1063 DOGECOIN_OPTS="${DOGECOIN_OPTS}" diff --git a/net-p2p/dogecoind/files/dogecoin.initd b/net-p2p/dogecoind/files/dogecoin.initd index c315843..8a715e5 100644 --- a/net-p2p/dogecoind/files/dogecoin.initd +++ b/net-p2p/dogecoind/files/dogecoin.initd @@ -1,14 +1,34 @@ #!/sbin/runscript # Distributed under the terms of the GNU General Public License, v2 or later -VARDIR="/var/lib/dogecoin" -CONFFILE="${VARDIR}/.dogecoin/dogecoin.conf" + +PIDFILE="${DOGECOIN_DATADIR}/dogecoind.pid" + +DOGECOIN_OPTS="-daemon -pid=${DOGECOIN_DATADIR}/dogecoind.pid -datadir=${DOGECOIN_DATADIR} ${DOGECOIN_OPTS}" depend() { need net } checkconfig() { + if [[ "${DOGECOIN_USERDIR}" == "" ]] ; then + eerror "Please edit /etc/conf.d/dogecoind" + eerror "A userdir must be specified." + return 1 + fi + + if [[ "${DOGECOIN_DATADIR}" == "" ]] ; then + eerror "Please edit /etc/conf.d/dogecoind" + eerror "A datadir must be specified." + return 1 + fi + + if [[ "${DOGECOIN_CONFFILE}" == "" ]] ; then + eerror "Please edit /etc/conf.d/dogecoind" + eerror "A conffile must be specified." + return 1 + fi + if [[ "${DOGECOIN_USER}" == "" ]] ; then eerror "Please edit /etc/conf.d/dogecoind" eerror "A user must be specified to run dogecoind as that user." @@ -27,13 +47,13 @@ checkconfig() { return 1 fi fi - if ! grep -q '^rpcpassword=' "${CONFFILE}"; then - eerror "Please edit `readlink -f ${CONFFILE}`" + if ! grep -q '^rpcpassword=' "${DOGECOIN_CONFFILE}"; then + eerror "Please edit `readlink -f ${DOGECOIN_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" + if ! stat -Lc '%a' "${DOGECOIN_CONFFILE}" | grep -q '^[4567]00$'; then + eerror "`readlink -f ${DOGECOIN_CONFFILE}` should not be readable by other users" return 1 fi return 0 @@ -65,10 +85,9 @@ stop() { start_openrc() { start-stop-daemon \ --start --user "${DOGECOIN_USER}" --name dogecoind \ - --pidfile /var/run/dogecoind.pid --make-pidfile \ - --env HOME="${VARDIR}" --exec /usr/bin/dogecoind \ + --pidfile "${PIDFILE}" \ + --env HOME="${DOGECOIN_USERDIR}" --exec /usr/bin/dogecoind \ --nicelevel "${NICELEVEL}" \ - --background \ --wait 2000 \ -- ${DOGECOIN_OPTS} eend $? @@ -76,7 +95,7 @@ start_openrc() { stop_openrc() { start-stop-daemon --stop --user "${DOGECOIN_USER}" \ - --name dogecoind --pidfile /var/run/dogecoind.pid \ + --name dogecoind --pidfile "${PIDFILE}" \ --wait 30000 \ --progress eend $? @@ -85,11 +104,10 @@ stop_openrc() { start_baselayout() { start-stop-daemon \ --start --user "${DOGECOIN_USER}" --name dogecoind \ - --pidfile /var/run/dogecoind.pid --make-pidfile \ + --pidfile "${PIDFILE}" \ --env HOME="${VARDIR}" --exec /usr/bin/dogecoind \ --chuid "${DOGECOIN_USER}" \ --nicelevel "${NICELEVEL}" \ - --background \ -- ${DOGECOIN_OPTS} eend $? } @@ -99,6 +117,6 @@ stop_baselayout() { --stop \ --user "${DOGECOIN_USER}" \ --name dogecoind \ - --pidfile /var/run/dogecoind.pid + --pidfile "${PIDFILE}" eend $? } -- 2.45.2