commit:     a5bb9ec8742c7ad5b3541da1cea7988f97416272
Author:     Victor Skovorodnikov <victor3.14 <AT> yandex <DOT> com>
AuthorDate: Thu Jul  6 17:53:30 2023 +0000
Commit:     Victor Skovorodnikov <victor3.14 <AT> yandex <DOT> com>
CommitDate: Thu Jul  6 17:57:12 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=a5bb9ec8

net-p2p/dogecoin-qt: new package, add 1.14.6

Signed-off-by: Victor Skovorodnikov <victor3.14 <AT> yandex.com>

 net-p2p/dogecoin-qt/Manifest                       |  1 +
 net-p2p/dogecoin-qt/dogecoin-qt-1.14.6.ebuild      | 91 ++++++++++++++++++++++
 net-p2p/dogecoin-qt/files/1.14.6-deque.patch       | 15 ++++
 net-p2p/dogecoin-qt/files/1.14.6-gcc13.patch       | 13 ++++
 .../dogecoin-qt/files/1.14.6-net_processing.patch  | 12 +++
 .../dogecoin-qt/files/1.14.6-paymentserver.patch   | 16 ++++
 .../dogecoin-qt/files/1.14.6-transactiondesc.patch | 24 ++++++
 .../dogecoin-qt/files/dogecoin-qt-prune.desktop    | 13 ++++
 net-p2p/dogecoin-qt/files/dogecoin-qt.desktop      | 13 ++++
 net-p2p/dogecoin-qt/metadata.xml                   | 23 ++++++
 10 files changed, 221 insertions(+)

diff --git a/net-p2p/dogecoin-qt/Manifest b/net-p2p/dogecoin-qt/Manifest
new file mode 100644
index 000000000..8559d11a1
--- /dev/null
+++ b/net-p2p/dogecoin-qt/Manifest
@@ -0,0 +1 @@
+DIST dogecoin-qt-v1.14.6.tar.gz 8162072 BLAKE2B 
e2d1abe7b60cc2f15998834ec1f23570ad3d471d80e9d05b8e5aa64d6e46b7196d7a13d134e6721fe57b6afd34811bd486de02c00b54ee8516313b81ae6821c2
 SHA512 
05f1142a22f36a04e65ef91c834b3e724280e29b930617bb66fac98777bb541ddca15771db4205f0cdc14389f3eb4e94fda550f7806b3e9863d909c063f38610

