Gentoo Archives: gentoo-commits

From: Marius Brehler <marbre@××××××××××××××.de>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/sci:master commit in: net-misc/cernbox-client/files/, net-misc/cernbox-client/
Date: Wed, 12 Oct 2016 06:31:06
Message-Id: 1474887636.a9bccaa1c26c489dd3dd3f7405d04d0c1ee0240b.marbre@gentoo
1 commit: a9bccaa1c26c489dd3dd3f7405d04d0c1ee0240b
2 Author: olifre <o.freyermuth <AT> googlemail <DOT> com>
3 AuthorDate: Mon Sep 26 11:00:36 2016 +0000
4 Commit: Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
5 CommitDate: Mon Sep 26 11:00:36 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=a9bccaa1
7
8 net-misc/cernbox-client: Branded net-misc/owncloud-client for CERN. (#673)
9
10 * net-misc/cernbox-client: Branded net-misc/owncloud-client for CERN.
11
12 The branding contains themeing and several special default settings
13 for the special ownCloud instance of CERN.
14
15 Package-Manager: portage-2.3.0
16
17 * net-misc/cernbox-client: Use eapply instead of epatch,
18 adapt patch.
19
20 Package-Manager: portage-2.3.1
21
22 .../cernbox-client/cernbox-client-2.2.3.ebuild | 119 +++++++++++++++++++++
23 .../files/shell-integration-dolphin.patch | 36 +++++++
24 .../files/shell-integration-nautilus.patch | 13 +++
25 net-misc/cernbox-client/metadata.xml | 27 +++++
26 4 files changed, 195 insertions(+)
27
28 diff --git a/net-misc/cernbox-client/cernbox-client-2.2.3.ebuild b/net-misc/cernbox-client/cernbox-client-2.2.3.ebuild
29 new file mode 100644
30 index 0000000..5f5693a
31 --- /dev/null
32 +++ b/net-misc/cernbox-client/cernbox-client-2.2.3.ebuild
33 @@ -0,0 +1,119 @@
34 +# Copyright 1999-2016 Gentoo Foundation
35 +# Distributed under the terms of the GNU General Public License v2
36 +# $Id$
37 +
38 +EAPI=6
39 +
40 +inherit cmake-utils rpm
41 +
42 +DESCRIPTION="Synchronize files from CERNbox EOS with your computer"
43 +
44 +# Origin is classic owncloud-client, branded for CERN during compilation.
45 +ORIGIN_P="owncloudclient"
46 +BRANDED_P="cernbox"
47 +BRANDED_PV="2.1.1"
48 +BRANDED_REL="1.1"
49 +
50 +HOMEPAGE="https://cernbox.cern.ch/"
51 +SRC_URI="http://download.owncloud.com/desktop/stable/${ORIGIN_P}-${PV}.tar.xz
52 + https://cernbox.cern.ch/cernbox/doc/Linux/repo/CentOS_7/src/${PN}-${BRANDED_PV}-${BRANDED_REL}.src.rpm"
53 +
54 +LICENSE="CC-BY-3.0 GPL-2"
55 +SLOT="0"
56 +KEYWORDS="~amd64 ~x86"
57 +IUSE="doc dolphin nautilus samba +sftp test qt4 +qt5"
58 +
59 +REQUIRED_USE="^^ ( qt4 qt5 )
60 + dolphin? ( qt5 )"
61 +
62 +RDEPEND=">=dev-db/sqlite-3.4:3
63 + sys-fs/inotify-tools
64 + virtual/libiconv
65 + dolphin? (
66 + >=kde-frameworks/kcoreaddons-5.16:5
67 + >=kde-frameworks/kio-5.16:5 )
68 + nautilus? ( dev-python/nautilus-python )
69 + qt4? (
70 + dev-libs/qtkeychain[qt4]
71 + dev-qt/qtcore:4
72 + dev-qt/qtdbus:4
73 + dev-qt/qtgui:4
74 + dev-qt/qtsql:4
75 + dev-qt/qtwebkit:4
76 + net-libs/neon[ssl]
77 + )
78 + qt5? (
79 + dev-libs/qtkeychain[qt5]
80 + dev-qt/qtconcurrent:5
81 + dev-qt/qtcore:5
82 + dev-qt/qtdbus:5
83 + >=dev-qt/qtnetwork-5.4:5
84 + dev-qt/qtgui:5
85 + dev-qt/qtquickcontrols:5
86 + dev-qt/qtsql:5
87 + dev-qt/qtwebkit:5[printsupport]
88 + )
89 + samba? ( >=net-fs/samba-3.5 )
90 + sftp? ( >=net-libs/libssh-0.5 )
91 + !net-misc/ocsync
92 + !net-misc/nextcloud-client"
93 +DEPEND="${RDEPEND}
94 + doc? (
95 + dev-python/sphinx
96 + dev-texlive/texlive-latexextra
97 + virtual/latex-base
98 + )
99 + dolphin? ( >=kde-frameworks/extra-cmake-modules-5.22.0 )
100 + qt5? ( dev-qt/linguist-tools:5 )
101 + test? (
102 + dev-util/cmocka
103 + qt4? ( dev-qt/qttest:4 )
104 + qt5? ( dev-qt/qttest:5 )
105 + )"
106 +
107 +S=${WORKDIR}/owncloudclient-${PV}
108 +
109 +src_unpack() {
110 + rpm_src_unpack ${PN}-${BRANDED_PV}-${BRANDED_REL}.src.rpm
111 + mv ${PN/-}-${BRANDED_PV}/cernbox "${S}" || die "failed to extract branding"
112 +}
113 +
114 +src_prepare() {
115 + # Keep tests in ${T}
116 + sed -i -e "s#\"/tmp#\"${T}#g" test/test*.cpp || die "sed failed"
117 +
118 + if ! use nautilus; then
119 + pushd shell_integration > /dev/null || die
120 + cmake_comment_add_subdirectory nautilus
121 + popd > /dev/null || die
122 + fi
123 +
124 + eapply "${FILESDIR}"/shell-integration-nautilus.patch \
125 + "${FILESDIR}"/shell-integration-dolphin.patch
126 +
127 + default
128 +}
129 +
130 +src_configure() {
131 + local mycmakeargs=(
132 + -DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc
133 + -DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
134 + -DWITH_ICONV=ON
135 + -DWITH_DOC=$(usex doc)
136 + -DCMAKE_DISABLE_FIND_PACKAGE_KF5=$(usex !dolphin)
137 + -DBUILD_WITH_QT4=$(usex qt4)
138 + -DCMAKE_DISABLE_FIND_PACKAGE_Libsmbclient=$(usex !samba)
139 + -DCMAKE_DISABLE_FIND_PACKAGE_LibSSH=$(usex !sftp)
140 + -DUNIT_TESTING=$(usex test)
141 + -DOEM_THEME_DIR=${PWD}/${BRANDED_P}/mirall
142 + )
143 +
144 + cmake-utils_src_configure
145 +}
146 +
147 +pkg_postinst() {
148 + if ! use doc ; then
149 + elog "Documentation and man pages not installed"
150 + elog "Enable doc USE-flag to generate them"
151 + fi
152 +}
153
154 diff --git a/net-misc/cernbox-client/files/shell-integration-dolphin.patch b/net-misc/cernbox-client/files/shell-integration-dolphin.patch
155 new file mode 100644
156 index 0000000..69631b8
157 --- /dev/null
158 +++ b/net-misc/cernbox-client/files/shell-integration-dolphin.patch
159 @@ -0,0 +1,36 @@
160 +From acdcc9ee50db0e010dbda185356868d65a231070 Mon Sep 17 00:00:00 2001
161 +From: Klaas Freitag <freitag@××××××××.com>
162 +Date: Mon, 12 Sep 2016 13:50:41 +0200
163 +Subject: [PATCH] Dolphin Plugin: Use the Application name for the socket path
164 +
165 +do not hardcode.
166 +
167 +This should fix #5165
168 +---
169 + shell_integration/dolphin/ownclouddolphinpluginhelper.cpp | 6 +++++-
170 + 1 file changed, 5 insertions(+), 1 deletion(-)
171 +
172 +diff --git a/shell_integration/dolphin/ownclouddolphinpluginhelper.cpp b/shell_integration/dolphin/ownclouddolphinpluginhelper.cpp
173 +index 027e0e6..68c2a9c 100644
174 +--- a/shell_integration/dolphin/ownclouddolphinpluginhelper.cpp
175 ++++ b/shell_integration/dolphin/ownclouddolphinpluginhelper.cpp
176 +@@ -21,6 +21,7 @@
177 + #include <qcoreevent.h>
178 + #include <QFile>
179 + #include "ownclouddolphinpluginhelper.h"
180 ++#include "config.h"
181 +
182 + OwncloudDolphinPluginHelper* OwncloudDolphinPluginHelper::instance()
183 + {
184 +@@ -67,7 +68,10 @@ void OwncloudDolphinPluginHelper::tryConnect()
185 + return;
186 + }
187 + QString runtimeDir = QFile::decodeName(qgetenv("XDG_RUNTIME_DIR"));
188 +- QString socketPath = runtimeDir + QLatin1String("/ownCloud/socket");
189 ++ runtimeDir.append( QChar('/'));
190 ++ runtimeDir.append( QLatin1String(APPLICATION_SHORTNAME) );
191 ++
192 ++ const QString socketPath = runtimeDir + QLatin1String("/socket");
193 + _socket.connectToServer(socketPath);
194 + }
195 +
196
197 diff --git a/net-misc/cernbox-client/files/shell-integration-nautilus.patch b/net-misc/cernbox-client/files/shell-integration-nautilus.patch
198 new file mode 100644
199 index 0000000..67aee02
200 --- /dev/null
201 +++ b/net-misc/cernbox-client/files/shell-integration-nautilus.patch
202 @@ -0,0 +1,13 @@
203 +--- a/shell_integration/nautilus/CMakeLists.txt 2016-08-08 15:42:39.000000000 +0200
204 ++++ b/shell_integration/nautilus/CMakeLists.txt 2016-09-10 18:01:22.387950249 +0200
205 +@@ -19,8 +19,8 @@
206 + ERROR_VARIABLE errors OUTPUT_VARIABLE out)
207 +
208 +
209 +- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/syncstate.py DESTINATION ${DATADIR}/nautilus-python/extensions)
210 +- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/syncstate_nemo.py DESTINATION ${DATADIR}/nemo-python/extensions RENAME syncstate.py)
211 ++ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/syncstate.py DESTINATION ${DATADIR}/nautilus-python/extensions RENAME syncstate-${APPLICATION_SHORTNAME}.py)
212 ++ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/syncstate_nemo.py DESTINATION ${DATADIR}/nemo-python/extensions RENAME syncstate-${APPLICATION_SHORTNAME}.py)
213 +
214 +
215 +
216
217 diff --git a/net-misc/cernbox-client/metadata.xml b/net-misc/cernbox-client/metadata.xml
218 new file mode 100644
219 index 0000000..1a378d6
220 --- /dev/null
221 +++ b/net-misc/cernbox-client/metadata.xml
222 @@ -0,0 +1,27 @@
223 +<?xml version="1.0" encoding="UTF-8"?>
224 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
225 +<pkgmetadata>
226 + <maintainer type="project">
227 + <email>sci-physics@g.o</email>
228 + <name>Gentoo Physics Project</name>
229 + </maintainer>
230 + <longdescription lang="en">
231 + This service provides a cloud synchronisation service for all CERN users between personal devices (like a laptop) and a centrally-managed data storage.
232 +
233 + Available to all CERN users. This service provides synchronisation capabilities:
234 + everyone having a CERN computing account can use box to synchronise data (files and directories) across a series of (mobile) devices (smartphones, tablet, laptop, desktop).
235 + Major software distributions are supported (notably recent Mac, Linux and Windows).
236 +
237 + The service provides off-line eventually synchronised access to data and it is also meant for data sharing across collaborators (for example to share presentations or text documents).
238 +
239 + The service is not suitable for critical-path activities like data acquisition, world-wide data distribution and massive batch processing.
240 + </longdescription>
241 + <use>
242 + <flag name="dolphin">Install the <pkg>kde-apps/dolphin</pkg> extension</flag>
243 + <flag name="nautilus">Install the <pkg>gnome-base/nautilus</pkg> extension</flag>
244 + <flag name="sftp">Enable sftp transfer support via <pkg>net-libs/libssh</pkg></flag>
245 + </use>
246 + <upstream>
247 + <doc>http://cernbox.web.cern.ch/cernbox/00_getting_started/index.html</doc>
248 + </upstream>
249 +</pkgmetadata>