diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-09-13 12:31:46 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-09-13 12:31:46 +0100 |
commit | 6fcdccbe589d724b6c268b49f66414e40eb0d807 (patch) | |
tree | b0b74ac37d41e5d22a5a758517b215d1829cdb67 /net-p2p/retroshare | |
parent | 3ea54510168a7ed4271b85f7292beca67346bfe9 (diff) |
gentoo auto-resync : 13:09:2024 - 12:31:45
Diffstat (limited to 'net-p2p/retroshare')
-rw-r--r-- | net-p2p/retroshare/Manifest | 4 | ||||
-rw-r--r-- | net-p2p/retroshare/files/retroshare-0.6.7-fix-miniupnp-api-v18.patch | 32 | ||||
-rw-r--r-- | net-p2p/retroshare/metadata.xml | 8 | ||||
-rw-r--r-- | net-p2p/retroshare/retroshare-0.6.7-r2.ebuild | 129 |
4 files changed, 171 insertions, 2 deletions
diff --git a/net-p2p/retroshare/Manifest b/net-p2p/retroshare/Manifest index dd7e9c3fd703..29f69e6e17b5 100644 --- a/net-p2p/retroshare/Manifest +++ b/net-p2p/retroshare/Manifest @@ -1,3 +1,5 @@ +AUX retroshare-0.6.7-fix-miniupnp-api-v18.patch 1168 BLAKE2B 35635a360183aaaa3fcf211bb2503cc5fcfaad76f4b9e6170985b7611f4b0de4734dba02956146dcdd734939d50a89f31e7a31e8132ebe151e2f8dbc3a26376d SHA512 22a2f32226498f18b7c0b0e36b11a677d048ede56a1e56fde1599fe410456bc5905e9300e5a0d93b8d808e0ade6e4be3bd9311dc5f4ed0b2e0dd90d038cfb8c1 DIST retroshare-0.6.7.tar.gz 26506259 BLAKE2B 3c0963c8afbbf741c8c5d22dc9c9f86f82d1a338a9f0dd02065617d16e96738a4d22c2bc30c1ba32c61fcc7beedaa15ac3c185aab429882b0947aa28b8c037b1 SHA512 ff5455b97519878d83c6872dfce457804430938864259f7d0fa5b06ebae161e62ea8300e809a03a821b2ecdf755a3de7465a580882709ae79bfb9c1de855e347 EBUILD retroshare-0.6.7-r1.ebuild 3558 BLAKE2B 3cd498c88a0f4e7bf8acb091a8f8179fb5fb54b2f880c8ff38b7a6d3a86d4b189fcce78b9e282ec1af301b23f4f0eb7e540007927144f5d08f3cc99dbb42d9f5 SHA512 dd58700fae6eade35f183718dc50277e0687fff2e1f01455bd4aa36628f1d000ea60bf390549d7564b120b5e0e13d1144ec2b40b28485cb855829cd9c5185036 -MISC metadata.xml 1507 BLAKE2B 3850886e6d5e70ad585ec4083d5fb86a01b962a421cfbeac26862e47dada0adf0cbfa53e31bbbd34b968da72e6395560a6c48b6125e9996f82df2089e383f9a7 SHA512 26cd8010b552892041a688525345922a3412f50d060c319b3c5bf9f135e21d5b1e7bd61b09b91431f716d695471e70b1c9a2c62772b0d3847806e4a923c48382 +EBUILD retroshare-0.6.7-r2.ebuild 3484 BLAKE2B 84031ecba0b5be6f4b64d334ee947a04b16ddc5fb7da4a0e479bf05196fc57dec1745a6abd5cb31a01f1ecb794a3da9494c94ccdbea58013dbb8ad886695a473 SHA512 eaca5329144145d652ff56981925d3665fae18ffaeab2dba69d34f0829b4dbb357721d586f174421848aa9b19897422b7920b5ecb1afd0bdcd2ae6184900a526 +MISC metadata.xml 1754 BLAKE2B 3b2f907deeb4e3b5fb55a3e6500eec33410fee84ff041899941d3915347054e471df88eeebf46219eab8684968dfdd367c10e5d512dca5e10c508e45570edebb SHA512 96b3e87ea2eeed2f9ffdeca6d1fdfd13c97f135edbc754e69f23c0416cb45ed7d22dbe333681879df644cec94d380225cf6930754cd401c2753c090eaae66eca diff --git a/net-p2p/retroshare/files/retroshare-0.6.7-fix-miniupnp-api-v18.patch b/net-p2p/retroshare/files/retroshare-0.6.7-fix-miniupnp-api-v18.patch new file mode 100644 index 000000000000..37d38b11c548 --- /dev/null +++ b/net-p2p/retroshare/files/retroshare-0.6.7-fix-miniupnp-api-v18.patch @@ -0,0 +1,32 @@ +From f1b89c4f87d77714571b4135c301bf0429096a20 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= <stefantalpalaru@yahoo.com> +Date: Wed, 12 Jun 2024 01:00:41 +0200 +Subject: [PATCH] Support the miniupnpc-2.2.8 API change +# NOTE: Taken from the official libretroshare repo +# https://github.com/RetroShare/libretroshare/commit/c54e0266e4483797c1d6bacee6f563979d683464 +index 7178a8e39..5e5358fb9 100644 +--- a/libretroshare/src/rs_upnp/upnphandler_miniupnp.cc ++++ b/libretroshare/src/rs_upnp/upnphandler_miniupnp.cc +@@ -41,6 +41,9 @@ class uPnPConfigData + struct UPNPUrls urls; + struct IGDdatas data; + char lanaddr[16]; /* my ip address on the LAN */ ++#if MINIUPNPC_API_VERSION >= 18 ++ char wanaddr[16]; /* my ip address on the WAN */ ++#endif + }; + + #include <iostream> +@@ -139,6 +142,10 @@ bool upnphandler::initUPnPState() + putchar('\n'); + if(UPNP_GetValidIGD(upcd->devlist, &(upcd->urls), + &(upcd->data), upcd->lanaddr, +- sizeof(upcd->lanaddr))) ++ sizeof(upcd->lanaddr) ++#if MINIUPNPC_API_VERSION >= 18 ++ , upcd->wanaddr, sizeof(upcd->wanaddr) ++#endif ++ )) + { + printf("Found valid IGD : %s\n", + upcd->urls.controlURL);
\ No newline at end of file diff --git a/net-p2p/retroshare/metadata.xml b/net-p2p/retroshare/metadata.xml index 4388bd9dcb1d..a91c546333c8 100644 --- a/net-p2p/retroshare/metadata.xml +++ b/net-p2p/retroshare/metadata.xml @@ -5,11 +5,15 @@ <email>gio@eigenlab.org</email> <name>Gioacchino Mazzurco</name> </maintainer> + <maintainer type="person" proxied="yes"> + <email>fkobi@pm.me</email> + <name>Filip Kobierski</name> + </maintainer> <maintainer type="project" proxied="proxy"> <email>proxy-maint@gentoo.org</email> <name>Proxy Maintainers</name> </maintainer> - <longdescription lang="en"> + <longdescription> RetroShare is a Free and Open Source cross-platform, Friend-2-Friend secure decentralised communication platform. It lets you to securely chat and share files with your friends, family @@ -28,6 +32,8 @@ </use> <upstream> <bugs-to>https://github.com/RetroShare/RetroShare/issues</bugs-to> + <!-- NOTE: for core functionalities check cout RetroShare/libretroshare --> + <doc>https://retrosharedocs.readthedocs.io/en/latest/</doc> <remote-id type="github">RetroShare/RetroShare</remote-id> </upstream> </pkgmetadata> diff --git a/net-p2p/retroshare/retroshare-0.6.7-r2.ebuild b/net-p2p/retroshare/retroshare-0.6.7-r2.ebuild new file mode 100644 index 000000000000..e33f7eb5f234 --- /dev/null +++ b/net-p2p/retroshare/retroshare-0.6.7-r2.ebuild @@ -0,0 +1,129 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic desktop qmake-utils xdg + +DESCRIPTION="Friend to Friend secure communication and sharing application" +HOMEPAGE="https://retroshare.cc" +SRC_URI="https://download.opensuse.org/repositories/network:/retroshare/Debian_Testing/retroshare-common_${PV}.orig.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/RetroShare" +# NOTE: GitHub releases/archive is impractical to build so we use the OBS repo +# but they squash point releases which is bad for us + +LICENSE="AGPL-3 Apache-2.0 CC-BY-SA-4.0 GPL-2 GPL-3 LGPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="cli +gui +jsonapi keyring libupnp +miniupnp plugins +service +sqlcipher" + +REQUIRED_USE=" + || ( gui service ) + ?? ( libupnp miniupnp ) + plugins? ( gui ) + service? ( || ( cli jsonapi ) ) +" +RDEPEND=" + app-arch/bzip2 + dev-libs/openssl:0= + sys-libs/zlib + gui? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtmultimedia:5 + dev-qt/qtnetwork:5 + dev-qt/qtprintsupport:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + dev-qt/qtxml:5 + x11-libs/libX11 + x11-libs/libXScrnSaver + ) + keyring? ( app-crypt/libsecret ) + libupnp? ( net-libs/libupnp:= ) + miniupnp? ( net-libs/miniupnpc:= ) + plugins? ( + media-libs/speex + media-libs/speexdsp + <media-video/ffmpeg-5 + ) + sqlcipher? ( dev-db/sqlcipher ) + !sqlcipher? ( dev-db/sqlite:3 ) +" +DEPEND=" + ${RDEPEND} + gui? ( dev-qt/designer:5 ) + jsonapi? ( >=dev-libs/rapidjson-1.1.0 ) +" +BDEPEND=" + dev-build/cmake + dev-qt/qtcore:5 + virtual/pkgconfig + gui? ( x11-base/xorg-proto ) + jsonapi? ( app-text/doxygen ) +" +PATCHES=( "${FILESDIR}/${P}-fix-miniupnp-api-v18.patch" ) + +src_configure() { + local qconfigs=( + $(usex cli '' 'no_')rs_service_terminal_login + $(usex keyring '' 'no_')rs_autologin + $(usex gui '' 'no_')retroshare_gui + $(usex jsonapi '' 'no_')rs_jsonapi + $(usex service '' 'no_')retroshare_service + $(usex sqlcipher '' 'no_')sqlcipher + $(usex plugins '' 'no_')retroshare_plugins + ) + + local qupnplibs="none" + use miniupnp && qupnplibs="miniupnpc" + use libupnp && qupnplibs="upnp ixml" + + # bug 907898 + use elibc_musl && append-flags -D_LARGEFILE64_SOURCE + + # REVIEW: qmake is deprecated + # https://github.com/RetroShare/RetroShare/tree/master/jsonapi-generator + 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 + use gui && doins -r retroshare-gui/src/qss + + 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 + if use plugins; then + insinto /usr/lib/retroshare/extensions6 + doins plugins/*/lib/*.so + 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 +} |