diff --git a/net-p2p/dogecoin-qt/dogecoin-qt-1.14.6.ebuild 
b/net-p2p/dogecoin-qt/dogecoin-qt-1.14.6.ebuild
new file mode 100644
index 000000000..3ec063f84
--- /dev/null
+++ b/net-p2p/dogecoin-qt/dogecoin-qt-1.14.6.ebuild
@@ -0,0 +1,91 @@
+# Copyright 2023 Gentoo Authors 
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit desktop
+DESCRIPTION="Dogecoin Core Qt 1.14.6 (with Graphical User Interface) with 
ultra-low transaction fees.  Fast and lightweight; the default installation 
keeps downloaded blockchain size below 2.2GB, making it ideal for daily 
transactions, even on systems where disk space could be limited."
+HOMEPAGE="https://github.com/dogecoin";
+SRC_URI="https://github.com/dogecoin/dogecoin/archive/refs/tags/v${PV}.tar.gz 
-> ${PN}-v${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+DB_VER="5.3"
+KEYWORDS="~amd64 ~x86"
+IUSE="tests +wallet +prune zmq"
+DOGEDIR="/opt/${PN}"
+DEPEND="
+       dev-libs/libevent:=
+       dev-libs/protobuf
+       dev-libs/openssl
+       sys-devel/libtool
+       sys-devel/automake:=
+       >=dev-libs/boost-1.81.0-r1
+       wallet? ( sys-libs/db:"${DB_VER}"=[cxx] )
+       dev-qt/qtcore
+       dev-qt/qtgui
+       dev-qt/qtwidgets
+       dev-qt/qtdbus
+       dev-qt/qtnetwork
+       dev-qt/qtprintsupport
+       dev-qt/linguist-tools:=
+       wallet? ( media-gfx/qrencode )
+       zmq? ( net-libs/cppzmq )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+       sys-devel/autoconf
+       sys-devel/automake
+"
+
+       PATCHES=(
+               "${FILESDIR}"/"${PV}"-net_processing.patch
+               "${FILESDIR}"/"${PV}"-paymentserver.patch
+               "${FILESDIR}"/"${PV}"-transactiondesc.patch
+               "${FILESDIR}"/"${PV}"-deque.patch
+               "${FILESDIR}"/"${PV}"-gcc13.patch
+       )
+
+WORKDIR_="${WORKDIR}/dogecoin-${PV}"
+S=${WORKDIR_}
+
+src_configure() {
+       chmod 755 ./autogen.sh
+       ./autogen.sh || die "autogen failed"
+       local my_econf=(
+               --enable-cxx
+               $(use_with wallet incompatible-bdb)
+               --bindir="${DOGEDIR}/bin"
+               BDB_CFLAGS="-I/usr/include/db${DB_VER}"
+               BDB_LIBS="-L/usr/lib64 -ldb_cxx-${DB_VER}"
+               --with-gui=qt5
+               --with-qt-incdir=/usr/include/qt5
+               $(use_enable zmq)
+               $(use_enable wallet)
+               $(use_enable tests tests)
+               --disable-bench
+       )
+       econf "${my_econf[@]}"
+}
+
+src_install() {
+       emake DESTDIR="${D}" install
+       insinto "${DOGEDIR}/bin"
+       insinto /usr/share/pixmaps
+       doins src/qt/res/icons/dogecoin.png
+       dosym "${DOGEDIR}/bin/${PN}" "/usr/bin/${PN}"   
+       
+       if use prune ; then
+               domenu "${FILESDIR}"/"${PN}-prune.desktop"      
+       fi
+       
+       if ! use prune ; then
+               domenu "${FILESDIR}"/"${PN}.desktop"    
+       fi      
+}
+
+pkg_postinst() {
+       xdg_desktop_database_update
+       elog "Dogecoin Core Qt ${PV} has been installed."
+       elog "Dogecoin Core Qt binaries have been placed in ${DOGEDIR}/bin."
+       elog "${PN} has been symlinked with /usr/bin/${PN}."
+}

diff --git a/net-p2p/dogecoin-qt/files/1.14.6-deque.patch 
b/net-p2p/dogecoin-qt/files/1.14.6-deque.patch
new file mode 100644
index 000000000..a25164d43
--- /dev/null
+++ b/net-p2p/dogecoin-qt/files/1.14.6-deque.patch
@@ -0,0 +1,15 @@
+# Please refer to https://github.com/dogecoin/dogecoin/pull/3207/files
+# for information about changes that this patch is applying.
+
+diff --git a/src/test/cuckoocache_tests.cpp b/src/test/cuckoocache_tests.cpp
+index 00446aa..e7c3053 100644
+--- a/src/test/cuckoocache_tests.cpp
++++ b/src/test/cuckoocache_tests.cpp
+@@ -6,6 +6,7 @@
+ #include "test/test_bitcoin.h"
+ #include "random.h"
+ #include <thread>
++#include <deque>
+ #include <boost/thread.hpp>
+ 
+ 

diff --git a/net-p2p/dogecoin-qt/files/1.14.6-gcc13.patch 
b/net-p2p/dogecoin-qt/files/1.14.6-gcc13.patch
new file mode 100644
index 000000000..0e4852815
--- /dev/null
+++ b/net-p2p/dogecoin-qt/files/1.14.6-gcc13.patch
@@ -0,0 +1,13 @@
+# Fixes error when building with gcc13
+diff --git a/src/support/lockedpool.cpp b/src/support/lockedpool.cpp
+index ccebbe8..9d57846 100644
+--- a/src/support/lockedpool.cpp
++++ b/src/support/lockedpool.cpp
+@@ -5,6 +5,7 @@
+ 
+ #include "support/lockedpool.h"
+ #include "support/cleanse.h"
++#include <stdexcept>
+ 
+ #if defined(HAVE_CONFIG_H)
+ #include "config/bitcoin-config.h"

diff --git a/net-p2p/dogecoin-qt/files/1.14.6-net_processing.patch 
b/net-p2p/dogecoin-qt/files/1.14.6-net_processing.patch
new file mode 100644
index 000000000..a166625ee
--- /dev/null
+++ b/net-p2p/dogecoin-qt/files/1.14.6-net_processing.patch
@@ -0,0 +1,12 @@
+diff --git a/src/net_processing.cpp b/src/net_processing.cpp
+index ee3612b..20fe16f 100644
+--- a/src/net_processing.cpp
++++ b/src/net_processing.cpp
+@@ -31,6 +31,7 @@
+ #include "utilstrencodings.h"
+ #include "validationinterface.h"
+ 
++#include <array>
+ #include <boost/thread.hpp>
+ 
+ #if defined(NDEBUG)

diff --git a/net-p2p/dogecoin-qt/files/1.14.6-paymentserver.patch 
b/net-p2p/dogecoin-qt/files/1.14.6-paymentserver.patch
new file mode 100644
index 000000000..92d4b5524
--- /dev/null
+++ b/net-p2p/dogecoin-qt/files/1.14.6-paymentserver.patch
@@ -0,0 +1,16 @@
+# Please refer to https://github.com/dogecoin/dogecoin/pull/3207/files
+# for information about changes that this patch is applying. 
+
+diff --git a/src/qt/paymentserver.cpp b/src/qt/paymentserver.cpp
+index d894745..2278c69 100644
+--- a/src/qt/paymentserver.cpp
++++ b/src/qt/paymentserver.cpp
+@@ -553,7 +553,7 @@ bool PaymentServer::processPaymentRequest(const 
PaymentRequestPlus& request, Sen
+     QList<std::pair<CScript, CAmount> > sendingTos = request.getPayTo();
+     QStringList addresses;
+ 
+-    Q_FOREACH(const PAIRTYPE(CScript, CAmount)& sendingTo, sendingTos) {
++    for (const PAIRTYPE(CScript, CAmount)& sendingTo : sendingTos) {
+         // Extract and check destination addresses
+         CTxDestination dest;
+         if (ExtractDestination(sendingTo.first, dest)) {

diff --git a/net-p2p/dogecoin-qt/files/1.14.6-transactiondesc.patch 
b/net-p2p/dogecoin-qt/files/1.14.6-transactiondesc.patch
new file mode 100644
index 000000000..b32d0e5cd
--- /dev/null
+++ b/net-p2p/dogecoin-qt/files/1.14.6-transactiondesc.patch
@@ -0,0 +1,24 @@
+# Please refer to https://github.com/dogecoin/dogecoin/pull/3207/files
+# for information about changes that this patch is applying.
+
+diff --git a/src/qt/transactiondesc.cpp b/src/qt/transactiondesc.cpp
+index 00b83e8..b8cc486 100644
+--- a/src/qt/transactiondesc.cpp
++++ b/src/qt/transactiondesc.cpp
+@@ -237,14 +237,14 @@ QString TransactionDesc::toHTML(CWallet *wallet, 
CWalletTx &wtx, TransactionReco
+     strHTML += "<b>" + tr("Output index") + ":</b> " + 
QString::number(rec->getOutputIndex()) + "<br>";
+ 
+     // Message from normal bitcoin:URI (bitcoin:123...?message=example)
+-    Q_FOREACH (const PAIRTYPE(std::string, std::string)& r, wtx.vOrderForm)
++    for (const PAIRTYPE(std::string, std::string)& r : wtx.vOrderForm) 
+         if (r.first == "Message")
+             strHTML += "<br><b>" + tr("Message") + ":</b><br>" + 
GUIUtil::HtmlEscape(r.second, true) + "<br>";
+ 
+     //
+     // PaymentRequest info:
+     //
+-    Q_FOREACH (const PAIRTYPE(std::string, std::string)& r, wtx.vOrderForm)
++    for (const PAIRTYPE(std::string, std::string)& r : wtx.vOrderForm) 
+     {
+         if (r.first == "PaymentRequest")
+         {

diff --git a/net-p2p/dogecoin-qt/files/dogecoin-qt-prune.desktop 
b/net-p2p/dogecoin-qt/files/dogecoin-qt-prune.desktop
new file mode 100644
index 000000000..b9a902da4
--- /dev/null
+++ b/net-p2p/dogecoin-qt/files/dogecoin-qt-prune.desktop
@@ -0,0 +1,13 @@
+[Desktop Entry]
+Name=Dogecoin Core
+Comment=Connect to the Dogecoin P2P Network
+Comment[de]=Verbinde mit dem Dogecoin peer-to-peer Netzwerk
+Comment[fr]=Dogecoin, monnaie virtuelle cryptographique pair à pair
+Comment[ru]=Подключиться к Dogecoin пиринговой сети
+Comment[tr]=Dogecoin, eşten eşe kriptografik sanal para birimi
+Terminal=false
+Exec=dogecoin-qt --prune=2201 %u
+Type=Application
+Icon=dogecoin
+MimeType=x-scheme-handler/dogecoin;
+Categories=Office;

diff --git a/net-p2p/dogecoin-qt/files/dogecoin-qt.desktop 
b/net-p2p/dogecoin-qt/files/dogecoin-qt.desktop
new file mode 100644
index 000000000..197f782a0
--- /dev/null
+++ b/net-p2p/dogecoin-qt/files/dogecoin-qt.desktop
@@ -0,0 +1,13 @@
+[Desktop Entry]
+Name=Dogecoin Core
+Comment=Connect to the Dogecoin P2P Network
+Comment[de]=Verbinde mit dem Dogecoin peer-to-peer Netzwerk
+Comment[fr]=Dogecoin, monnaie virtuelle cryptographique pair à pair
+Comment[ru]=Подключиться к Dogecoin пиринговой сети
+Comment[tr]=Dogecoin, eşten eşe kriptografik sanal para birimi
+Terminal=false
+Exec=dogecoin-qt %u
+Type=Application
+Icon=dogecoin
+MimeType=x-scheme-handler/dogecoin;
+Categories=Office;

diff --git a/net-p2p/dogecoin-qt/metadata.xml b/net-p2p/dogecoin-qt/metadata.xml
new file mode 100644
index 000000000..c4c49cdcc
--- /dev/null
+++ b/net-p2p/dogecoin-qt/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <upstream>
+               <bugs-to>https://github.com/dogecoin/dogecoin/issues</bugs-to>
+               
<changelog>https://github.com/dogecoin/dogecoin/tree/master/doc/release-notes</changelog>
+               <doc>https://github.com/dogecoin/dogecoin/tree/master/doc</doc>
+               <remote-id type="github">dogecoin/dogecoin</remote-id>
+       </upstream>
+       <maintainer type="person" proxied="yes">
+               <email>[email protected]</email>
+               <name>Victor Skovorodnikov</name>
+       </maintainer>
+       <use>
+               <flag name="prune">Enables automatic pruning of old blocks to 
stay below 2.2GB target size (if ran from desktop)</flag>
+               <flag name="tests">Build Dogecoin Core Qt with tests 
option</flag>
+               <flag name="wallet">Build Dogecoin Core Qt with wallet 
support</flag>
+               <flag name="zmq">Enables ZeroMQ notifications</flag>
+       </use>
+       <longdescription lang="en">
+               Dogecoin Core Qt for desktop environment.  Fun-loving 
cryptocurrency with ultra-low transaction fees featuring Graphical User 
Interface with statistical analysis, console interaction and wallet support.  
Fast and lightweight; the default installation keeps downloaded blockchain size 
below 2.2GB, making it ideal for daily transactions even on systems where disk 
space could be limited.
+       </longdescription>
+</pkgmetadata>

Reply via email to