Skip to content

Commit

Permalink
net-p2p/retroshare
Browse files Browse the repository at this point in the history
  • Loading branch information
perfect7gentleman committed Aug 3, 2016
1 parent 0b009de commit 0559ff4
Show file tree
Hide file tree
Showing 5 changed files with 517 additions and 0 deletions.
5 changes: 5 additions & 0 deletions net-p2p/retroshare/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
AUX retroshare-0.6.0-c11-compat.patch 5915 SHA256 1d9fd5ae79c5de552d52948b3e3b01d47ad4ad0fd8d3008ec82f66bb1aec62c7 SHA512 42300b75c296f61a76ea26fc6220c1f4510189dd3b788cddf8e01c6bef7792be83675cf5852fa57d097716312513b3b06afc2674da68399ab0430bbe1ea5b2c8 WHIRLPOOL 8902480766951d9ca690af989a24a27f24e3220c4ba9286bd719e1050f6ea9a929b97e5e8e99d7e90cb1c4752eb6d7c5587c3ead1286a44ba34d25d99f4fb281
DIST retroshare-0.6.0.tar.gz 17436205 SHA256 50b9157bbe407aaefcbf9af1f29392e63148dc060bf78a3b200c9bc09998cf7c SHA512 794dacf1205a3c54973a7e34b6bd59fe88e9820677df182aaea37cfa90b90f548cd762b1243c25138f1b08ce67adf730c2f7b1cbfb1d97185eacabfd60f82374 WHIRLPOOL ef9b2222f84b4ecd4ef1f515b4cdce8362cb56f77e4d223ba1960d5131a1bed1bae816f4715a28f1b8ed36a969c89aad86ae32d95234bf54ad46b40b4e568902
EBUILD retroshare-0.6.0.ebuild 4084 SHA256 c3a85c4eaf7cdace6fbdde6fef58b8bfeee25ffe49cae1de762546b6de7313fd SHA512 f9acf3949a1aa3573a1fde1af19a7135e3faf6480ed3c049b2d3614b4e591397207b6ec3383249c7cfa43d88b75c4e360fc139941799be8c629a7d0b7652469f WHIRLPOOL f4ba17eb092a5046a571dc965ebbe47cd0dd027588248ba5ce83e8f1e467aa0247122a247d98b545c7416a802828b3ce73ae2beb071f587765a5afe80d07fd07
EBUILD retroshare-0.6.9999.ebuild 3897 SHA256 c173610c03d3daf5e8c6fbbc560a5eec674d147de9681aff6b3664642cbc8ec2 SHA512 0d613ed05f13ed54efc147b4094816324b9bc7fdb4eccd0d70e4d5a5b586aa57eed9535a7e77afeacbab47c8ebe0737a321b2bea30ae13cfeb2ff0804049d417 WHIRLPOOL 99af3414b011257bbdd426f240958520bcd160d47800bc8d4cebe0c8726c1cafa7a18b3ddc1df0efaa24f267a075457ea4906ca7151afde873ba1e0e81e18692
MISC metadata.xml 1092 SHA256 05621f9ee6ba3024358fa627e56d78e9f27d410ea884db69ccb794c86eecd9c0 SHA512 09e1c3da7fad588aedb047f98affd65f84f99c25be25d85e921a2540f47a26fa99ea29e68926f9d57a852a8098195c32aee77e974c3a04c1e85001dd7ec20d2b WHIRLPOOL 91d5d1f68d5b7e2ad197e3104ef83be61fdbcda894031960af8c472584dd4b18ae78d27cc8d404a4280ec408a05068e203f80a6c7c87858f8dc1fc830e8ffbd2
145 changes: 145 additions & 0 deletions net-p2p/retroshare/files/retroshare-0.6.0-c11-compat.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
commit aca88308eae16ab67627593c0df2fce7beb02e89
Author: zeners <[email protected]>
Date: Tue Mar 29 21:22:14 2016 +0200

compatible to g++11 / QT5

method suggested by cyril

diff --git a/libretroshare/src/pqi/pqiqosstreamer.cc b/libretroshare/src/pqi/pqiqosstreamer.cc
index 898f2b5..fc0dc20 100644
--- a/libretroshare/src/pqi/pqiqosstreamer.cc
+++ b/libretroshare/src/pqi/pqiqosstreamer.cc
@@ -25,6 +25,8 @@

#include "pqiqosstreamer.h"

