summaryrefslogtreecommitdiff
path: root/net-p2p
diff options
context:
space:
mode:
Diffstat (limited to 'net-p2p')
-rw-r--r--net-p2p/Manifest.gzbin7578 -> 7585 bytes
-rw-r--r--net-p2p/airdcpp-webclient/Manifest2
-rw-r--r--net-p2p/airdcpp-webclient/airdcpp-webclient-2.11.0-r1.ebuild2
-rw-r--r--net-p2p/gtk-gnutella/Manifest2
-rw-r--r--net-p2p/gtk-gnutella/files/gtk-gnutella-1.2.1-glibc234.patch53
-rw-r--r--net-p2p/gtk-gnutella/gtk-gnutella-1.2.1-r1.ebuild91
-rw-r--r--net-p2p/ktorrent/Manifest2
-rw-r--r--net-p2p/ktorrent/ktorrent-21.04.3.ebuild2
-rw-r--r--net-p2p/retroshare/Manifest6
-rw-r--r--net-p2p/retroshare/files/retroshare-0.6.6-fix-cxx17-compilation.patch58
-rw-r--r--net-p2p/retroshare/metadata.xml11
-rw-r--r--net-p2p/retroshare/retroshare-0.6.5-r3.ebuild142
-rw-r--r--net-p2p/retroshare/retroshare-0.6.6.ebuild122
13 files changed, 484 insertions, 9 deletions
diff --git a/net-p2p/Manifest.gz b/net-p2p/Manifest.gz
index 76494f40a29f..86cdfc9d400e 100644
--- a/net-p2p/Manifest.gz
+++ b/net-p2p/Manifest.gz
Binary files differ
diff --git a/net-p2p/airdcpp-webclient/Manifest b/net-p2p/airdcpp-webclient/Manifest
index 920801ff03f9..b29fcd32a74b 100644
--- a/net-p2p/airdcpp-webclient/Manifest
+++ b/net-p2p/airdcpp-webclient/Manifest
@@ -3,6 +3,6 @@ AUX airdcppd.initd 584 BLAKE2B 6e19d6088b26153527fa51e3789c3968647af3f7a2b1fbe2b
AUX airdcppd.service 302 BLAKE2B 5e446eb4253c71648e8e6850da4d71e6f16bdb6d82b611882ba4b1ff755073ff611a5502f5f9dbfc94020610ccef9a022add2f85721d464cba94907320618e66 SHA512 79aa352d7943e5297835ec226142661f084a39bd8ccaebace8d4356db995e2eff7c77a9f04ee636bd50e61103bc5a30e83fa126ffa8d77ec068053da2c1b9508
DIST airdcpp-webclient-2.11.0.tar.gz 967326 BLAKE2B 47d257e47c332b4fd5351a680f0585360cb7329cd1bcf3c478d0a7847adbee68c024af7136eeb3b551188d3af7c4a6db2257eefaca7f82ee4670667a4a6e3e63 SHA512 926457e76b6bd29e0124c519b67d9e0f3cee48192c1b56e073b84d65f0171d53a7a4dbaf55e100f0685e01116935f4e4e2c193dab0ef0bed08d8101e12c33b82
DIST airdcpp-webclient-2.11.1.tar.gz 967966 BLAKE2B d95760f3ae945255a396f20504995a2ea8843071ab19574a6faac919fb411a0a4e44ebcb005afce0056d960729d6b8bdd9df4ca457cea91931eedb1d329c7a12 SHA512 03f6ce82467f824d1b4e10075bf9e28b45282fb977b3feb67fc948044ed592672a83182d4716d0c10591c0b7568417997b335e25827d8e78fbd3735605cd052e
-EBUILD airdcpp-webclient-2.11.0-r1.ebuild 1375 BLAKE2B 8b89e42b19e9f5d0f21fa79f401860b4679bb9b270b80d6383bc6c6335b947405369a322eb2ccae9f9ded17b87aad77f1115e5e67fcd2656c5bc05b6e2e9b46d SHA512 d4bd48a915a917c6b82360cc30a26a247c8ec0c56e9833821fdea6bcb36277ccd2e3a4721659501023eedb38a28e71b0f396dad8bdb7fb83cbff1f9ea0103192
+EBUILD airdcpp-webclient-2.11.0-r1.ebuild 1373 BLAKE2B c6bebaf300f527c18f91c6139c9856597186f24b3fe5de48816768fff0698534bf41d3fe7331593e5c4156f57189f7d301d02a5c54d7e8d32ff411bb2163bb3c SHA512 faf36f8eeb9dfe6a4a33855996382bcae0186e7e29920aa075b1b59815daed4fbaea530dfbc5e63ee407c9bc0cfb4a1bf13e48f71a9d090fcb2338d25a0b9398
EBUILD airdcpp-webclient-2.11.1.ebuild 1376 BLAKE2B 47d2187db6f8f01de207a8337f4886b56ef0741ea120cf5d49b109ff1d5f55ef3269e9bbfb28e85afcf97ebbf8e102ef07d90384b31ef8ba755c8d68084c9437 SHA512 68a72d07ffc123c6514333d8bd45421923bb7e2d5f47c162edcef0c01457c3138995591e723dbb51ab84b8738df92c8c1e18014b849fe02c59f8d36ac2a7f5ad
MISC metadata.xml 804 BLAKE2B 4d7003fed4a4fcf24fcf30ecf7d5e2c8970f4c76e6b37444721d09da8413a1d1aeb3a2d4c22174f02bfb7fff7b38e35f23c85a9070625a3eaf63bf0f68fc20e7 SHA512 1408ae27ba8cce6f6f6d53a5fade6d4bf2ce0587cd0b829c3426d88257e83dcd6c69ba5e3cb143d7ac7a31ad7a59e7324a6faf489162f88b62932b4bf8129268
diff --git a/net-p2p/airdcpp-webclient/airdcpp-webclient-2.11.0-r1.ebuild b/net-p2p/airdcpp-webclient/airdcpp-webclient-2.11.0-r1.ebuild
index b70ff5e20049..9771504e496c 100644
--- a/net-p2p/airdcpp-webclient/airdcpp-webclient-2.11.0-r1.ebuild
+++ b/net-p2p/airdcpp-webclient/airdcpp-webclient-2.11.0-r1.ebuild
@@ -11,7 +11,7 @@ DESCRIPTION="Cross-platform Direct Connect client"
HOMEPAGE="https://airdcpp-web.github.io/"
SRC_URI="https://github.com/airdcpp-web/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
LICENSE="GPL-2+"
SLOT="0"
IUSE="debug nat-pmp +tbb +webui"
diff --git a/net-p2p/gtk-gnutella/Manifest b/net-p2p/gtk-gnutella/Manifest
index 4e6ed0f6de68..b9ed1a315abe 100644
--- a/net-p2p/gtk-gnutella/Manifest
+++ b/net-p2p/gtk-gnutella/Manifest
@@ -1,3 +1,5 @@
+AUX gtk-gnutella-1.2.1-glibc234.patch 1881 BLAKE2B 4f4ce21452694eefcbf2c9e70d4ae1b3279a5c94c194bdef56bc4078d38302ba2901f2c23b8c877d4f3af75dcfad4c8cecf7321f362d841133bca991557d7ffd SHA512 9c328f8d17a1bbda4dcef95e2068823826ed09cd7d17268ab91294eecf10ba2dfd09c0f9bcdce32aa80f3c17c09e4ead1f9c632010155d95b2ed37a513ef656e
DIST gtk-gnutella-1.2.1.tar.gz 25055800 BLAKE2B 09f68979bc4df130e2b7b4a78017c2834feab1173d6242fe07856be038b9c671609fee7a7ec270fd6f9592a2fb2bfa0bf8a08472da0f41f6e3dc2dfaafd5ed58 SHA512 e53c8e0f7d11f699e9eb77546f3d6ca240ee9fa92e8817af4631250d86714b97eb36fbcd83e46d8429cbd12532c9c9a343a2ba69eba6deda4bc9c5610e98efc8
+EBUILD gtk-gnutella-1.2.1-r1.ebuild 2006 BLAKE2B 271740922e56bdce412839647fba43ba9b78c22b5e9c444a45fb7761b43797dbc9255ca95c625a1e5975747b13340f812cec3c9884cdde538afb0e4b24c13068 SHA512 ffdb77c2eb2ce03d6e3f1433f57a4f7be922f4b227dd952b4635ead494b0fa82537907e6ba33aa36428d5792ad12def4d62bc659c76f0aa69aa52b762968985b
EBUILD gtk-gnutella-1.2.1.ebuild 1955 BLAKE2B 8909b8ddab6c94525ea72f5d7dd0514dfd6a8f2be7305594dc001c1a65fc56be119ba4351fa71331ff1d1de04ade63e0e6fe66304146aa6518a3a0069db99752 SHA512 772f019794f4abdfcb1721f7a97b6e2ac3272cd182790752218ee3bfb6ead7395b6ca57f67d542f09af0cee18b5788a7308ff7f31e2687710cf1b4ba74da1d1d
MISC metadata.xml 299 BLAKE2B 8e823e2ff9ff16738e4f1d5a5e04264557ee9529ce035978e59a8d1371a8dba5485bde5095e05346ddca410d197e7fbb62f8b651bbe8cd0815396fdeda7935ed SHA512 ab18fa3318fdd64a0e4bff392a88d9f58b1c611c71ee090a767a4a25f75f273dc60a7cfeb7e386e5fbed548d982788c16654584938aec8ef5f6b11cd6d5b3c61
diff --git a/net-p2p/gtk-gnutella/files/gtk-gnutella-1.2.1-glibc234.patch b/net-p2p/gtk-gnutella/files/gtk-gnutella-1.2.1-glibc234.patch
new file mode 100644
index 000000000000..8d985b966701
--- /dev/null
+++ b/net-p2p/gtk-gnutella/files/gtk-gnutella-1.2.1-glibc234.patch
@@ -0,0 +1,53 @@
+From 31d06cecac572852c6e5e8d85cea641883cbe4c6 Mon Sep 17 00:00:00 2001
+From: Raphael Manfredi <ram@entique.fr>
+Date: Mon, 9 Aug 2021 09:36:00 +0200
+Subject: [PATCH] Fix compilation with newest glibc.
+
+The PTHREAD_STACK_MIN value is no longer a constant but rather
+defined as sysconf(_SC_THREAD_STACK_MIN).
+
+Therefore, we must avoid using cpp computations on that value.
+---
+ src/lib/thread.c | 7 +------
+ src/lib/thread.h | 2 +-
+ 2 files changed, 2 insertions(+), 7 deletions(-)
+
+diff --git a/src/lib/thread.c b/src/lib/thread.c
+index 178c09794..e7a702029 100644
+--- a/src/lib/thread.c
++++ b/src/lib/thread.c
+@@ -9705,7 +9705,7 @@ thread_launch_trampoline(void *arg)
+ * In case PTHREAD_STACK_MIN is not defined by <pthread.h>.
+ */
+ #ifndef PTHREAD_STACK_MIN
+-#define PTHREAD_STACK_MIN 0
++#define PTHREAD_STACK_MIN 1024U
+ #endif
+
+ /**
+@@ -9737,12 +9737,7 @@ thread_launch(struct thread_element *te,
+ pthread_attr_init(&attr);
+
+ if (stack != 0) {
+- /* Avoid compiler warning when PTHREAD_STACK_MIN == 0 */
+-#if PTHREAD_STACK_MIN != 0
+ stacksize = MAX(PTHREAD_STACK_MIN, stack);
+-#else
+- stacksize = stack;
+-#endif
+ stacksize = MAX(stacksize, THREAD_STACK_MIN);
+ } else {
+ stacksize = MAX(THREAD_STACK_DFLT, PTHREAD_STACK_MIN);
+diff --git a/src/lib/thread.h b/src/lib/thread.h
+index 73e15fa36..740f3a6f9 100644
+--- a/src/lib/thread.h
++++ b/src/lib/thread.h
+@@ -63,7 +63,7 @@ typedef size_t thread_qid_t; /* Quasi Thread ID */
+ typedef unsigned int thread_key_t; /* Local thread storage key */
+
+ #define THREAD_MAX 64 /**< Max amount of threads we can track */
+-#define THREAD_STACK_DFLT (65536 * PTRSIZE) /**< Default stack requested */
++#define THREAD_STACK_DFLT (65536U * PTRSIZE) /**< Default stack requested */
+ #define THREAD_LOCAL_MAX 1024 /**< Max amount of thread-local keys */
+
+ #define THREAD_SUSPEND_TIMEOUT 90 /**< secs: thread max suspension time */
diff --git a/net-p2p/gtk-gnutella/gtk-gnutella-1.2.1-r1.ebuild b/net-p2p/gtk-gnutella/gtk-gnutella-1.2.1-r1.ebuild
new file mode 100644
index 000000000000..46f39f6e3695
--- /dev/null
+++ b/net-p2p/gtk-gnutella/gtk-gnutella-1.2.1-r1.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic strip-linguas toolchain-funcs
+
+IUSE="nls dbus ssl +gtk"
+
+DESCRIPTION="A GTK+ Gnutella client"
+SRC_URI="https://github.com/gtk-gnutella/gtk-gnutella/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="http://gtk-gnutella.sourceforge.net/"
+
+SLOT="0"
+LICENSE="CC-BY-SA-4.0 GPL-2"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+RDEPEND="
+ sys-libs/binutils-libs:=
+ dev-libs/glib:2
+ sys-libs/zlib
+ gtk? ( >=x11-libs/gtk+-2.2.1:2 )
+ dbus? ( >=sys-apps/dbus-0.35.2 )
+ ssl? ( >=net-libs/gnutls-2.2.5 )
+ nls? ( >=sys-devel/gettext-0.11.5 )"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}/${P}-glibc234.patch" )
+
+src_prepare() {
+ filter-flags -flto
+ strip-linguas -i po
+
+ echo "# Gentoo-selected LINGUAS" > po/LINGUAS
+ for ling in ${LINGUAS}; do
+ echo $ling >> po/LINGUAS
+ done
+
+ default
+}
+
+src_configure() {
+ # There is no option to turn off optimization through the build.sh
+ # script.
+ sed -i -e "s/Configure -Oder/Configure -Oder -Doptimize=none/" build.sh || die
+
+ # The build script does not support the equivalent --enable
+ # options so we must construct the configuration by hand.
+
+ local myconf
+
+ if ! use nls; then
+ myconf="${myconf} --disable-nls"
+ fi
+
+ if ! use dbus; then
+ myconf="${myconf} --disable-dbus"
+ fi
+
+ if ! use ssl; then
+ myconf="${myconf} --disable-gnutls"
+ fi
+
+ if use gtk; then
+ myconf="${myconf} --gtk2"
+ else
+ myconf="${myconf} --topless"
+ fi
+
+ ./build.sh \
+ --configure-only \
+ --prefix="/usr" \
+ --cc=$(tc-getCC) \
+ ${myconf}
+}
+
+src_compile() {
+ # Build system is not parallel-safe, bug 500760
+ emake -j1
+}
+
+src_install() {
+ dodir /usr/bin
+ emake INSTALL_PREFIX="${D}" install
+ dodoc AUTHORS ChangeLog README TODO
+
+ # Touch the symbols file into the future to avoid warnings from
+ # gtk-gnutella later on, since we will most likely strip the binary.
+ touch --date="next minute" "${D}/usr/lib/gtk-gnutella/gtk-gnutella.nm" || die
+}
diff --git a/net-p2p/ktorrent/Manifest b/net-p2p/ktorrent/Manifest
index 7de913676e3d..17821468b5cb 100644
--- a/net-p2p/ktorrent/Manifest
+++ b/net-p2p/ktorrent/Manifest
@@ -2,5 +2,5 @@ AUX ktorrent-21.04.3-fix-tests.patch 1093 BLAKE2B aabbbca3fcf6cdd8d8b9d5c4973235
DIST ktorrent-20.12.3.tar.xz 2141556 BLAKE2B 8c1bfd675597a724ae6143bddb88005da0ec852a93ef3cc843605b4a3a47d80acba23df2a2cc13ff49efa9e4576269f3157e8456c80388b7e309527befbf0297 SHA512 fb54341368b3260ceefdb9be8bbc62c74397ada1a824a96f9de316caa365be438adc96ed15ee0bc44b7cc0db8eb1082c9ffb49eacb9448c31e8fbfe6e6314e93
DIST ktorrent-21.04.3.tar.xz 2091116 BLAKE2B bd03c3730a5082c17c58d6453d035fa785b5ee6e0f253d5cd37adb5e43508315deedbdd423a2e453a116a8ab9dedfe78cef063fd11262579d910b1a0f5a36e05 SHA512 70e8baf2d04fe86be09fd4583ba20375ccbec67e5e8b7a8aac252bbe04469ccfb36c55fc5088497f8575f3bef59cff40f48f648d73071e06f676b45504aa935e
EBUILD ktorrent-20.12.3.ebuild 3088 BLAKE2B f7285f9e6d0071698ec7af6c329a4537e4766aa073265af0c08c50921cd853c4e7db6c8f256102c2292c982c4aadee50b7872a49e6cfbbf621b33bcd4715835f SHA512 736a156c76972306a0e08d376fee53dde944a9434890eca28f8e70535d6a041f7518b20ebc2439e7d612726dc25ad45f506a1c2ba88eee4972947415295d865e
-EBUILD ktorrent-21.04.3.ebuild 3126 BLAKE2B 267d8ab24fe076f6f3a93413d12a260812ecfc1755297e444ded9200b65b3801a2c29ce9e84a84b47cdd6cf3113891ce6236deac7bfd5213d7c79c5edb597bf1 SHA512 5868ca0090c8a02404a377323379e0e4ca6d68d0bdddb2e870969f664b829da4fbc46e83eec7eafc5a27c48c9e0d73008a7b9b2573c261f21fb7214ced0c9cff
+EBUILD ktorrent-21.04.3.ebuild 3125 BLAKE2B 229f27055539af4f7d00649371ecc307763627714c760f2e55151b02fd40202d72a742528f6dc18e8c6c8538d92451da8732c7c952857831ba4028bbfc3f9cd7 SHA512 ccb2aa1b02d3277dcc8948418383b838cb2bd8b658474c9a02503967612773b6400b5a94d1a5af59de5aac113c90815196650bb57a22fe22391d5166da4b2149
MISC metadata.xml 1389 BLAKE2B b928cdf2526433fcf48c5600049b27c9f7c12aa043a332931b5a567d1baff9fa0bb0ac6e4e8de056947637d1253ee338a8b6620e52b294b20cdd7127a3b1c81d SHA512 4cf5204afc5a9f451752efcf1bae64a947c3bbb0d259641a85771071a7c390ee50818518a15c38f47f7778cdb3ff10732428dfff3c99a09049ca8c2486736991
diff --git a/net-p2p/ktorrent/ktorrent-21.04.3.ebuild b/net-p2p/ktorrent/ktorrent-21.04.3.ebuild
index a98fb3e20e7d..36bd73349633 100644
--- a/net-p2p/ktorrent/ktorrent-21.04.3.ebuild
+++ b/net-p2p/ktorrent/ktorrent-21.04.3.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="https://apps.kde.org/ktorrent/"
LICENSE="GPL-2"
SLOT="5"
-KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+KEYWORDS="amd64 arm64 ~ppc64 x86"
IUSE="+bwscheduler +downloadorder +infowidget +ipfilter +kross +logviewer +magnetgenerator
+mediaplayer rss +scanfolder +shutdown +stats +upnp +webengine +zeroconf"
diff --git a/net-p2p/retroshare/Manifest b/net-p2p/retroshare/Manifest
index 924f5f4dc743..ea87cc248875 100644
--- a/net-p2p/retroshare/Manifest
+++ b/net-p2p/retroshare/Manifest
@@ -1,4 +1,8 @@
AUX retroshare-0.6.5-qt-5.15.patch 2927 BLAKE2B a6e24b46af2df2592b482492b3c53049c4d089f8e4c4f6dd1d3a262945284353b1fde488c141bbae335851108887d2bda6c2e37aa91410885b1448dcfb300e4b SHA512 1b5c2debf192b9801a95d6640c079c7c3d2535cd59ca10f712e8123b1b35781cb7c0ef3fc2ff876c5582bbdb1b1c8efe7ffc666f4cfa365c1c429dd67a83ea37
+AUX retroshare-0.6.6-fix-cxx17-compilation.patch 1753 BLAKE2B aeba3e200eaf78867220227b766d2e396322d93e14afa885ba8ac5d8d5c88b9806a1fc90a00b2e7a364cdfcfa04776da9974293a394fc4d946ca30716daf931c SHA512 09f146aaaa9570eb4b01a9b325acbf6648d88ddde222128f709ecc89038ce5d8c9fba046abdf36547b4ee7e653bf058a3a51f775a78e71b760e0e513d43005e6
DIST retroshare-0.6.5.tar.gz 29377995 BLAKE2B 3a8909227080702e42e59b42301e873d4ece806e014a959080a3ae9df7d11564a6e6d915087a9ddd6d5c66d1e5c43895fa24dea8c0042fdce391c384a54182ee SHA512 a65fefb6baff42a81880a401c9005f73ac8180a247dd992a350f9bf5bac366ee6e809bf93cbbc31e80646156147a1d434306dadfbed1f69879ab61cfae3fddeb
+DIST retroshare-0.6.6.tar.gz 24140207 BLAKE2B 1328f2d36f6bc2d1123dd915698f2778e771e36089d8fd8d9ec44d1a8bfa0f56c625b73f62811936e4cee5dd1eca797f9fdf16fdb8defd66706294abc4dde419 SHA512 23ed7c633426caa910a5ae6f04cfd33c523ecaedae1e4044981706420622aadd67ba2772ffd17c9cc1c6193fad508837a31fdcfabe2aab309b8b4302335ede4d
EBUILD retroshare-0.6.5-r2.ebuild 4114 BLAKE2B dbc08ddaf55fe725e61f03f85458d334b73e5d641a050d418b63b1b5368d6447b4cd3a6ca45f75a7d8cdffd089814adc62e24243507d72a9438ff2afff1f9784 SHA512 4dfb1b8cb8e941a593e806136823602974b1f9fd8a3fdfd4541ed4253404d9a679fb7f75bba5072e0f8302d75d57de5d3240d98145eaae59b026c04eec4b8e39
-MISC metadata.xml 1614 BLAKE2B dffe5895cc85e6c661b8ca6d2bddc3582caaf8e3c943098d2a64d5164850796d5ab7c33399fba8ae418b8665bf201d20821c3fd7c334d1033cab6ce1f16c237f SHA512 c1300b57b3a11349a434a5d32775e52390da7039aa319d45fa89f811fb3ffe74d3a5bbcbf397cdaa69c346398ff37eb62e3d949c3d66bf34984c2526d66e486d
+EBUILD retroshare-0.6.5-r3.ebuild 3734 BLAKE2B f085af9005a35f126d45ad579cff0b907301ee6d3ed1280e4668c51a0db170e681cd2cc246d0306842c01e19dc1548407f38a4139c48498a28262bbabbb365df SHA512 cc3d8766f874e35365995ed5758d2711db05590ee76cf65f6ce2807ad4de611e45adec9c9fa486e60d55974fb3691c66f24b4889abcf0b059256968f5a3b39ad
+EBUILD retroshare-0.6.6.ebuild 3481 BLAKE2B 4888c2ac8c7733dba086f0616d3a6e6421daeeadf2ed30c16043dc88a06fbb66e2812740c0ff3ddaa2f376858d2cef81580b6ea14245d4cafeb83d5a61ebd42e SHA512 50d1083dbd9fcd0e2333193473903b828e7b04341da6655bcefc8b249ab591f016731de2ef0ac61aa5e95b13532017d62505df2931ba31453a43657f8e9d05ad
+MISC metadata.xml 1935 BLAKE2B 40f36d3a73ed7bfc919911bd67a4e342df9d7d83af0aee0bded6e881b91f7a99b8caefab1b0def6b9b92ee3c30cd9b142b044555c9e2ddf44e3dc8682f2fc5eb SHA512 99c7fb455b26a36349983e0f1f8cc35fc64960b4b7208f16a47e951b2c732b668e7a2edc76f97bb5c4b7eb6150efc94c781d897f25ac6dc983ba54af507c8a02
diff --git a/net-p2p/retroshare/files/retroshare-0.6.6-fix-cxx17-compilation.patch b/net-p2p/retroshare/files/retroshare-0.6.6-fix-cxx17-compilation.patch
new file mode 100644
index 000000000000..73c5e1d18cc8
--- /dev/null
+++ b/net-p2p/retroshare/files/retroshare-0.6.6-fix-cxx17-compilation.patch
@@ -0,0 +1,58 @@
+https://github.com/RetroShare/RetroShare/commit/8bed99cc9f3763269b6b1aada45a43c9993d7b80
+From: Gioacchino Mazzurco <gio@eigenlab.org>
+Date: Fri, 6 Aug 2021 12:15:34 +0200
+Subject: [PATCH] Fix compilation with C++17
+--- a/libretroshare/src/util/rsdir.cc
++++ b/libretroshare/src/util/rsdir.cc
+@@ -64,6 +64,26 @@
+ * #define RSDIR_DEBUG 1
+ ****/
+
++#if __cplusplus < 201703L
++bool std::filesystem::create_directories(const std::string& path)
++{
++ for( std::string::size_type lastIndex = 0; lastIndex < std::string::npos;
++ lastIndex = path.find('/', lastIndex) )
++ {
++ std::string&& curDir = path.substr(0, ++lastIndex);
++ if(!RsDirUtil::checkCreateDirectory(curDir))
++ {
++ RsErr() << __PRETTY_FUNCTION__ << " failure creating: " << curDir
++ << " of: " << path << std::endl;
++ return false;
++ }
++ }
++ return true;
++}
++#else
++# include <filesystem>
++#endif // __cplusplus < 201703L
++
+ std::string RsDirUtil::getTopDir(const std::string& dir)
+ {
+ std::string top;
+@@ -528,24 +548,6 @@ bool RsDirUtil::checkCreateDirectory(const std::string& dir)
+ return true;
+ }
+
+-#if __cplusplus < 201703L
+-bool std::filesystem::create_directories(const std::string& path)
+-{
+- for( std::string::size_type lastIndex = 0; lastIndex < std::string::npos;
+- lastIndex = path.find('/', lastIndex) )
+- {
+- std::string&& curDir = path.substr(0, ++lastIndex);
+- if(!RsDirUtil::checkCreateDirectory(curDir))
+- {
+- RsErr() << __PRETTY_FUNCTION__ << " failure creating: " << curDir
+- << " of: " << path << std::endl;
+- return false;
+- }
+- }
+- return true;
+-}
+-#endif // __cplusplus < 201703L
+-
+ std::string RsDirUtil::removeSymLinks(const std::string& path)
+ {
+ #if defined(WINDOWS_SYS) || defined(__APPLE__) || defined(__ANDROID__)
diff --git a/net-p2p/retroshare/metadata.xml b/net-p2p/retroshare/metadata.xml
index a2e56631bdb1..1d61cb0cbd88 100644
--- a/net-p2p/retroshare/metadata.xml
+++ b/net-p2p/retroshare/metadata.xml
@@ -18,14 +18,17 @@
RetroShare provides filesharing, chat, mails, forums and channels.
</longdescription>
<use>
- <flag name="cli">Enables the CLI version of RetroShare</flag>
+ <flag name="autologin">Enables potentially insecure autologin capability via <pkg>app-crypt/libsecret</pkg></flag>
+ <flag name="cli">Enables terminal login support for retroshare-service</flag>
<flag name="control-socket">Enables API via Unix socket support</flag>
- <flag name="gnome-keyring">Enables potentially insecure autologin capability via Gnome Keyring</flag>
+ <flag name="gnome-keyring">Enables potentially insecure autologin capability via <pkg>gnome-base/gnome-keyring</pkg></flag>
<flag name="jsonapi">Enables the new RetroShare JSON API</flag>
- <flag name="service">Enables the new RetroShare service controllable only through JSON API</flag>
+ <flag name="libupnp">Enables UPnP port forwarding via <pkg>net-libs/libupnp</pkg></flag>
+ <flag name="miniupnp">Enables UPnP port forwarding via <pkg>net-libs/miniupnpc</pkg></flag>
+ <flag name="service">Enables the new RetroShare service</flag>
<flag name="sqlcipher">Enables GXS database encryption via SQLCipher</flag>
<flag name="webui">Enables Web interface and API support</flag>
- <flag name="xapian">Enables GXS content indexing and search through Xapian</flag>
+ <flag name="xapian">Enables GXS content indexing and search via <pkg>dev-libs/xapian</pkg></flag>
</use>
<upstream>
<bugs-to>https://github.com/RetroShare/RetroShare/issues</bugs-to>
diff --git a/net-p2p/retroshare/retroshare-0.6.5-r3.ebuild b/net-p2p/retroshare/retroshare-0.6.5-r3.ebuild
new file mode 100644
index 000000000000..4a653396a8f0
--- /dev/null
+++ b/net-p2p/retroshare/retroshare-0.6.5-r3.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit desktop edos2unix qmake-utils xdg-utils
+
+DESCRIPTION="P2P private sharing application"
+HOMEPAGE="https://retroshare.cc"
+SRC_URI="https://github.com/RetroShare/RetroShare/releases/download/v${PV}/RetroShare-v${PV}-source-with-submodules.tar.gz -> ${P}.tar.gz"
+
+LICENSE="AGPL-3 Apache-2.0 CC-BY-SA-4.0 GPL-2 GPL-3 LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="autologin +gui +jsonapi +service +sqlcipher"
+
+REQUIRED_USE="
+ || ( gui service )
+ service? ( jsonapi )"
+
+RDEPEND="
+ app-arch/bzip2
+ dev-libs/openssl:0=
+ >=dev-libs/rapidjson-1.1.0
+ net-libs/miniupnpc:=
+ sys-libs/zlib
+ autologin? ( app-crypt/libsecret )
+ gui? (
+ dev-qt/qtcore:5
+ dev-qt/qtmultimedia:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtscript:5
+ dev-qt/qtxml:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ x11-libs/libX11
+ x11-libs/libXScrnSaver
+ )
+ service? ( dev-qt/qtcore:5 )
+ sqlcipher? ( dev-db/sqlcipher )
+ !sqlcipher? ( dev-db/sqlite:3 )"
+
+DEPEND="${RDEPEND}
+ dev-qt/qtcore:5
+ gui? ( dev-qt/designer:5 )"
+
+BDEPEND="dev-util/cmake
+ virtual/pkgconfig
+ jsonapi? ( app-doc/doxygen )"
+
+PATCHES=( "${FILESDIR}/${P}-qt-5.15.patch" )
+
+S="${WORKDIR}"/RetroShare
+
+src_prepare() {
+ # CRLF endings break patch...
+ edos2unix retroshare-gui/src/gui/elastic/elnode.h
+ default
+}
+
+src_configure() {
+ local qConfigs=()
+
+ qConfigs+=( $(usex autologin '' 'no_')rs_autologin )
+ qConfigs+=( $(usex gui '' 'no_')retroshare_gui )
+ qConfigs+=( $(usex jsonapi '' 'no_')rs_jsonapi )
+ qConfigs+=( $(usex service '' 'no_')retroshare_service )
+ qConfigs+=( $(usex sqlcipher '' 'no_')sqlcipher )
+ qConfigs+=( no_retroshare_nogui )
+ qConfigs+=( no_libresapi )
+ qConfigs+=( no_libresapi_settings )
+ qConfigs+=( no_libresapilocalserver )
+ qConfigs+=( no_libresapihttpserver )
+
+ eqmake5 CONFIG+="${qConfigs[*]}" \
+ RS_MAJOR_VERSION=$(ver_cut 1) RS_MINOR_VERSION=$(ver_cut 2) \
+ RS_MINI_VERSION=$(ver_cut 3) RS_EXTRA_VERSION="-gentoo-${PR}" \
+ RS_UPNP_LIB=miniupnpc
+}
+
+src_compile() {
+ use jsonapi && {
+ nonfatal emake ||
+ elog "Due to a bug in RetroShare-v0.6.5 build system when JSON API is enabled, failure at first emake is normal"
+ }
+
+ emake
+}
+
+src_install() {
+ use gui && dobin retroshare-gui/src/retroshare
+ use service && dobin retroshare-service/src/retroshare-service
+
+ insinto /usr/share/retroshare
+ doins libbitdht/src/bitdht/bdboot.txt
+
+ dodoc README.md
+ make_desktop_entry retroshare
+
+ for i in 24 48 64 128 ; do
+ doicon -s ${i} "data/${i}x${i}/apps/retroshare.png"
+ done
+}
+
+pkg_pretend() {
+ if ! use sqlcipher; then
+ ewarn "You have disabled GXS database encryption, ${PN} will use SQLite"
+ ewarn "instead of SQLCipher for GXS databases."
+ ewarn "Builds using SQLite and builds using SQLCipher have incompatible"
+ ewarn "database format, so you will need to manually delete GXS"
+ ewarn "database (loosing all your GXS data and identities) when you"
+ ewarn "toggle sqlcipher USE flag."
+ fi
+}
+
+pkg_preinst() {
+ local ver
+ for ver in ${REPLACING_VERSIONS}; do
+ if ver_test ${ver} -lt 0.5.9999; then
+ ewarn "You are upgrading from Retroshare 0.5.* to ${PV}"
+ ewarn "Version 0.6.* is backward-incompatible with 0.5 branch"
+ ewarn "and clients with 0.6.* can not connect to clients that have 0.5.*"
+ ewarn "It's recommended to drop all your configuration and either"
+ ewarn "generate a new certificate or import existing from a backup"
+ break
+ fi
+ if ver_test ${ver} -ge 0.6.0 && ver_test ${ver} -lt 0.6.4; then
+ elog "Main executable has been renamed upstream from RetroShare06 to retroshare"
+ break
+ fi
+ done
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+}
diff --git a/net-p2p/retroshare/retroshare-0.6.6.ebuild b/net-p2p/retroshare/retroshare-0.6.6.ebuild
new file mode 100644
index 000000000000..d331568ada6f
--- /dev/null
+++ b/net-p2p/retroshare/retroshare-0.6.6.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit desktop qmake-utils xdg
+
+DESCRIPTION="P2P private sharing application"
+HOMEPAGE="https://retroshare.cc"
+SRC_URI="http://download.opensuse.org/repositories/network:/retroshare/Debian_Testing/retroshare-common_${PV}.orig.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/RetroShare"
+
+LICENSE="AGPL-3 Apache-2.0 CC-BY-SA-4.0 GPL-2 GPL-3 LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="autologin cli +gui +jsonapi libupnp +miniupnp +service +sqlcipher"
+
+REQUIRED_USE="
+ || ( gui service )
+ ?? ( libupnp miniupnp )
+ service? ( || ( cli jsonapi ) )"
+
+RDEPEND="
+ app-arch/bzip2
+ dev-libs/openssl:0=
+ >=dev-libs/rapidjson-1.1.0
+ sys-libs/zlib
+ autologin? ( app-crypt/libsecret )
+ gui? (
+ dev-qt/qtcore:5
+ dev-qt/qtmultimedia:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtscript:5
+ dev-qt/qtxml:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ x11-libs/libX11
+ x11-libs/libXScrnSaver
+ )
+ libupnp? ( net-libs/libupnp:= )
+ miniupnp? ( net-libs/miniupnpc:= )
+ service? ( dev-qt/qtcore:5 )
+ sqlcipher? ( dev-db/sqlcipher )
+ !sqlcipher? ( dev-db/sqlite:3 )"
+
+DEPEND="${RDEPEND}
+ dev-qt/qtcore:5
+ gui? ( dev-qt/designer:5 )"
+
+BDEPEND="dev-util/cmake
+ virtual/pkgconfig
+ jsonapi? ( app-doc/doxygen )"
+
+PATCHES=( "${FILESDIR}/${P}-fix-cxx17-compilation.patch" )
+
+src_configure() {
+ local qconfigs=(
+ $(usex cli '' 'no_')rs_service_terminal_login
+ $(usex autologin '' 'no_')rs_autologin
+ $(usex gui '' 'no_')retroshare_gui
+ $(usex jsonapi '' 'no_')rs_jsonapi
+ $(usex service '' 'no_')retroshare_service
+ $(usex sqlcipher '' 'no_')sqlcipher
+ )
+
+ local qupnplibs="none"
+ use miniupnp && qupnplibs="miniupnpc"
+ use libupnp && qupnplibs="upnp ixml"
+
+ eqmake5 CONFIG+="${qconfigs[*]}" \
+ RS_MAJOR_VERSION=$(ver_cut 1) RS_MINOR_VERSION=$(ver_cut 2) \
+ RS_MINI_VERSION=$(ver_cut 3) RS_EXTRA_VERSION="-gentoo-${PR}" \
+ RS_UPNP_LIB="${qupnplibs}"
+}
+
+src_install() {
+ use gui && dobin retroshare-gui/src/retroshare
+ use service && dobin retroshare-service/src/retroshare-service
+
+ insinto /usr/share/retroshare
+ doins libbitdht/src/bitdht/bdboot.txt
+
+ dodoc README.asciidoc
+
+ if use gui; then
+ make_desktop_entry retroshare
+
+ for i in 24 48 64 128 ; do
+ doicon -s ${i} "data/${i}x${i}/apps/retroshare.png"
+ done
+ fi
+}
+
+pkg_preinst() {
+ xdg_pkg_preinst
+
+ if ! use sqlcipher && ! has_version "net-p2p/retroshare[-sqlcipher]"; then
+ ewarn "You have disabled GXS database encryption, ${PN} will use SQLite"
+ ewarn "instead of SQLCipher for GXS databases."
+ ewarn "Builds using SQLite and builds using SQLCipher have incompatible"
+ ewarn "database format, so you will need to manually delete GXS"
+ ewarn "database (loosing all your GXS data and identities) when you"
+ ewarn "toggle sqlcipher USE flag."
+ fi
+
+ if [[ ${REPLACING_VERSIONS} ]]; then
+ if ver_test ${REPLACING_VERSIONS} -lt 0.6; then
+ ewarn "You are upgrading from Retroshare 0.5.* to ${PV}"
+ ewarn "Version 0.6.* is backward-incompatible with 0.5 branch"
+ ewarn "and clients with 0.6.* can not connect to clients that have 0.5.*"
+ ewarn "It's recommended to drop all your configuration and either"
+ ewarn "generate a new certificate or import existing from a backup"
+ break
+ fi
+ if ver_test ${REPLACING_VERSIONS} -ge 0.6.0 && ver_test ${REPLACING_VERSIONS} -lt 0.6.4; then
+ elog "Main executable has been renamed upstream from RetroShare06 to retroshare"
+ break
+ fi
+ fi
+}