1 |
%define _disable_ld_as_needed 1 |
2 |
%define _disable_ld_no_undefined 1 |
3 |
%define major 0 |
4 |
%define libname %mklibname %{name} %{major} |
5 |
%define develname %mklibname %{name} -d |
6 |
|
7 |
%define beta_or_rc 0 |
8 |
%define actual_release 2 |
9 |
%define svnrevision 45875 |
10 |
%define with_clucene 1 |
11 |
%define with_ldap 1 |
12 |
%define with_xmlto 1 |
13 |
|
14 |
%define _requires_exceptions pear(debug.php)\\|pear(mapi/ |
15 |
%define _provides_exceptions pear(debug.php)\\|pear(mapi/ |
16 |
|
17 |
|
18 |
Summary: Zarafa Outlook Sharing and Open Source Collaboration |
19 |
Name: zarafa |
20 |
Version: 7.1.11 |
21 |
%if %{beta_or_rc} |
22 |
Release: %mkrel 0.svn%{svnrevision}.%{actual_release} |
23 |
%else |
24 |
Release: %mkrel %{actual_release} |
25 |
%endif |
26 |
# Red Hat Legal has been advised by email from Zarafa that no license is |
27 |
# required in order to use the letter string "zarafa" (combined with other |
28 |
# words) in the package naming, to refer to the software as "Zarafa" to |
29 |
# indicate its intended purpose, and to modify packages with bug fixes and |
30 |
# enhancements. |
31 |
License: AGPLv3 |
32 |
# |
33 |
# The zarafa website http://community.zarafa.com/ |
34 |
# states: |
35 |
# The community version is available in precompiled packages or as source code. |
36 |
# The source code is licensed under the Affero GPLv3 license. |
37 |
# |
38 |
Group: System/Servers |
39 |
URL: http://www.zarafa.com/ |
40 |
# http://www.zarafa.com/download-community -> "Zarafa Source Package" |
41 |
Source0: http://download.zarafa.com/community/final/7.1/%{version}-%{svnrevision}/sourcecode/zcp-%{version}.tar.gz |
42 |
Source1: %{name}.ini |
43 |
Source2: %{name}.logrotate |
44 |
Source3: %{name}-webaccess.conf |
45 |
Source4: %{name}.rpmlintrc |
46 |
Patch0: zarafa-7.1.11-rpath.patch |
47 |
Patch1: zarafa-7.1.10-kyotocabinet.patch |
48 |
BuildRequires: byacc |
49 |
BuildRequires: curl-devel |
50 |
BuildRequires: flex |
51 |
BuildRequires: gettext |
52 |
BuildRequires: libical-devel >= 0.42 |
53 |
BuildRequires: libvmime-devel >= 0.9.0 |
54 |
BuildRequires: libxml2-devel |
55 |
BuildRequires: mysql-devel >= 4.1 |
56 |
#BuildRequires: ncurses-devel |
57 |
BuildRequires: pkgconfig(ncursesw) |
58 |
BuildRequires: pam-devel |
59 |
BuildRequires: perl |
60 |
BuildRequires: perl-devel |
61 |
BuildRequires: php-devel >= 3:5.2.0 |
62 |
BuildRequires: swig |
63 |
BuildRequires: python-devel |
64 |
BuildRequires: boost-devel |
65 |
BuildRequires: libuuid-devel |
66 |
BuildRequires: kyotocabinet-devel |
67 |
%if %{with_clucene} |
68 |
BuildRequires: clucene-devel >= 0.9.20 |
69 |
%endif |
70 |
%if %{with_ldap} |
71 |
BuildRequires: openldap-devel |
72 |
%endif |
73 |
%if %{with_xmlto} |
74 |
BuildRequires: xmlto |
75 |
%endif |
76 |
# The normal zarafa package pulls in all of zarafa |
77 |
Requires: mysql |
78 |
Requires: locales-en |
79 |
Requires: zarafa-ical >= %{version}-%{release} |
80 |
Requires: zarafa-dagent >= %{version}-%{release} |
81 |
Requires: zarafa-gateway >= %{version}-%{release} |
82 |
Requires: zarafa-monitor >= %{version}-%{release} |
83 |
Requires: zarafa-server >= %{version}-%{release} |
84 |
Requires: zarafa-spooler >= %{version}-%{release} |
85 |
Requires: zarafa-utils >= %{version}-%{release} |
86 |
Requires: zarafa-config >= %{version}-%{release} |
87 |
Requires: zarafa-webaccess >= %{version}-%{release} |
88 |
|
89 |
%description |
90 |
Zarafa Outlook Sharing is a Microsoft Exchange replacement. The Open Source |
91 |
Collaboration provides an integration with your existing Linux mail server, |
92 |
native mobile phone support by ActiveSync compatibility and a webaccess with |
93 |
'Look & Feel' similar to Outlook using Ajax. Including an IMAP4 and a POP3 |
94 |
gateway as well as an iCal/CalDAV gateway, Zarafa can combine the usability |
95 |
with the stability and flexibility of a Linux server. |
96 |
|
97 |
The proven Zarafa groupware solution is using MAPI objects, provides a MAPI |
98 |
client library as well as programming interfaces for C++, PHP and Perl. The |
99 |
other Zarafa related packages need to be installed to gain all the features |
100 |
and benefits of Zarafa Outlook Sharing and Open Source Collaboration. |
101 |
|
102 |
|
103 |
%package client |
104 |
Summary: Zarafa Client Library |
105 |
Group: System/Servers |
106 |
Requires: zarafa-common >= %{version}-%{release} |
107 |
|
108 |
%description client |
109 |
Zarafa client libraries for use with integrated MAPI clients. |
110 |
|
111 |
%package common |
112 |
Summary: Zarafa common files |
113 |
Group: System/Servers |
114 |
|
115 |
%description common |
116 |
Common files and directories required by most Zarafa packages. |
117 |
|
118 |
%package dagent |
119 |
Summary: Zarafa Delivery Agent |
120 |
Group: System/Servers |
121 |
Requires: zarafa-client >= %{version}-%{release} |
122 |
Requires: zarafa-common >= %{version}-%{release} |
123 |
Requires(post): chkconfig |
124 |
Requires(preun):/sbin/service |
125 |
Requires(preun): chkconfig |
126 |
Requires(postun):/sbin/service |
127 |
|
128 |
%description dagent |
129 |
The delivery agent delivers e-mails into the Zarafa server. |
130 |
It can be used to trigger the local mailer or act as the LMTP |
131 |
server. |
132 |
|
133 |
%package -n %{develname} |
134 |
Summary: Development files for several Zarafa libraries |
135 |
Group: Development/C++ |
136 |
Requires: %{name} = %{version}-%{release}, pkgconfig |
137 |
Requires: zarafa-common = %{version}-%{release} |
138 |
Provides: %{name}-devel = %{version}-%{release} |
139 |
Conflicts: %{_lib}zarafa0 < 7.1.8-7 |
140 |
|
141 |
%description -n %{develname} |
142 |
The zarafa-devel package includes header files and libraries necessary for |
143 |
developing programs which use features from the Zarafa Outlook Sharing and |
144 |
Open Source Collaboration. The proven Zarafa groupware solution is using |
145 |
MAPI objects, provides a MAPI client library and programming interfaces for |
146 |
C++, PHP and Perl. |
147 |
|
148 |
%package gateway |
149 |
Summary: Zarafa Gateway server (POP3/IMAP access) |
150 |
Group: System/Servers |
151 |
Requires: zarafa-client >= %{version}-%{release} |
152 |
Requires: zarafa-common >= %{version}-%{release} |
153 |
Requires(post): chkconfig |
154 |
Requires(preun):/sbin/service |
155 |
Requires(preun):chkconfig |
156 |
Requires(postun):/sbin/service |
157 |
|
158 |
%description gateway |
159 |
The gateway enables other e-mail clients to connect through |
160 |
POP3 or IMAP to the Zarafa server to read their e-mail. With |
161 |
IMAP, it is also possible to view the contents of shared |
162 |
folders and subfolders. The gateway can be configured to |
163 |
listen for POP3, POP3S, IMAP and/or IMAPS. |
164 |
|
165 |
%package ical |
166 |
Summary: The Zarafa iCal/CalDAV gateway |
167 |
Group: System/Servers |
168 |
Requires: zarafa-client >= %{version}-%{release} |
169 |
Requires: zarafa-common >= %{version}-%{release} |
170 |
Requires(post): chkconfig |
171 |
Requires(preun):/sbin/service |
172 |
Requires(preun):chkconfig |
173 |
Requires(postun):/sbin/service |
174 |
Provides: zarafa-caldav = %{version}-%{release} |
175 |
|
176 |
%description ical |
177 |
The iCal/CalDAV gateway enables users to retrieve their |
178 |
calendar using iCalendar compliant clients. The iCal/CalDAV |
179 |
gateway can be configured to listen for HTTP and HTTPS |
180 |
requests. |
181 |
|
182 |
%package caldav |
183 |
Summary: The Zarafa iCal/CalDAV gateway |
184 |
Group: System/Servers |
185 |
Requires: zarafa-ical >= %{version}-%{release} |
186 |
|
187 |
%description caldav |
188 |
The iCal/CalDAV gateway enables users to retrieve their |
189 |
calendar using iCalendar compliant clients. The iCal/CalDAV |
190 |
gateway can be configured to listen for HTTP and HTTPS |
191 |
requests. |
192 |
|
193 |
%package monitor |
194 |
Summary: Zarafa Monitoring service |
195 |
Group: System/Servers |
196 |
Requires: zarafa-client >= %{version}-%{release} |
197 |
Requires: zarafa-common >= %{version}-%{release} |
198 |
Requires(post): chkconfig |
199 |
Requires(preun):/sbin/service |
200 |
Requires(preun):chkconfig |
201 |
Requires(postun):/sbin/service |
202 |
|
203 |
%description monitor |
204 |
The monitor checks user mailbox sizes. When a quotum is reached |
205 |
the monitor sends a quota notification email. |
206 |
|
207 |
%package server |
208 |
Summary: Zarafa Backend Server |
209 |
Group: System/Servers |
210 |
Requires: zarafa-common >= %{version}-%{release} |
211 |
Requires(post): chkconfig |
212 |
Requires(preun):/sbin/service |
213 |
Requires(preun):chkconfig |
214 |
Requires(postun):/sbin/service |
215 |
Provides: zarafa-config = %{version}-%{release} |
216 |
|
217 |
%description server |
218 |
The Zarafa groupware backend server |
219 |
|
220 |
%package spooler |
221 |
Summary: Zarafa Spooler Service |
222 |
Group: System/Servers |
223 |
Requires: zarafa-client >= %{version}-%{release} |
224 |
Requires: zarafa-common >= %{version}-%{release} |
225 |
Requires(post): chkconfig |
226 |
Requires(preun): /sbin/service |
227 |
Requires(preun): chkconfig |
228 |
Requires(postun): /sbin/service |
229 |
|
230 |
%description spooler |
231 |
The spooler sends all pending Zarafa e-mail to the recipients, |
232 |
from the Outbox of a user/all users. |
233 |
|
234 |
%package utils |
235 |
Summary: Zarafa Utilities |
236 |
Group: System/Servers |
237 |
Requires: zarafa-client >= %{version}-%{release} |
238 |
Requires: zarafa-common >= %{version}-%{release} |
239 |
|
240 |
%description utils |
241 |
Administration utilities for the Zarafa Groupware environment |
242 |
including reporting and password management. |
243 |
|
244 |
%package -n %{libname} |
245 |
Summary: Mapi libraries by Zarafa |
246 |
Group: System/Libraries |
247 |
Requires: zarafa-client >= %{version}-%{release} |
248 |
Requires(post): /sbin/ldconfig |
249 |
Requires(postun): /sbin/ldconfig |
250 |
|
251 |
%description -n %{libname} |
252 |
MAPI libraries by Zarafa. |
253 |
|
254 |
%package -n python-MAPI |
255 |
Summary: Python Mapi extension libraries by Zarafa |
256 |
Group: Development/Python |
257 |
Requires: python |
258 |
|
259 |
%description -n python-MAPI |
260 |
Python MAPI extension libraries by Zarafa. |
261 |
|
262 |
%if %{with perl} |
263 |
%package -n perl-MAPI |
264 |
Summary: The Perl MAPI extension by Zarafa |
265 |
Group: Development/Perl |
266 |
%rename perl-libmapi |
267 |
|
268 |
%description -n perl-MAPI |
269 |
The perl-MAPI package contains the Perl MAPI extension to provide access |
270 |
to Microsoft MAPI functions while using Perl. |
271 |
%endif |
272 |
|
273 |
%package -n php-mapi |
274 |
Summary: A PHP Mapi client by Zarafa |
275 |
Group: Development/PHP |
276 |
# Bug: Without mod_ssl, reloading httpd causes core dump |
277 |
Requires: apache-mod_ssl |
278 |
Requires: apache-mod_php >= 5.2 |
279 |
|
280 |
%description -n php-mapi |
281 |
PHP MAPI extension by Zarafa to enable MAPI communication in PHP. |
282 |
|
283 |
%if %{with_clucene} |
284 |
%package indexer |
285 |
Summary: The Zarafa Indexing service |
286 |
Group: System/Servers |
287 |
Requires: zarafa-common >= %{version}-%{release} |
288 |
Requires: catdoc |
289 |
Requires: xsltproc |
290 |
Requires: lynx |
291 |
Requires: unzip |
292 |
Requires: poppler |
293 |
Requires: file |
294 |
Requires(post): chkconfig |
295 |
Requires(preun):/sbin/service |
296 |
Requires(preun):chkconfig |
297 |
Requires(postun):/sbin/service |
298 |
|
299 |
%description indexer |
300 |
The zarafa-indexer package includes the Zarafa Indexing service for fast |
301 |
and full-text searching. Using CLucene search engine, this service makes |
302 |
an index per user of messages and attachments for the Zarafa server. At |
303 |
search queries, the server will use this index to quickly find messages, |
304 |
items and even in contents of attached documents. |
305 |
%endif |
306 |
|
307 |
%package webaccess |
308 |
Summary: Zarafa Webaccess featuring a 'Look & Feel' similar to Outlook |
309 |
Group: Development/PHP |
310 |
Requires: apache-mod_php >= 5.2 |
311 |
Requires: php-mapi >= %{version}-%{release} |
312 |
BuildArch: noarch |
313 |
Requires: php-pear |
314 |
Requires: php-iconv |
315 |
Requires: php-pear-Services_JSON |
316 |
Requires: php-pear-XML_Serializer |
317 |
|
318 |
|
319 |
%description webaccess |
320 |
Zarafa Webaccess features the familiar Outlook 'Look & Feel' interface |
321 |
and you can keep using the features in Outlook that have always allowed |
322 |
you to work efficiently. View your e-mail, calendar and contacts via a |
323 |
web browser. And opening your colleagues calendar or sending a meeting |
324 |
request is only a piece of cake. The Zarafa Webaccess is using the ajax |
325 |
technology to give a more interactive feeling to the users. |
326 |
|
327 |
%package archiver |
328 |
Summary: Manages zarafa archives and perfoms the archive operation |
329 |
Group: System/Servers |
330 |
Requires: zarafa-client >= %{version}-%{release} |
331 |
Requires: zarafa-common >= %{version}-%{release} |
332 |
Requires: zarafa-utils >= %{version}-%{release} |
333 |
|
334 |
|
335 |
|
336 |
%description archiver |
337 |
This tool is used to attach or detach archives to a users store. |
338 |
An archive is defined as a special non-active store or a folder inside such a |
339 |
store. |
340 |
|
341 |
On top of managing archives, this tool is used to perfom the actual archive |
342 |
operation Using the -u option, the archiver can be instructed to archive a |
343 |
single store or all stores. |
344 |
|
345 |
%prep |
346 |
%setup -q |
347 |
%patch0 -p1 -b .rpath |
348 |
touch -c -r aclocal.m4.rpath aclocal.m4 |
349 |
%patch1 -p1 -b .kyotocabinet |
350 |
|
351 |
%build |
352 |
#autoreconf -fi |
353 |
CFLAGS="%{optflags} -fno-strict-aliasing" \ |
354 |
%configure2_5x \ |
355 |
--with-userscript-prefix=%{_sysconfdir}/%{name}/userscripts \ |
356 |
--with-quotatemplate-prefix=%{_sysconfdir}/%{name}/quotamail \ |
357 |
--with-clucene-lib-prefix=%{_libdir} \ |
358 |
--with-clucene-include-prefix=%{_includedir} \ |
359 |
--enable-release \ |
360 |
--enable-swig \ |
361 |
--disable-static \ |
362 |
--enable-unicode \ |
363 |
--enable-python |
364 |
|
365 |
find swig -type f | xargs touch |
366 |
make |
367 |
|
368 |
%install |
369 |
make \ |
370 |
docdir=%{_datadir}/doc/%{name}/ \ |
371 |
datarootdir=%{_datadir} \ |
372 |
DESTDIR=%{buildroot} \ |
373 |
INSTALL='install -p' \ |
374 |
BUILT_SOURCES='' \ |
375 |
install \ |
376 |
install-ajax-webaccess |
377 |
|
378 |
# Nuke all leftovers from licensed, managed or other proprietary items |
379 |
rm -rf %{buildroot}%{_sysconfdir}/{%{name}/{license,licensed.cfg,report-ca},cron.daily/%{name}-client-update} |
380 |
rm -f %{buildroot}%{_mandir}/man?/{zarafa-{backup,restore,report,msr*,ldapms.cfg,licensed{,.cfg}},za-aclsync}.* |
381 |
|
382 |
# Move all the initscripts to their appropriate place and |
383 |
# ensure that all services are off by default at boot time |
384 |
rm -rf %{buildroot}%{_sysconfdir}/init.d/ |
385 |
mkdir -p %{buildroot}%{_sysconfdir}/rc.d/init.d/ |
386 |
for service in dagent gateway ical indexer monitor server spooler; do |
387 |
if [ -f installer/linux/%{name}-$service.init.rhel ]; then |
388 |
sed -e 's@345@-@' installer/linux/%{name}-$service.init.rhel > \ |
389 |
%{buildroot}%{_sysconfdir}/rc.d/init.d/%{name}-$service |
390 |
chmod 755 %{buildroot}%{_sysconfdir}/rc.d/init.d/%{name}-$service |
391 |
touch -c -r installer/linux/%{name}-$service.init.rhel %{buildroot}%{_sysconfdir}/rc.d/init.d/%{name}-$service |
392 |
fi |
393 |
done |
394 |
|
395 |
# Move the configuration files to their correct place and handle |
396 |
# /usr/lib vs. /usr/lib64 for all architectures correct and set |
397 |
# run_as_user, run_as_group and local_admin_users values correct |
398 |
for config in %{buildroot}%{_datadir}/doc/%{name}/example-config/*.cfg; do |
399 |
config=$(basename $config) |
400 |
if [ -f %{buildroot}%{_datadir}/doc/%{name}/example-config/$config ]; then |
401 |
sed -e 's@\(run_as_\(user\|group\)[[:space:]]*=\).*@\1 %{name}@' -e 's@/usr/lib/zarafa@%{_libdir}/%{name}@' \ |
402 |
-e 's@\(local_admin_users[[:space:]]*=[[:space:]]*root.*\)@\1 %{name}@' \ |
403 |
%{buildroot}%{_datadir}/doc/%{name}/example-config/$config > %{buildroot}%{_sysconfdir}/%{name}/$config |
404 |
chmod 640 %{buildroot}%{_sysconfdir}/%{name}/$config |
405 |
touch -c -r %{buildroot}%{_datadir}/doc/%{name}/example-config/$config %{buildroot}%{_sysconfdir}/%{name}/$config |
406 |
fi |
407 |
done |
408 |
|
409 |
# Move the logrotate configuration file to its correct place |
410 |
rm -f %{buildroot}%{_sysconfdir}/logrotate.d/* |
411 |
install -m644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} |
412 |
|
413 |
# Move the userscripts to their correct place and symlink them |
414 |
mkdir -p %{buildroot}%{_datadir}/%{name}/userscripts/ |
415 |
for userscript in companies_common.sh groups_common.sh users_common.sh \ |
416 |
createcompany creategroup createuser deletecompany deletegroup deleteuser; do |
417 |
mv -f %{buildroot}{%{_sysconfdir},%{_datadir}}/%{name}/userscripts/$userscript |
418 |
ln -sf ../../..%{_datadir}/%{name}/userscripts/$userscript %{buildroot}%{_sysconfdir}/%{name}/userscripts/$userscript |
419 |
done |
420 |
|
421 |
# Create the data directory and install some files into |
422 |
mkdir -p %{buildroot}%{_datadir}/%{name}/ |
423 |
install -m0755 installer/linux/db-{calc-storesize,convert-attachments-to-files} %{buildroot}%{_datadir}/%{name}/ |
424 |
install -m0755 installer/linux/ssl-certificates.sh %{buildroot}%{_datadir}/%{name}/ |
425 |
install -m0755 installer/linux/audit-parse.pl %{buildroot}%{_datadir}/%{name}/ |
426 |
%if %{with_ldap} |
427 |
install -m0755 installer/linux/{db-upgrade-objectsid-to-objectguid,ldap-switch-sendas}.pl %{buildroot}%{_datadir}/%{name}/ |
428 |
install -m0644 installer/ldap/%{name}.schema %{buildroot}%{_datadir}/%{name}/ |
429 |
%else |
430 |
rm -f %{buildroot}%{_sysconfdir}/%{name}/ldap.{active-directory,openldap,propmap}.cfg |
431 |
rm -f %{buildroot}%{_mandir}/man5/%{name}-ldap.cfg.5* |
432 |
%endif |
433 |
|
434 |
# Create the default log and lib directory for packaging |
435 |
mkdir -p %{buildroot}%{_localstatedir}/{log,lib}/%{name}/ |
436 |
|
437 |
# Remove all libtool .la files to avoid packaging of them |
438 |
rm -f %{buildroot}{%{_libdir}/{,php/modules,php4,%{name}},%{perl_vendorarch}/auto/MAPI}/*.la |
439 |
|
440 |
# Remove files that are anyway in %doc or %{_datadir}/%{name}/ |
441 |
rm -rf %{buildroot}%{_datadir}/doc/%{name}{,-indexer}/ |
442 |
|
443 |
# Remove unwanted/unused files that shouldn't exist anyway... |
444 |
rm -f %{buildroot}%{_sysconfdir}/sysconfig/%{name}-indexer |
445 |
|
446 |
# Move Indexer/CLucene related files to its correct places |
447 |
%if !%{with_clucene} |
448 |
rm -f %{buildroot}{%{_sysconfdir}/{rc.d/init.d,sysconfig},%{_mandir}/man?}/%{name}-indexer* |
449 |
rm -rf %{buildroot}{%{_sysconfdir}/%{name}/indexer.cfg,%{_datadir}/%{name}/indexerscripts/} |
450 |
%endif |
451 |
|
452 |
# Move the webaccess configuration file to its correct place |
453 |
mv -f %{buildroot}%{_sysconfdir}/%{name}/webaccess{-ajax,} |
454 |
rm -f %{buildroot}%{_datadir}/%{name}-webaccess/config.php |
455 |
ln -sf ../../..%{_sysconfdir}/%{name}/webaccess/config.php %{buildroot}%{_datadir}/%{name}-webaccess/config.php |
456 |
|
457 |
# Install the apache configuration file for webaccess |
458 |
mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf/webapps.d |
459 |
install -m0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/httpd/conf/webapps.d/%{name}-webaccess.conf |
460 |
|
461 |
# Move the webaccess plugins directory to its correct place |
462 |
rm -rf %{buildroot}{%{_datadir},%{_localstatedir}/lib}/%{name}-webaccess/plugins |
463 |
mkdir -p %{buildroot}%{_datadir}/%{name}-webaccess/plugins/ |
464 |
|
465 |
# Remove unwanted language connectors and webaccess files |
466 |
rm -f %{buildroot}%{_datadir}/%{name}-webaccess/client/widgets/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.{cfm,pl} |
467 |
rm -f %{buildroot}%{_datadir}/%{name}-webaccess/{.htaccess,%{name}-webaccess.conf} |
468 |
#rm -f %{buildroot}%{_libdir}/php/extensions/mapi.*a |
469 |
|
470 |
# bork |
471 |
install -m0644 doc/zarafa.1 %{buildroot}%{_mandir}/man1/ |
472 |
install -m0644 installer/linux/ldap.active-directory.cfg %{buildroot}%{_sysconfdir}/%{name}/ |
473 |
install -m0644 installer/linux/ldap.openldap.cfg %{buildroot}%{_sysconfdir}/%{name}/ |
474 |
|
475 |
# don't bundle PEAR |
476 |
|
477 |
# php-pear |
478 |
rm -f %{buildroot}%{_datadir}/%{name}-webaccess/server/PEAR/PEAR.php |
479 |
rm -f %{buildroot}%{_datadir}/%{name}-webaccess/server/PEAR/XML/Util.php |
480 |
|
481 |
# php-pear-XML_Serializer |
482 |
rm -f %{buildroot}%{_datadir}/%{name}-webaccess/server/PEAR/XML/Serializer.php |
483 |
rm -f %{buildroot}%{_datadir}/%{name}-webaccess/server/PEAR/XML/Unserializer.php |
484 |
|
485 |
# php-pear-Services_JSON |
486 |
rm -f %{buildroot}%{_datadir}/%{name}-webaccess/server/PEAR/JSON.php |
487 |
|
488 |
# php-pear-XML_Parser |
489 |
rm -rf %{buildroot}%{_datadir}/%{name}-webaccess/server/PEAR/XML/Parser |
490 |
rm -f %{buildroot}%{_datadir}/%{name}-webaccess/server/PEAR/XML/Parser.php |
491 |
|
492 |
# Remove files only required by proprietary web services |
493 |
rm -rf $RPM_BUILD_ROOT{%{_sysconfdir}/%{name}/ws.cfg,%{_datadir}/zarafa/timezones} |
494 |
|
495 |
%find_lang %{name} |
496 |
|
497 |
# XXX: why desn't spec-helper script take care of removing this..? |
498 |
find %{buildroot} -name \*.la | xargs rm -f |
499 |
|
500 |
# taken from mdv |
501 |
%pre common |
502 |
%_pre_useradd %{name} %{_localstatedir}/lib/%{name} /sbin/nologin |
503 |
|
504 |
%post dagent |
505 |
%_post_service %{name}-dagent %{name}-dagent.service |
506 |
# Ensure correct log file ownership after upgrade from official packages |
507 |
chown %{name}:%{name} %{_localstatedir}/log/%{name}/dagent.* > /dev/null 2>&1 || : |
508 |
|
509 |
%post ical |
510 |
%_post_service %{name}-ical %{name}-ical.service |
511 |
# Ensure correct log file ownership after upgrade from official packages |
512 |
chown %{name}:%{name} %{_localstatedir}/log/%{name}/ical.* > /dev/null 2>&1 || : |
513 |
|
514 |
%post gateway |
515 |
%_post_service %{name}-gateway %{name}-gateway.service |
516 |
# Ensure correct log file ownership after upgrade from official packages |
517 |
chown %{name}:%{name} %{_localstatedir}/log/%{name}/gateway.* > /dev/null 2>&1 || : |
518 |
|
519 |
%post monitor |
520 |
%_post_service %{name}-monitor %{name}-monitor.service |
521 |
# Ensure correct log file ownership after upgrade from official packages |
522 |
chown %{name}:%{name} %{_localstatedir}/log/%{name}/monitor.* > /dev/null 2>&1 || : |
523 |
|
524 |
%post server |
525 |
%_post_service %{name}-server %{name}-server.service |
526 |
# Ensure correct log file ownership after upgrade from official packages |
527 |
chown %{name}:%{name} %{_localstatedir}/log/%{name}/server.* > /dev/null 2>&1 || : |
528 |
|
529 |
%post spooler |
530 |
%_post_service %{name}-spooler %{name}-spooler.service |
531 |
# Ensure correct log file ownership after upgrade from official packages |
532 |
chown %{name}:%{name} %{_localstatedir}/log/%{name}/spooler.* > /dev/null 2>&1 || : |
533 |
|
534 |
%preun dagent |
535 |
if [ $1 -eq 0 ]; then |
536 |
/sbin/service %{name}-dagent stop > /dev/null 2>&1 || : |
537 |
chkconfig --del %{name}-dagent |
538 |
fi |
539 |
|
540 |
%preun ical |
541 |
if [ $1 -eq 0 ]; then |
542 |
/sbin/service %{name}-ical stop > /dev/null 2>&1 || : |
543 |
chkconfig --del %{name}-ical |
544 |
fi |
545 |
|
546 |
%preun gateway |
547 |
if [ $1 -eq 0 ]; then |
548 |
/sbin/service %{name}-gateway stop > /dev/null 2>&1 || : |
549 |
chkconfig --del %{name}-gateway |
550 |
fi |
551 |
|
552 |
%preun monitor |
553 |
if [ $1 -eq 0 ]; then |
554 |
/sbin/service %{name}-monitor stop > /dev/null 2>&1 || : |
555 |
chkconfig --del %{name}-monitor |
556 |
fi |
557 |
|
558 |
%preun server |
559 |
if [ $1 -eq 0 ]; then |
560 |
/sbin/service %{name}-server stop > /dev/null 2>&1 || : |
561 |
chkconfig --del %{name}-server |
562 |
fi |
563 |
|
564 |
%preun spooler |
565 |
if [ $1 -eq 0 ]; then |
566 |
/sbin/service %{name}-spooler stop > /dev/null 2>&1 || : |
567 |
chkconfig --del %{name}-spooler |
568 |
fi |
569 |
|
570 |
%postun dagent |
571 |
if [ $1 -ne 0 ]; then |
572 |
/sbin/service %{name}-dagent condrestart > /dev/null 2>&1 || : |
573 |
fi |
574 |
|
575 |
%postun ical |
576 |
if [ $1 -ne 0 ]; then |
577 |
/sbin/service %{name}-ical condrestart > /dev/null 2>&1 || : |
578 |
fi |
579 |
|
580 |
%postun gateway |
581 |
if [ $1 -ne 0 ]; then |
582 |
/sbin/service %{name}-gateway condrestart > /dev/null 2>&1 || : |
583 |
fi |
584 |
|
585 |
%postun monitor |
586 |
if [ $1 -ne 0 ]; then |
587 |
/sbin/service %{name}-monitor condrestart > /dev/null 2>&1 || : |
588 |
fi |
589 |
|
590 |
%postun server |
591 |
if [ $1 -ne 0 ]; then |
592 |
/sbin/service %{name}-server condrestart > /dev/null 2>&1 || : |
593 |
fi |
594 |
|
595 |
%postun spooler |
596 |
if [ $1 -ne 0 ]; then |
597 |
/sbin/service %{name}-spooler condrestart > /dev/null 2>&1 || : |
598 |
fi |
599 |
|
600 |
%files |
601 |
%doc installer/licenseagreement/AGPL-3 |
602 |
|
603 |
%files caldav |
604 |
%doc installer/licenseagreement/AGPL-3 |
605 |
|
606 |
%files client |
607 |
%doc installer/licenseagreement/AGPL-3 |
608 |
%{_libdir}/libzarafaclient.so |
609 |
%{_libdir}/libzarafacontacts.so |
610 |
%{_libdir}/libzarafasync.so.* |
611 |
|
612 |
%files common |
613 |
%doc installer/licenseagreement/AGPL-3 |
614 |
%dir %{_sysconfdir}/%{name}/ |
615 |
%dir %{_sysconfdir}/mapi/ |
616 |
%config(noreplace) %{_sysconfdir}/mapi/zarafa.inf |
617 |
%config(noreplace) %{_sysconfdir}/mapi/zcontacts.inf |
618 |
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name} |
619 |
%dir %{_libdir}/%{name}/ |
620 |
%{_mandir}/man1/%{name}.1* |
621 |
%{_mandir}/man1/zarafa-autorespond.1.* |
622 |
%{_mandir}/man1/zarafa-mailbox-permissions.1.* |
623 |
%{_mandir}/man1/zarafa-search.1.* |
624 |
%{_mandir}/man1/zarafa-set-oof.1.* |
625 |
%{_mandir}/man1/za-* |
626 |
%{_mandir}/man5/%{name}* |
627 |
%dir %{_datadir}/%{name}/ |
628 |
%dir %attr(0755,%{name},%{name}) %{_localstatedir}/lib/%{name}/ |
629 |
%dir %attr(0755,%{name},%{name}) %{_localstatedir}/log/%{name}/ |
630 |
|
631 |
%files dagent |
632 |
%doc installer/licenseagreement/AGPL-3 installer/linux/createuser.dotforward |
633 |
%{_bindir}/%{name}-autorespond |
634 |
%{_bindir}/%{name}-dagent |
635 |
%{_datadir}/%{name}-dagent/python/* |
636 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/dagent.cfg |
637 |
%config(noreplace) %{_sysconfdir}/%{name}/autorespond |
638 |
%{_sysconfdir}/rc.d/init.d/%{name}-dagent |
639 |
%{_mandir}/man1/%{name}-dagent.1* |
640 |
%{_mandir}/man5/%{name}-dagent.cfg.5* |
641 |
|
642 |
%files -n %{develname} |
643 |
%doc installer/licenseagreement/AGPL-3 |
644 |
%{_libdir}/libarchiver-core.so |
645 |
%{_libdir}/libarchiver.so |
646 |
%{_libdir}/libicalmapi.so |
647 |
%{_libdir}/libinetmapi.so |
648 |
%{_libdir}/libmapi.so |
649 |
%{_libdir}/libmapicalendar.so |
650 |
%{_libdir}/libmapitimezone.so |
651 |
%{_libdir}/libmapicalendar.so.* |
652 |
%{_libdir}/libmapitimezone.so.* |
653 |
%{_libdir}/libcommon_mapi.a |
654 |
%{_libdir}/libcommon_ssl.a |
655 |
%{_libdir}/libcommon_util.a |
656 |
%{_libdir}/libcommon_service.a |
657 |
%{_libdir}/libfreebusy.a |
658 |
%{_libdir}/libzarafasync.so |
659 |
%{_includedir}/icalmapi/ |
660 |
%{_includedir}/inetmapi/ |
661 |
%{_includedir}/mapi4linux/ |
662 |
%{_includedir}/libfreebusy/ |
663 |
%{_includedir}/libzarafasync |
664 |
%{_includedir}/%{name}/ |
665 |
%{_includedir}/libmapicalendar/ |
666 |
%{_includedir}/mapitimezone/ |
667 |
%{_libdir}/pkgconfig/%{name}.pc |
668 |
%{_mandir}/man1/zarafa-archiver.1.* |
669 |
%{_mandir}/man5/zarafa-archiver.cfg.5.* |
670 |
|
671 |
%files gateway |
672 |
%doc installer/licenseagreement/AGPL-3 |
673 |
%{_bindir}/%{name}-gateway |
674 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/gateway.cfg |
675 |
%{_sysconfdir}/rc.d/init.d/%{name}-gateway |
676 |
%{_mandir}/man1/%{name}-gateway.1* |
677 |
%{_mandir}/man5/%{name}-gateway.cfg.5* |
678 |
|
679 |
%files ical |
680 |
%doc installer/licenseagreement/AGPL-3 |
681 |
%{_bindir}/%{name}-ical |
682 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/ical.cfg |
683 |
%{_sysconfdir}/rc.d/init.d/%{name}-ical |
684 |
%{_mandir}/man1/%{name}-ical.1* |
685 |
%{_mandir}/man5/%{name}-ical.cfg.5* |
686 |
|
687 |
%files monitor |
688 |
%doc installer/licenseagreement/AGPL-3 |
689 |
%{_bindir}/%{name}-monitor |
690 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/monitor.cfg |
691 |
%dir %{_sysconfdir}/%{name}/quotamail/ |
692 |
%config(noreplace) %{_sysconfdir}/%{name}/quotamail/companywarning.mail |
693 |
%config(noreplace) %{_sysconfdir}/%{name}/quotamail/userhard.mail |
694 |
%config(noreplace) %{_sysconfdir}/%{name}/quotamail/usersoft.mail |
695 |
%config(noreplace) %{_sysconfdir}/%{name}/quotamail/userwarning.mail |
696 |
%{_sysconfdir}/rc.d/init.d/%{name}-monitor |
697 |
%{_mandir}/man1/%{name}-monitor.1* |
698 |
%{_mandir}/man5/%{name}-monitor.cfg.5* |
699 |
|
700 |
%files server -f %{name}.lang |
701 |
%doc installer/licenseagreement/AGPL-3 |
702 |
%{_bindir}/%{name}-server |
703 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/server.cfg |
704 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/unix.cfg |
705 |
%config(noreplace) %attr(0644,root,root) %{_sysconfdir}/sysconfig/zarafa |
706 |
%{_sysconfdir}/rc.d/init.d/%{name}-server |
707 |
%dir %{_sysconfdir}/%{name}/userscripts/ |
708 |
%{_sysconfdir}/%{name}/userscripts/createuser |
709 |
%{_sysconfdir}/%{name}/userscripts/creategroup |
710 |
%{_sysconfdir}/%{name}/userscripts/createcompany |
711 |
%{_sysconfdir}/%{name}/userscripts/deleteuser |
712 |
%{_sysconfdir}/%{name}/userscripts/deletegroup |
713 |
%{_sysconfdir}/%{name}/userscripts/deletecompany |
714 |
%{_sysconfdir}/%{name}/userscripts/*common.sh |
715 |
%dir %{_sysconfdir}/%{name}/userscripts/createuser.d/ |
716 |
%dir %{_sysconfdir}/%{name}/userscripts/creategroup.d/ |
717 |
%dir %{_sysconfdir}/%{name}/userscripts/createcompany.d/ |
718 |
%dir %{_sysconfdir}/%{name}/userscripts/deleteuser.d/ |
719 |
%dir %{_sysconfdir}/%{name}/userscripts/deletegroup.d/ |
720 |
%dir %{_sysconfdir}/%{name}/userscripts/deletecompany.d/ |
721 |
%config(noreplace) %{_sysconfdir}/%{name}/userscripts/createcompany.d/00createpublic |
722 |
%config(noreplace) %{_sysconfdir}/%{name}/userscripts/createuser.d/00createstore |
723 |
%{_datadir}/%{name}/userscripts/ |
724 |
%{_libdir}/%{name}/dbplugin.so |
725 |
%{_libdir}/%{name}/unixplugin.so |
726 |
%{_mandir}/man1/%{name}-server.1* |
727 |
%{_mandir}/man5/%{name}-server.cfg.5* |
728 |
%{_mandir}/man5/%{name}-unix.cfg.5* |
729 |
%if %{with_ldap} |
730 |
%doc installer/ldap/%{name}.schema |
731 |
%{_datadir}/%{name}/%{name}.schema |
732 |
%{_datadir}/%{name}/db-upgrade-objectsid-to-objectguid.pl |
733 |
%{_datadir}/%{name}/ldap-switch-sendas.pl |
734 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/ldap.active-directory.cfg |
735 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/ldap.openldap.cfg |
736 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/ldap.propmap.cfg |
737 |
%{_libdir}/%{name}/ldapplugin.so |
738 |
%{_mandir}/man5/%{name}-ldap.cfg.5* |
739 |
%endif |
740 |
%{_datadir}/%{name}/audit-parse.pl |
741 |
|
742 |
%files spooler |
743 |
%doc installer/licenseagreement/AGPL-3 |
744 |
%{_bindir}/%{name}-spooler |
745 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/spooler.cfg |
746 |
%{_sysconfdir}/rc.d/init.d/%{name}-spooler |
747 |
%{_datadir}/%name-spooler/python/* |
748 |
%{_mandir}/man1/%{name}-spooler.1* |
749 |
%{_mandir}/man5/%{name}-spooler.cfg.5* |
750 |
|
751 |
%files utils |
752 |
%doc installer/licenseagreement/AGPL-3 |
753 |
%{_bindir}/%{name}-mailbox-permissions |
754 |
%{_bindir}/%{name}-admin |
755 |
%{_bindir}/%{name}-mr-accept |
756 |
%{_bindir}/%{name}-set-oof |
757 |
%{_bindir}/%{name}-fsck |
758 |
%{_bindir}/%{name}-passwd |
759 |
%if %{with_clucene} |
760 |
%{_bindir}/%{name}-search |
761 |
%endif |
762 |
%{_bindir}/%{name}-stats |
763 |
%{_datadir}/%{name}/db-calc-storesize |
764 |
%{_datadir}/%{name}/db-convert-attachments-to-files |
765 |
%{_datadir}/%{name}/ssl-certificates.sh |
766 |
%{_mandir}/man1/%{name}-admin.1* |
767 |
%{_mandir}/man1/%{name}-fsck.1* |
768 |
%{_mandir}/man1/%{name}-passwd.1* |
769 |
%{_mandir}/man1/%{name}-stats.1* |
770 |
|
771 |
%files -n %{libname} |
772 |
%doc installer/licenseagreement/AGPL-3 |
773 |
%{_libdir}/libarchiver.so.* |
774 |
%{_libdir}/libarchiver-core.so.* |
775 |
%{_libdir}/libicalmapi.so.* |
776 |
%{_libdir}/libinetmapi.so.* |
777 |
%{_libdir}/libmapi.so.* |
778 |
|
779 |
%if %{with perl} |
780 |
%files -n perl-MAPI |
781 |
%dir %{perl_vendorarch}/auto/MAPICore/ |
782 |
%{perl_vendorarch}/auto/MAPICore/MAPICore.so |
783 |
%endif |
784 |
|
785 |
%files -n php-mapi |
786 |
%doc installer/licenseagreement/AGPL-3 |
787 |
%config(noreplace) %{_sysconfdir}/php.d/%{name}.ini |
788 |
%{_datadir}/php/mapi/ |
789 |
%{_libdir}/php/extensions/mapi.so |
790 |
|
791 |
%if %{with_clucene} |
792 |
%files indexer |
793 |
%doc installer/licenseagreement/AGPL-3 |
794 |
#%{_bindir}/%{name}-indexer |
795 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/search.cfg |
796 |
#%{_sysconfdir}/rc.d/init.d/%{name}-indexer |
797 |
%dir %{_sysconfdir}/%{name}/searchscripts/ |
798 |
%config(noreplace) %{_sysconfdir}/%{name}/searchscripts/attachments_parser.db |
799 |
%{_sysconfdir}/%{name}/searchscripts/attachments_parser |
800 |
%{_sysconfdir}/%{name}/searchscripts/xmltotext.xslt |
801 |
%{_sysconfdir}/%{name}/searchscripts/zmktemp |
802 |
#########%{_mandir}/man1/%{name}-indexer.1.* |
803 |
#######%{_mandir}/man5/%{name}-indexer.cfg.5* |
804 |
%endif |
805 |
|
806 |
%files webaccess |
807 |
%doc installer/licenseagreement/AGPL-3 |
808 |
%config(noreplace) %{_sysconfdir}/httpd/conf/webapps.d/%{name}-webaccess.conf |
809 |
%dir %{_sysconfdir}/%{name}/ |
810 |
%dir %{_sysconfdir}/%{name}/webaccess/ |
811 |
%config(noreplace) %{_sysconfdir}/%{name}/webaccess/config.php |
812 |
%{_datadir}/%{name}-webaccess/ |
813 |
%dir %{_localstatedir}/lib/%{name}-webaccess/ |
814 |
%attr(-,apache,apache) %dir %{_localstatedir}/lib/%{name}-webaccess/tmp/ |
815 |
|
816 |
%files -n python-MAPI |
817 |
%doc installer/licenseagreement/AGPL-3 |
818 |
%{py_platsitedir}/*MAPI* |
819 |
%{py_platsitedir}/icalmapi* |
820 |
%{py_platsitedir}/inetmapi* |
821 |
%{py_platsitedir}/_icalmapi* |
822 |
%{py_platsitedir}/_inetmapi* |
823 |
%{py_platsitedir}/_licenseclient* |
824 |
%{py_platsitedir}/licenseclient.py* |
825 |
%{py_platsitedir}/_mapicalendar.so |
826 |
%{py_platsitedir}/_mapitimezone.so |
827 |
%{py_platsitedir}/mapicalendar.py* |
828 |
%{py_platsitedir}/mapitimezone.py* |
829 |
|
830 |
|
831 |
|
832 |
%files archiver |
833 |
%doc installer/licenseagreement/AGPL-3 |
834 |
%config(noreplace) %attr(0640,%{name},%{name}) %{_sysconfdir}/%{name}/archiver.cfg |
835 |
%{_bindir}/%{name}-archiver |