1 |
%global _hardened_build 1 |
2 |
|
3 |
Name: nextcloud-client |
4 |
Version: 2.2.4 |
5 |
Release: %mkrel 3 |
6 |
Summary: The Nextcloud Client |
7 |
Group: Archiving/Backup |
8 |
|
9 |
# -libs are LGPLv2+, rest GPLv2 |
10 |
License: LGPLv2+ and GPLv2 |
11 |
Url: https://nextcloud.com/install/#install-clients |
12 |
Source0: https://github.com/nextcloud/client_theming/archive/v%{version}.tar.gz |
13 |
Source1: https://download.owncloud.com/desktop/stable/owncloudclient-%{version}.tar.xz |
14 |
Source2: %{name}.appdata.xml |
15 |
Patch0: %{name}-2.2.3-syslibs.patch |
16 |
Patch1: %{name}-2.2.4-appshortname.patch |
17 |
|
18 |
BuildRequires: cmake |
19 |
BuildRequires: desktop-file-utils |
20 |
BuildRequires: doxygen |
21 |
BuildRequires: neon-devel |
22 |
BuildRequires: openssl-devel |
23 |
BuildRequires: python-sphinx |
24 |
BuildRequires: qtsingleapplication-qt5-devel |
25 |
BuildRequires: appstream-util |
26 |
|
27 |
BuildRequires: kf5-macros |
28 |
|
29 |
BuildRequires: cmake(KF5KIO) |
30 |
|
31 |
BuildRequires: cmake(Qt5Keychain) |
32 |
|
33 |
BuildRequires: pkgconfig(sqlite3) |
34 |
|
35 |
BuildRequires: pkgconfig(Qt5Xml) |
36 |
BuildRequires: pkgconfig(Qt5Concurrent) |
37 |
BuildRequires: pkgconfig(Qt5WebKitWidgets) |
38 |
BuildRequires: pkgconfig(Qt5DBus) |
39 |
BuildRequires: pkgconfig(Qt5Help) |
40 |
|
41 |
Provides: mirall = %{version}-%{release} |
42 |
Obsoletes: mirall < 1.8.0 |
43 |
|
44 |
Provides: owncloud-client = %version-%release |
45 |
Obsoletes: owncloud-client < 2.2.4-2 |
46 |
|
47 |
%description |
48 |
Nextcloud-client enables you to connect to your private Nextcloud Server. |
49 |
With it you can create folders in your home directory, and keep the contents |
50 |
of those folders synced with your Nextcloud server. Simply copy a file into |
51 |
the directory and the Nextcloud Client does the rest. |
52 |
|
53 |
%files |
54 |
%{_bindir}/nextcloud |
55 |
%{_bindir}/nextcloudcmd |
56 |
%{_datadir}/applications/nextcloud.desktop |
57 |
%{_datadir}/nextcloud/i18n/* |
58 |
%{_datadir}/icons/hicolor/*/apps/* |
59 |
%{_datadir}/appdata/%{name}.appdata.xml |
60 |
%{_sysconfdir}/Nextcloud/sync-exclude.lst |
61 |
|
62 |
#------------------------------------------------------------------------------ |
63 |
|
64 |
%package nautilus |
65 |
Summary: nextcloud client nautilus extension |
66 |
Requires: nautilus |
67 |
Requires: nautilus-python |
68 |
Requires: %{name} = %{version}-%{release} |
69 |
Provides: mirall-nautilus = %{version}-%{release} |
70 |
Obsoletes: mirall-nautilus < 1.8.0 |
71 |
|
72 |
%description nautilus |
73 |
The nextcloud desktop client nautilus extension. |
74 |
|
75 |
%files nautilus |
76 |
%{_datadir}/nautilus-python/extensions/* |
77 |
|
78 |
#------------------------------------------------------------------------------ |
79 |
|
80 |
%package nemo |
81 |
Summary: Nemo overlay icons |
82 |
Requires: nemo |
83 |
Requires: nemo-python |
84 |
Requires: %{name} = %{version}-%{release} |
85 |
|
86 |
%description nemo |
87 |
This package provides overlay icons to visualize the sync state |
88 |
in the nemo file manager. |
89 |
|
90 |
%files nemo |
91 |
%{_datadir}/nemo-python/extensions/* |
92 |
|
93 |
#------------------------------------------------------------------------------ |
94 |
|
95 |
%package dolphin |
96 |
Summary: Dolphin overlay icons |
97 |
Requires: dolphin |
98 |
Requires: %{name} = %{version}-%{release} |
99 |
|
100 |
%description dolphin |
101 |
The nextcloud desktop client dolphin extension. |
102 |
|
103 |
%files dolphin |
104 |
%{_libdir}/libnextclouddolphinpluginhelper.so |
105 |
%{_kf5_plugindir}/overlayicon/nextclouddolphinoverlayplugin.so |
106 |
%{_qt5_plugindir}/nextclouddolphinactionplugin.so |
107 |
%{_kf5_datadir}/kservices5/nextclouddolphinactionplugin.desktop |
108 |
|
109 |
#------------------------------------------------------------------------------ |
110 |
|
111 |
%define nextcloudsync_major 0 |
112 |
%define libnextcloudsync %mklibname nextcloudsync %nextcloudsync_major |
113 |
|
114 |
%package -n %libnextcloudsync |
115 |
Summary: The Nextcloud Client Libraries |
116 |
Group: System/Libraries |
117 |
|
118 |
%description -n %libnextcloudsync |
119 |
The Nextcloud Client Libraries |
120 |
|
121 |
%files -n %libnextcloudsync |
122 |
%{_libdir}/libnextcloudsync.so.%nextcloudsync_major |
123 |
%{_libdir}/libnextcloudsync.so.%version |
124 |
|
125 |
#------------------------------------------------------------------------------ |
126 |
|
127 |
%define libocsync_major 0 |
128 |
%define liblibocsync %mklibname libocsync %libocsync_major |
129 |
|
130 |
%package -n %liblibocsync |
131 |
Summary: The Nextcloud Client Libraries |
132 |
Group: System/Libraries |
133 |
|
134 |
%description -n %liblibocsync |
135 |
The Nextcloud Client Libraries |
136 |
|
137 |
|
138 |
%files -n %liblibocsync |
139 |
%_libdir/nextcloud/libocsync.so.%{libocsync_major} |
140 |
%_libdir/nextcloud/libocsync.so.%{version} |
141 |
#------------------------------------------------------------------------------ |
142 |
|
143 |
%package devel |
144 |
Summary: Development files for nextcloud-client |
145 |
License: LGPLv2+ |
146 |
Requires: %libnextcloudsync = %{version}-%{release} |
147 |
Requires: %liblibocsync = %{version}-%{release} |
148 |
Provides: %{name}-static = %{version}-%{release} |
149 |
Provides: mirall-devel = %{version}-%{release} |
150 |
Obsoletes: mirall-devel < 1.8.0 |
151 |
|
152 |
%description devel |
153 |
Development headers for use of the nextcloud-client library |
154 |
|
155 |
%files devel |
156 |
%{_libdir}/libnextcloudsync.so |
157 |
%{_includedir}/nextcloudsync/ |
158 |
%{_libdir}/libnextcloudsync.so |
159 |
%{_libdir}/nextcloud/libocsync.so |
160 |
|
161 |
#------------------------------------------------------------------------------ |
162 |
|
163 |
%prep |
164 |
%setup -q -n client_theming-%{version} |
165 |
%setup -T -D -a 1 -n client_theming-%{version} |
166 |
rm -Rf client |
167 |
mv owncloudclient-%{version} client |
168 |
%patch0 -p1 |
169 |
%patch1 -p1 |
170 |
rm -rf src/3rdparty/qtlockedfile src/3rdparty/qtsingleapplication |
171 |
|
172 |
|
173 |
%build |
174 |
#see https://www.openssl.org/docs/manmaster/crypto/OpenSSL_add_all_algorithms.html |
175 |
sed -i "s#SSLeay_add_all_algorithms#//OPENSSL_init_crypto#g" client/src/3rdparty/certificates/p12topem.cpp |
176 |
%cmake_kf5 .. -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed" -D OEM_THEME_DIR=`pwd`/../nextcloudtheme ../client |
177 |
make %{?_smp_mflags} |
178 |
|
179 |
|
180 |
%install |
181 |
pushd build |
182 |
make install DESTDIR=%{buildroot} |
183 |
popd |
184 |
%find_lang client |
185 |
mkdir -p %{buildroot}%{_datadir}/appdata/ |
186 |
install -m 644 %{SOURCE2} %{buildroot}%{_datadir}/appdata/%{name}.appdata.xml |
187 |
|
188 |
|
189 |
%check |
190 |
appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/%{name}.appdata.xml |
191 |
|
192 |
|