+const float pqiQoSstreamer::PQI_QOS_STREAMER_ALPHA = 2.0f ;
+
pqiQoSstreamer::pqiQoSstreamer(PQInterface *parent, RsSerialiser *rss, const RsPeerId& peerid, BinInterface *bio_in, int bio_flagsin)
: pqithreadstreamer(parent,rss,peerid,bio_in,bio_flagsin), pqiQoS(PQI_QOS_STREAMER_MAX_LEVELS, PQI_QOS_STREAMER_ALPHA)
{
diff --git a/libretroshare/src/pqi/pqiqosstreamer.h b/libretroshare/src/pqi/pqiqosstreamer.h
index b85ac32..574ba94 100644
--- a/libretroshare/src/pqi/pqiqosstreamer.h
+++ b/libretroshare/src/pqi/pqiqosstreamer.h
@@ -34,7 +34,7 @@ class pqiQoSstreamer: public pqithreadstreamer, public pqiQoS
pqiQoSstreamer(PQInterface *parent, RsSerialiser *rss, const RsPeerId& peerid, BinInterface *bio_in, int bio_flagsin);

static const uint32_t PQI_QOS_STREAMER_MAX_LEVELS = 10 ;
- static const float PQI_QOS_STREAMER_ALPHA = 2.0 ;
+ static const float PQI_QOS_STREAMER_ALPHA ;

virtual void locked_storeInOutputQueue(void *ptr,int priority) ;
virtual int locked_out_queue_size() const { return _total_item_count ; }
diff --git a/libretroshare/src/retroshare/rsreputations.h b/libretroshare/src/retroshare/rsreputations.h
index 484aabb..8db42ee 100644
--- a/libretroshare/src/retroshare/rsreputations.h
+++ b/libretroshare/src/retroshare/rsreputations.h
@@ -31,8 +31,8 @@
class RsReputations
{
public:
- static const float REPUTATION_THRESHOLD_ANTI_SPAM = 1.4f ;
- static const float REPUTATION_THRESHOLD_DEFAULT = 1.0f ;
+ static const float REPUTATION_THRESHOLD_ANTI_SPAM;
+ static const float REPUTATION_THRESHOLD_DEFAULT;

// This is the interface file for the reputation system
//
diff --git a/libretroshare/src/rsserver/p3face-server.cc b/libretroshare/src/rsserver/p3face-server.cc
index 746ebac..b769136 100644
--- a/libretroshare/src/rsserver/p3face-server.cc
+++ b/libretroshare/src/rsserver/p3face-server.cc
@@ -69,6 +69,10 @@ static double getCurrentTS()
return cts;
}

+const double RsServer::minTimeDelta = 0.1; // 25;
+const double RsServer::maxTimeDelta = 0.5;
+const double RsServer::kickLimit = 0.15;
+

RsServer::RsServer()
: coreMutex("RsServer")
diff --git a/libretroshare/src/rsserver/p3face.h b/libretroshare/src/rsserver/p3face.h
index 23efa58..51f05a5 100644
--- a/libretroshare/src/rsserver/p3face.h
+++ b/libretroshare/src/rsserver/p3face.h
@@ -194,9 +194,9 @@ class RsServer: public RsControl, public RsTickingThread
double mAvgTickRate ;
double mTimeDelta ;

- static const double minTimeDelta = 0.1; // 25;
- static const double maxTimeDelta = 0.5;
- static const double kickLimit = 0.15;
+ static const double minTimeDelta; // 25;
+ static const double maxTimeDelta;
+ static const double kickLimit;
};

