1 |
commit: c1d3bf0747652395bfc75312a3639e9e07a4fc3f |
2 |
Author: Gioacchino Mazzurco <gio <AT> eigenlab <DOT> org> |
3 |
AuthorDate: Mon Apr 23 08:53:16 2018 +0000 |
4 |
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Jun 9 21:15:36 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c1d3bf07 |
7 |
|
8 |
net-p2p/retroshare update development ebuild |
9 |
|
10 |
Development version of retroshare expose qmake flags that permit easier |
11 |
build customization without crufty patching, improve development ebuild |
12 |
to take advantage of that and have a cleaner ebuild. |
13 |
|
14 |
Removed VoIP and feedreader plugins are not maintained. |
15 |
|
16 |
For future stable versions this ebuild should be used as reference |
17 |
and not the older ones. |
18 |
|
19 |
Development version depends on rapidjson. |
20 |
|
21 |
Closes: https://github.com/gentoo/gentoo/pull/8115 |
22 |
|
23 |
net-p2p/retroshare/metadata.xml | 16 +-- |
24 |
net-p2p/retroshare/retroshare-0.6.9999.ebuild | 134 ++++++++++---------------- |
25 |
2 files changed, 61 insertions(+), 89 deletions(-) |
26 |
|
27 |
diff --git a/net-p2p/retroshare/metadata.xml b/net-p2p/retroshare/metadata.xml |
28 |
index d634614148a..6f5d194f45d 100644 |
29 |
--- a/net-p2p/retroshare/metadata.xml |
30 |
+++ b/net-p2p/retroshare/metadata.xml |
31 |
@@ -14,24 +14,26 @@ |
32 |
<name>Sergey Popov</name> |
33 |
</maintainer> |
34 |
<longdescription lang="en"> |
35 |
- RetroShare is a Open Source cross-platform, Friend-2-Friend and |
36 |
+ RetroShare is a Free and Open Source cross-platform, Friend-2-Friend |
37 |
secure decentralised communication platform. |
38 |
- It lets you to securely chat and share files with your friends |
39 |
- and family, using a web-of-trust to authenticate peers and OpenSSL |
40 |
+ It lets you to securely chat and share files with your friends, family |
41 |
+ and even unknown people using PGP to authenticate peers and OpenSSL |
42 |
to encrypt all communication. |
43 |
- RetroShare provides filesharing, chat, messages, forums and |
44 |
- channels |
45 |
+ RetroShare provides filesharing, chat, mails, forums and channels. |
46 |
</longdescription> |
47 |
<use> |
48 |
<flag name="cli">Enables the CLI version of RetroShare</flag> |
49 |
+ <flag name="control-socket">Enables API via Unix socket support</flag> |
50 |
<flag name="feedreader">Enables the Feedreader plugin</flag> |
51 |
<flag name="gnome-keyring">Enables potentially insecure autologin capability via Gnome Keyring</flag> |
52 |
<flag name="gui">Enables the GUI version of RetroShare</flag> |
53 |
+ <flag name="settings-api">Enables settings control via API</flag> |
54 |
+ <flag name="sqlcipher">Enables GXS database encryption via SQLCipher</flag> |
55 |
<flag name="voip">Enables VOIP plugin</flag> |
56 |
+ <flag name="webui">Enables Web interface and API support</flag> |
57 |
</use> |
58 |
<upstream> |
59 |
- <bugs-to>https://sourceforge.net/p/retroshare/bugs</bugs-to> |
60 |
- <remote-id type="sourceforge">retroshare</remote-id> |
61 |
+ <bugs-to>https://github.com/RetroShare/RetroShare/issues</bugs-to> |
62 |
<remote-id type="github">RetroShare/RetroShare</remote-id> |
63 |
</upstream> |
64 |
</pkgmetadata> |
65 |
|
66 |
diff --git a/net-p2p/retroshare/retroshare-0.6.9999.ebuild b/net-p2p/retroshare/retroshare-0.6.9999.ebuild |
67 |
index 2a62dc7dc3d..0db2373b5c2 100644 |
68 |
--- a/net-p2p/retroshare/retroshare-0.6.9999.ebuild |
69 |
+++ b/net-p2p/retroshare/retroshare-0.6.9999.ebuild |
70 |
@@ -1,4 +1,4 @@ |
71 |
-# Copyright 1999-2017 Gentoo Foundation |
72 |
+# Copyright 1999-2018 Gentoo Foundation |
73 |
# Distributed under the terms of the GNU General Public License v2 |
74 |
|
75 |
EAPI=6 |
76 |
@@ -10,135 +10,105 @@ DESCRIPTION="P2P private sharing application" |
77 |
HOMEPAGE="http://retroshare.net" |
78 |
|
79 |
# pegmarkdown can also be used with MIT |
80 |
-LICENSE="GPL-2 GPL-3 Apache-2.0 LGPL-2.1" |
81 |
+LICENSE="AGPL-3 GPL-2 GPL-3 Apache-2.0 LGPL-2.1" |
82 |
SLOT="0" |
83 |
KEYWORDS="" |
84 |
|
85 |
-IUSE="cli feedreader gnome-keyring +gui voip" |
86 |
+IUSE="cli control-socket gnome-keyring +gui settings-api +sqlcipher +webui" |
87 |
REQUIRED_USE=" |
88 |
|| ( cli gui ) |
89 |
- feedreader? ( gui ) |
90 |
- voip? ( gui )" |
91 |
+ settings-api? ( || ( control-socket webui ) )" |
92 |
|
93 |
RDEPEND=" |
94 |
app-arch/bzip2 |
95 |
- dev-db/sqlcipher |
96 |
- dev-libs/openssl:0 |
97 |
- dev-qt/qtcore:5 |
98 |
- dev-qt/qtmultimedia:5 |
99 |
- dev-qt/qtnetwork:5 |
100 |
- dev-qt/qtprintsupport:5 |
101 |
- dev-qt/qtscript:5 |
102 |
- dev-qt/qtxml:5 |
103 |
- net-libs/libmicrohttpd |
104 |
- net-libs/libupnp:0 |
105 |
+ dev-libs/openssl:0= |
106 |
+ >=dev-libs/rapidjson-1.1.0 |
107 |
+ net-libs/libupnp:0= |
108 |
sys-libs/zlib |
109 |
+ control-socket? ( dev-qt/qtnetwork:5 ) |
110 |
gnome-keyring? ( gnome-base/libgnome-keyring ) |
111 |
- feedreader? ( |
112 |
- dev-libs/libxml2 |
113 |
- dev-libs/libxslt |
114 |
- net-misc/curl |
115 |
- ) |
116 |
gui? ( |
117 |
- dev-qt/designer:5 |
118 |
+ dev-qt/qtcore:5 |
119 |
+ dev-qt/qtmultimedia:5 |
120 |
+ dev-qt/qtnetwork:5 |
121 |
+ dev-qt/qtprintsupport:5 |
122 |
+ dev-qt/qtscript:5 |
123 |
+ dev-qt/qtxml:5 |
124 |
dev-qt/qtgui:5 |
125 |
dev-qt/qtwidgets:5 |
126 |
dev-qt/qtx11extras:5 |
127 |
x11-libs/libX11 |
128 |
x11-libs/libXScrnSaver |
129 |
) |
130 |
- voip? ( |
131 |
- media-libs/opencv[-qt4(-)] |
132 |
- media-libs/speex |
133 |
- virtual/ffmpeg[encode] |
134 |
- )" |
135 |
-DEPEND="${RDEPEND} |
136 |
- virtual/pkgconfig" |
137 |
- |
138 |
-src_prepare() { |
139 |
- local dir |
140 |
- |
141 |
- sed -i \ |
142 |
- -e "s|/usr/lib/retroshare/extensions6/|/usr/$(get_libdir)/${PN}/extensions6/|" \ |
143 |
- libretroshare/src/rsserver/rsinit.cc \ |
144 |
- || die "sed on libretroshare/src/rsserver/rsinit.cc failed" |
145 |
+ settings-api? ( dev-qt/qtcore:5 ) |
146 |
+ sqlcipher? ( dev-db/sqlcipher ) |
147 |
+ !sqlcipher? ( dev-db/sqlite:3 ) |
148 |
+ webui? ( net-libs/libmicrohttpd )" |
149 |
|
150 |
- rs_src_dirs="libbitdht/src openpgpsdk/src libresapi/src libretroshare/src supportlibs/pegmarkdown" |
151 |
- use cli && rs_src_dirs="${rs_src_dirs} retroshare-nogui/src" |
152 |
- use feedreader && rs_src_dirs="${rs_src_dirs} plugins/FeedReader" |
153 |
- use gui && rs_src_dirs="${rs_src_dirs} retroshare-gui/src" |
154 |
- use voip && rs_src_dirs="${rs_src_dirs} plugins/VOIP" |
155 |
- |
156 |
- # Force linking to sqlcipher ONLY |
157 |
- sed -i \ |
158 |
- -e '/isEmpty(SQLCIPHER_OK) {/aerror(libsqlcipher not found)' \ |
159 |
- retroshare-gui/src/retroshare-gui.pro \ |
160 |
- retroshare-nogui/src/retroshare-nogui.pro || die 'sed on retroshare-gui/src/retroshare-gui.pro failed' |
161 |
- |
162 |
- # Avoid openpgpsdk false dependency on qtgui |
163 |
- sed -i '2iQT -= gui' openpgpsdk/src/openpgpsdk.pro || die |
164 |
- |
165 |
- eapply_user |
166 |
-} |
167 |
+DEPEND="${RDEPEND} |
168 |
+ gui? ( dev-qt/designer:5 ) |
169 |
+ dev-qt/qtcore:5 |
170 |
+ virtual/pkgconfig |
171 |
+" |
172 |
|
173 |
src_configure() { |
174 |
- for dir in ${rs_src_dirs} ; do |
175 |
- pushd "${S}/${dir}" >/dev/null || die |
176 |
- eqmake5 $(use gnome-keyring && echo CONFIG+=rs_autologin) |
177 |
- popd >/dev/null || die |
178 |
- done |
179 |
-} |
180 |
+ local qConfigs=() |
181 |
|
182 |
-src_compile() { |
183 |
- local dir |
184 |
- |
185 |
- for dir in ${rs_src_dirs} ; do |
186 |
- emake -C "${dir}" |
187 |
- done |
188 |
+ qConfigs+=( $(usex cli '' 'no_')retroshare_nogui ) |
189 |
+ qConfigs+=( $(usex control-socket '' 'no_')libresapilocalserver ) |
190 |
+ qConfigs+=( $(usex gnome-keyring '' 'no_')rs_autologin ) |
191 |
+ qConfigs+=( $(usex gui '' 'no_')retroshare_gui ) |
192 |
+ qConfigs+=( $(usex settings-api '' 'no_')libresapi_settings ) |
193 |
+ qConfigs+=( $(usex sqlcipher '' 'no_')sqlcipher ) |
194 |
+ qConfigs+=( $(usex webui '' 'no_')libresapihttpserver ) |
195 |
|
196 |
- unset rs_src_dirs |
197 |
+ eqmake5 CONFIG+="${qConfigs[*]}" |
198 |
} |
199 |
|
200 |
src_install() { |
201 |
- local i |
202 |
- local extension_dir="/usr/$(get_libdir)/${PN}/extensions6/" |
203 |
- |
204 |
use cli && dobin retroshare-nogui/src/retroshare-nogui |
205 |
use gui && dobin retroshare-gui/src/retroshare |
206 |
|
207 |
- exeinto "${extension_dir}" |
208 |
- use feedreader && doexe plugins/FeedReader/*.so* |
209 |
- use voip && doexe plugins/VOIP/*.so* |
210 |
- |
211 |
insinto /usr/share/retroshare |
212 |
doins libbitdht/src/bitdht/bdboot.txt |
213 |
|
214 |
- doins -r libresapi/src/webui |
215 |
+ use webui && doins -r libresapi/src/webui |
216 |
|
217 |
dodoc README.md |
218 |
make_desktop_entry retroshare |
219 |
+ |
220 |
for i in 24 48 64 128 ; do |
221 |
doicon -s ${i} "data/${i}x${i}/apps/retroshare.png" |
222 |
done |
223 |
} |
224 |
|
225 |
+pkg_pretend() { |
226 |
+ if ! use sqlcipher; then |
227 |
+ ewarn "You have disabled GXS database encryption, ${PN} will use SQLite" |
228 |
+ ewarn "instead of SQLCipher for GXS databases." |
229 |
+ ewarn "Builds using SQLite and builds using SQLCipher have incompatible" |
230 |
+ ewarn "database format, so you will need to manually delete GXS" |
231 |
+ ewarn "database (loosing all your GXS data and identities) when you" |
232 |
+ ewarn "toggle sqlcipher USE flag." |
233 |
+ fi |
234 |
+} |
235 |
+ |
236 |
pkg_preinst() { |
237 |
local ver |
238 |
for ver in ${REPLACING_VERSIONS}; do |
239 |
if ! version_is_at_least 0.5.9999 ${ver}; then |
240 |
- elog "You are upgrading from Retroshare 0.5.* to ${PV}" |
241 |
- elog "Version 0.6.* is backward-incompatible with 0.5 branch" |
242 |
- elog "and clients with 0.6.* can not connect to clients that have 0.5.*" |
243 |
- elog "It's recommended to drop all your configuration and either" |
244 |
- elog "generate a new certificate or import existing from a backup" |
245 |
+ ewarn "You are upgrading from Retroshare 0.5.* to ${PV}" |
246 |
+ ewarn "Version 0.6.* is backward-incompatible with 0.5 branch" |
247 |
+ ewarn "and clients with 0.6.* can not connect to clients that have 0.5.*" |
248 |
+ ewarn "It's recommended to drop all your configuration and either" |
249 |
+ ewarn "generate a new certificate or import existing from a backup" |
250 |
break |
251 |
fi |
252 |
- if version_is_at_least 0.6.0 ${ver}; then |
253 |
- elog "Main executable was renamed upstream from RetroShare06 to retroshare" |
254 |
+ if version_is_at_least 0.6.0 ${ver} && ! version_is_at_least 0.6.4 ${ver}; then |
255 |
+ elog "Main executable has been renamed upstream from RetroShare06 to retroshare" |
256 |
break |
257 |
fi |
258 |
done |
259 |
- gnome2_icon_savelist |
260 |
} |
261 |
|
262 |
pkg_postinst() { |