/* Helper function to convert windows paths
diff --git a/libretroshare/src/services/p3gxsreputation.cc b/libretroshare/src/services/p3gxsreputation.cc
index dd7a46d..b78ca1f 100644
--- a/libretroshare/src/services/p3gxsreputation.cc
+++ b/libretroshare/src/services/p3gxsreputation.cc
@@ -303,6 +303,10 @@ void p3GxsReputation::updateActiveFriends()

}

+const float RsReputations::REPUTATION_THRESHOLD_ANTI_SPAM = 1.4f ;
+const float RsReputations::REPUTATION_THRESHOLD_DEFAULT = 1.0f ;
+
+
static RsReputations::Opinion safe_convert_uint32t_to_opinion(uint32_t op)
{
return RsReputations::Opinion(std::min((uint32_t)op,UPPER_LIMIT)) ;
diff --git a/retroshare-gui/src/gui/elastic/node.cpp b/retroshare-gui/src/gui/elastic/node.cpp
index 7755172..bc33151 100644
--- a/retroshare-gui/src/gui/elastic/node.cpp
+++ b/retroshare-gui/src/gui/elastic/node.cpp
@@ -87,6 +87,12 @@ Node::Node(const std::string& node_string,GraphWidget::NodeType type,GraphWidget
_auth = GraphWidget::ELASTIC_NODE_AUTH_FULL ;
}

+const float Node::MASS_FACTOR = 10 ;
+const float Node::FRICTION_FACTOR = 10.8f ;
+const float Node::REPULSION_FACTOR = 4;
+const float Node::NODE_DISTANCE = 130.0f ;
+
+
void Node::addEdge(Edge *edge)
{
edgeList << edge;
diff --git a/retroshare-gui/src/gui/elastic/node.h b/retroshare-gui/src/gui/elastic/node.h
index d7bcd5f..13c717b 100644
--- a/retroshare-gui/src/gui/elastic/node.h
+++ b/retroshare-gui/src/gui/elastic/node.h
@@ -118,10 +118,10 @@ private:
RsPeerId _ssl_id ;
RsPgpId _gpg_id ;

- static const float MASS_FACTOR = 10 ;
- static const float FRICTION_FACTOR = 10.8 ;
- static const float REPULSION_FACTOR = 4 ;
- static const float NODE_DISTANCE = 130.0 ;
+ static const float MASS_FACTOR;
+ static const float FRICTION_FACTOR;
+ static const float REPULSION_FACTOR;
+ static const float NODE_DISTANCE;
};

#endif
diff --git a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp
index fe2e1aa..a3381b2 100644
--- a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp
+++ b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp
@@ -1565,7 +1565,7 @@ void GxsForumThreadWidget::setMsgReadStatus(QList<QTreeWidgetItem*> &rows, bool
// LIKE THIS BELOW...
//std::string grpId = (*Row)->data(COLUMN_THREAD_DATA, ROLE_THREAD_GROUPID).toString().toStdString();

- RsGxsGrpMsgIdPair msgPair = std::make_pair(groupId(), msgId);
+ RsGxsGrpMsgIdPair msgPair = std::make_pair(groupId(), RsGxsMessageId(msgId));

uint32_t token;
rsGxsForums->setMessageReadStatus(token, msgPair, read);
28 changes: 28 additions & 0 deletions net-p2p/retroshare/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>[email protected]</email>
<name>Sergey Popov</name>
</maintainer>
<longdescription lang="en">
RetroShare is a Open Source cross-platform, Friend-2-Friend and
secure decentralised communication platform.
It lets you to securely chat and share files with your friends
and family, using a web-of-trust to authenticate peers and OpenSSL
to encrypt all communication.
RetroShare provides filesharing, chat, messages, forums and
channels
</longdescription>
<use>
<flag name="cli">Enables the CLI version of RetroShare</flag>
<flag name="feedreader">Enables the Feedreader plugin</flag>
<flag name="qt4">Enables the GUI using qt4</flag>
<flag name="links-cloud">Enables LinkClouds plugin</flag>
<flag name="voip">Enables VOIP plugin</flag>
</use>
<upstream>
<bugs-to>https://sourceforge.net/p/retroshare/bugs</bugs-to>
<remote-id type="sourceforge">retroshare</remote-id>
</upstream>
</pkgmetadata>
173 changes: 173 additions & 0 deletions net-p2p/retroshare/retroshare-0.6.0.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,173 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI=6

inherit eutils gnome2-utils qmake-utils versionator

DESCRIPTION="P2P private sharing application"
HOMEPAGE="http://retroshare.sourceforge.net"
SRC_URI="https://github.com/RetroShare/RetroShare/archive/v${PV}.tar.gz -> ${P}.tar.gz"

# pegmarkdown can also be used with MIT
LICENSE="GPL-2 GPL-3 Apache-2.0 LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64 ~x86"

IUSE="cli feedreader qt4 +qt5 voip"
REQUIRED_USE="^^ ( qt4 qt5 )
|| ( cli qt4 qt5 )
feedreader? ( || ( qt4 qt5 ) )
voip? ( || ( qt4 qt5 ) )"

RDEPEND="
app-arch/bzip2
dev-db/sqlcipher
dev-libs/openssl:0
gnome-base/libgnome-keyring
net-libs/libmicrohttpd
net-libs/libupnp
sys-libs/zlib
cli? (
dev-libs/protobuf
net-libs/libssh[server]
)
feedreader? (
dev-libs/libxml2
dev-libs/libxslt
net-misc/curl
)
qt4? (
x11-libs/libX11
x11-libs/libXScrnSaver
dev-qt/designer:4
dev-qt/qtcore:4
dev-qt/qtgui:4
)
qt5? (
x11-libs/libX11
x11-libs/libXScrnSaver
dev-qt/designer:5
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtmultimedia:5
dev-qt/qtnetwork:5
dev-qt/qtprintsupport:5
dev-qt/qtscript:5
dev-qt/qtwidgets:5
dev-qt/qtx11extras:5
dev-qt/qtxml:5
)
voip? (
qt5? (
>media-libs/opencv-3.0.0[-qt4]
)
qt4? (
<media-libs/opencv-3.0.0
dev-qt/qtmultimedia:4
dev-qt/qt-mobility[multimedia]
)
media-libs/speex
virtual/ffmpeg[encode]
)"
DEPEND="${RDEPEND}
qt4? ( dev-qt/qtcore:4 )
qt5? ( dev-qt/qtcore:5 )
virtual/pkgconfig"

S="${WORKDIR}/RetroShare-${PV}"

PATCHES=( "${FILESDIR}/${P}-c11-compat.patch" )

src_prepare() {
local dir

sed -i \
-e "s|/usr/lib/retroshare/extensions6/|/usr/$(get_libdir)/${PN}/extensions6/|" \
libretroshare/src/rsserver/rsinit.cc \
|| die "sed on libretroshare/src/rsserver/rsinit.cc failed"

rs_src_dirs="libbitdht/src openpgpsdk/src libresapi/src libretroshare/src supportlibs/pegmarkdown"
use cli && rs_src_dirs="${rs_src_dirs} retroshare-nogui/src"
use feedreader && rs_src_dirs="${rs_src_dirs} plugins/FeedReader"
use qt4 && rs_src_dirs="${rs_src_dirs} retroshare-gui/src"
use qt5 && rs_src_dirs="${rs_src_dirs} retroshare-gui/src"
use voip && rs_src_dirs="${rs_src_dirs} plugins/VOIP"

# Force linking to sqlcipher ONLY
sed -i \
-e '/isEmpty(SQLCIPHER_OK) {/aerror(libsqlcipher not found)' \
retroshare-gui/src/retroshare-gui.pro \
retroshare-nogui/src/retroshare-nogui.pro || die 'sed on retroshare-gui/src/retroshare-gui.pro failed'

epatch ${PATCHES[@]}
eapply_user
}

src_configure() {
for dir in ${rs_src_dirs} ; do
pushd "${S}/${dir}" 2>/dev/null || die
use qt4 && eqmake4
use qt5 && eqmake5
popd 2>/dev/null || die
done
}

src_compile() {
local dir

for dir in ${rs_src_dirs} ; do
emake -C "${dir}"
done

unset rs_src_dirs
}

src_install() {
local i
local extension_dir="/usr/$(get_libdir)/${PN}/extensions6/"

use cli && dobin retroshare-nogui/src/RetroShare06-nogui
use qt4 && dobin retroshare-gui/src/RetroShare06
use qt5 && dobin retroshare-gui/src/RetroShare06

exeinto "${extension_dir}"
use feedreader && doexe plugins/FeedReader/*.so*
use voip && doexe plugins/VOIP/*.so*

insinto /usr/share/RetroShare06
doins libbitdht/src/bitdht/bdboot.txt

insinto /usr/share/RetroShare06/webui
doins libresapi/src/webfiles/*

dodoc README.md
make_desktop_entry RetroShare06
for i in 24 48 64 128 ; do
doicon -s ${i} "data/${i}x${i}/apps/retroshare06.png"
done
}

pkg_preinst() {
local ver
for ver in ${REPLACING_VERSIONS}; do
if ! version_is_at_least 0.5.9999 ${ver}; then
elog "You are upgrading from Retroshare 0.5.* to ${PV}"
elog "Version 0.6.* is backward-incompatible with 0.5 branch"
elog "and clients with 0.6.* can not connect to clients that have 0.5.*"
elog "It's recommended to drop all your configuration and either"
elog "generate a new certificate or import existing from a backup"
break
fi
done
gnome2_icon_savelist
}

pkg_postinst() {
gnome2_icon_cache_update
}

pkg_postrm() {
gnome2_icon_cache_update
}
Loading

0 comments on commit 0559ff4

Please sign in to comment.