1 %include /usr/lib/rpm/macros.perl
2 Summary: High-performance mail store with imap and pop3
3 Summary(pl.UTF-8): Wysoko wydajny serwer IMAP i POP3
4 Summary(pt_BR.UTF-8): Um servidor de mail de alto desempenho que suporta IMAP e POP3
9 Group: Networking/Daemons
10 Source0: ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/%{name}-%{version}.tar.gz
11 # Source0-md5: ee2c300687994e4982c6af6aa154c742
13 Source2: cyrus-procmailrc
14 Source3: cyrus-deliver-wrapper.c
15 Source4: cyrus-user-procmailrc.template
16 Source5: %{name}-procmail+cyrus.mc
17 Source6: %{name}.logrotate
20 Source10: %{name}-pop.pamd
21 Source11: %{name}.init
23 Source13: cyrus-sync.init
24 Patch0: %{name}-et.patch
25 Patch1: %{name}-shared.patch
26 URL: http://cyrusimap.web.cmu.edu/imapd/
27 BuildRequires: autoconf >= 2.54
28 BuildRequires: automake
29 BuildRequires: cyrus-sasl-devel >= 1.5.27
30 BuildRequires: db-devel >= 4.1.25
32 BuildRequires: libcom_err-devel >= 1.21
33 BuildRequires: libtool
34 BuildRequires: net-snmp-devel
35 BuildRequires: openssl-devel >= 0.9.7d
36 BuildRequires: perl-devel >= 1:5.8.0
37 BuildRequires: rpm-perlprov
38 BuildRequires: rpmbuild(macros) >= 1.268
39 Requires(post,preun): /sbin/chkconfig
40 Requires(postun): /usr/sbin/userdel
41 Requires(pre): /bin/id
42 Requires(pre): /usr/sbin/useradd
43 Requires: %{name}-libs = %{version}-%{release}
44 Requires: rc-scripts >= 0.4.0.18
45 # needed by scripts from %{_bindir}
46 Requires: pam >= 0.79.0
47 Requires: perl-%{name} = %{version}-%{release}
55 Conflicts: courier-imap
56 Conflicts: courier-imap-common
57 Conflicts: courier-imap-pop3
59 Conflicts: imap-common
64 Conflicts: solid-pop3d
66 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
68 %define _libexecdir %{_libdir}/cyrus
71 The Cyrus IMAP server is a scalable enterprise mail system designed
72 for use from small to large enterprise environments using
73 standards-based technologies.
75 A full Cyrus IMAP implementation allows a seamless mail and bulletin
76 board environment to be set up across multiple servers. It differs
77 from other IMAP server implementations in that it is run on "sealed"
78 servers, where users are not normally permitted to log in. The mailbox
79 database is stored in parts of the filesystem that are private to the
80 Cyrus IMAP system. All user access to mail is through software using
81 the IMAP, POP3, or KPOP protocols.
83 %description -l pl.UTF-8
84 Serwer Cyrus IMAP jest skalowalnym systemem e-mail dla
85 przedsiębiorstwa, zaprojektowanym dla małych i dużych firm i
86 wykorzystującym oparte na standardach technologie.
88 Pełna implementacja Cyrus IMAP pozwala na bezproblemowe ustawienie
89 środowiska poczty i elektronicznej tablicy ogłoszeniowej na kilku
90 serwerach. Tym się różni od innych implementacji serwerów IMAP, że
91 jest uruchamiany na "opieczętowanych" serwerach, na które w normalnych
92 warunkach użytkownicy nie mogą się zalogować. Baza danych skrzynek
93 pocztowych jest przechowywana w tych częściach systemu plików, które
94 są dostępne jedynie dla systemu IMAP Cyrus. Wszelki dostęp do poczty
95 ma miejsce poprzez oprogramowanie wykorzystujące protokoły IMAP, POP3
98 %description -l pt_BR.UTF-8
99 O servidor IMAP Cyrus é um sistema de mail corporativo escalável
100 projetado para uso por pequenos a grandes ambientes corporativos
101 usando tecnologias baseadas em padrões abertos.
103 Uma implementação completa do Cyrus permite se configurar um ambiente
104 transparente de mail e bulletin board entre múltiplos servidores. Ele
105 difere de outros servidores IMAP por rodar em servidores "selados",
106 onde usuários não possuem normalmente a permissão de log in. O banco
107 de dados de caixas de mail é armazenado em partes do sistema de
108 arquivos que são privativos do sistema Cyrus. Todo o acesso de
109 usuários aos mails se dá através de software usando os protocolos
113 Summary: Shared cyrus-imapd libraries
114 Summary(pl.UTF-8): Współdzielone biblioteki cyrus-imapd
118 Shared cyrus-imapd libraries.
120 %description libs -l pl.UTF-8
121 Współdzielone biblioteki cyrus-imapd.
124 Summary: Header files for developing with cyrus-imapd libraries
125 Summary(pl.UTF-8): Pliki nagłówkowe do programowania z użyciem bibliotek cyrus-imapd
126 Group: Development/Libraries
127 Requires: %{name}-libs = %{version}-%{release}
130 This package provides the necessary header files files to allow you to
131 develop with cyrus-imapd libraries.
133 %description devel -l pl.UTF-8
134 Ten pakiet zawiera pliki nagłówkowe niezbędne do tworzenia
135 oprogramowania z wykorzystaniem bibliotek cyrus-imapd.
138 Summary: Static cyrus-imapd libraries
139 Summary(pl.UTF-8): Biblioteki statyczne cyrus-imapd
140 Group: Development/Libraries
141 Requires: %{name}-devel = %{version}-%{release}
144 Static cyrus-imapd libraries
146 %description static -l pl.UTF-8
147 Biblioteki statyczne cyrus-imapd
149 %package -n perl-%{name}
150 Summary: Perl interface to cyrus-imapd library
151 Summary(pl.UTF-8): Perlowy interfejs do biblioteki cyrus-imapd
152 Group: Development/Languages/Perl
153 Requires: %{name}-libs = %{version}-%{release}
155 %description -n perl-%{name}
156 Perl interface to cyrus-imapd library.
158 %description -n perl-%{name} -l pl.UTF-8
159 Perlowy interfejs do biblioteki cyrus-imapd.
166 rm -rf autom4te.cache
173 cp -f %{_datadir}/automake/config.* .
176 PATH=$PATH:$(pwd); export PATH
179 %{__aclocal} -I cmulocal
182 cp -f %{_datadir}/automake/config.* .
183 cp -f %{_datadir}/automake/install-sh .
187 --with-cyrus-prefix=%{_libexecdir} \
188 --with-service-path=%{_libexecdir} \
189 --with-com_err=/usr \
190 --with-perl=%{__perl} \
196 %{__cc} %{rpmcflags} \
197 -DLIBEXECDIR="\"%{_libexecdir}\"" %{rpmldflags} -Wall -o deliver-wrapper %{SOURCE3}
200 rm -rf $RPM_BUILD_ROOT
202 $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
203 $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,sysconfig/rc-inetd} \
204 $RPM_BUILD_ROOT/var/spool/imap/stage. \
205 $RPM_BUILD_ROOT/var/lib/imap/{user,quota,proc,log,msg,deliverdb/db,sieve,db,socket} \
206 $RPM_BUILD_ROOT/etc/{security,pam.d,rc.d/init.d}
208 touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
209 $RPM_BUILD_ROOT/var/lib/imap/faillog \
210 $RPM_BUILD_ROOT/etc/security/blacklist.imap \
211 $RPM_BUILD_ROOT/etc/security/blacklist.pop3
214 DESTDIR=$RPM_BUILD_ROOT \
215 CYRUS_USER="`id -u`" \
216 CYRUS_GROUP="`id -g`" \
219 install deliver-wrapper $RPM_BUILD_ROOT%{_libexecdir}/deliver-wrapper
221 install %{SOURCE1} %{SOURCE2} %{SOURCE4} %{SOURCE5} .
222 install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
223 install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/imapd.conf
224 install %{SOURCE9} $RPM_BUILD_ROOT/etc/pam.d/imap
225 install %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/pop
226 sed -e 's,/''usr/lib/cyrus,%{_libexecdir},' %{SOURCE11} > $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
227 sed -e 's,/''usr/lib/cyrus,%{_libexecdir},' %{SOURCE13} > $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-sync
228 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
230 mv -f $RPM_BUILD_ROOT%{_libexecdir}/master $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
231 mv -f $RPM_BUILD_ROOT%{_mandir}/man8/master.8 $RPM_BUILD_ROOT%{_mandir}/man8/cyrus-master.8
232 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/idled.8
233 rm -f $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
235 touch $RPM_BUILD_ROOT/etc/security/blacklist.{imap,pop3}
237 find $RPM_BUILD_ROOT%{perl_vendorarch} -name .packlist | xargs rm -v
240 for i in `%{__perl} -le 'print for "a".."z"'`; do
241 install -d $RPM_BUILD_ROOT%{_var}/lib/imap/user/$i
242 install -d $RPM_BUILD_ROOT%{_var}/lib/imap/quota/$i
243 install -d $RPM_BUILD_ROOT%{_var}/lib/imap/sieve/$i
244 install -d $RPM_BUILD_ROOT%{_var}/spool/imap/$i
248 rm -rf $RPM_BUILD_ROOT
251 %useradd -u 76 -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus
254 touch /var/lib/imap/faillog
255 chown cyrus:mail /var/lib/imap/faillog
256 chmod 640 /var/lib/imap/faillog
258 chattr +S . user quota user/* quota/* 2>/dev/null ||:
259 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null ||:
261 /sbin/chkconfig --add cyrus-imapd
262 %service cyrus-imapd restart "cyrus imap daemon"
263 %service cyrus-sync restart "cyrus replication service"
266 if [ "$1" = "0" ]; then
267 %service cyrus-imapd stop
268 %service cyrus-sync stop
269 /sbin/chkconfig --del cyrus-imapd
270 /sbin/chkconfig --del cyrus-sync
274 if [ "$1" = "0" ]; then
278 %post libs -p /sbin/ldconfig
279 %postun libs -p /sbin/ldconfig
282 %defattr(644,root,root,755)
283 %doc cyrus-README cyrus-procmailrc cyrus-user-procmailrc.template
284 %doc cyrus-imapd-procmail+cyrus.mc COPYRIGHT doc/*.html tools
285 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
286 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/cyrus-imapd
287 %attr(440,cyrus,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*
288 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.*
289 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
290 %attr(754,root,root) /etc/rc.d/init.d/cyrus-sync
291 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
292 %attr(755,root,root) %{_bindir}/*
294 %attr(4754,cyrus,mail) %{_libexecdir}/deliver
295 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
296 %attr(755,root,root) %{_libexecdir}/arbitron
297 %attr(755,root,root) %{_libexecdir}/chk_cyrus
298 %attr(755,root,root) %{_libexecdir}/ctl_cyrusdb
299 %attr(755,root,root) %{_libexecdir}/ctl_deliver
300 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
301 %attr(755,root,root) %{_libexecdir}/cvt_cyrusdb
302 %attr(755,root,root) %{_libexecdir}/cyr_dbtool
303 %attr(755,root,root) %{_libexecdir}/cyrdump
304 %attr(755,root,root) %{_libexecdir}/cyr_expire
305 %attr(755,root,root) %{_libexecdir}/cyrus-master
306 %attr(755,root,root) %{_libexecdir}/fetchnews
307 %attr(755,root,root) %{_libexecdir}/fud
308 %attr(755,root,root) %{_libexecdir}/imapd
309 %attr(755,root,root) %{_libexecdir}/ipurge
310 %attr(755,root,root) %{_libexecdir}/lmtpd
311 %attr(755,root,root) %{_libexecdir}/lmtpproxyd
312 %attr(755,root,root) %{_libexecdir}/make_md5
313 %attr(755,root,root) %{_libexecdir}/sync_client
314 %attr(755,root,root) %{_libexecdir}/sync_reset
315 %attr(755,root,root) %{_libexecdir}/sync_server
316 %attr(755,root,root) %{_libexecdir}/mbexamine
317 %attr(755,root,root) %{_libexecdir}/mbpath
318 %attr(755,root,root) %{_libexecdir}/nntpd
319 %attr(755,root,root) %{_libexecdir}/notifyd
320 %attr(755,root,root) %{_libexecdir}/pop3d
321 %attr(755,root,root) %{_libexecdir}/pop3proxyd
322 %attr(755,root,root) %{_libexecdir}/proxyd
323 %attr(755,root,root) %{_libexecdir}/quota
324 %attr(755,root,root) %{_libexecdir}/reconstruct
325 %attr(755,root,root) %{_libexecdir}/sievec
326 %attr(755,root,root) %{_libexecdir}/smmapd
327 %attr(755,root,root) %{_libexecdir}/squatter
328 %attr(755,root,root) %{_libexecdir}/timsieved
329 %attr(755,root,root) %{_libexecdir}/tls_prune
330 %attr(755,root,root) %{_libexecdir}/unexpunge
333 %attr(750,cyrus,mail) /var/spool/imap
334 %attr(750,cyrus,mail) %dir /var/lib/imap
335 %attr(750,cyrus,mail) %dir /var/lib/imap/deliverdb
336 %attr(750,cyrus,mail) /var/lib/imap/deliverdb/db
337 %attr(750,cyrus,mail) /var/lib/imap/quota
338 %attr(750,cyrus,mail) /var/lib/imap/user
339 %attr(750,cyrus,mail) /var/lib/imap/sieve
340 %attr(750,cyrus,mail) /var/lib/imap/log
341 %attr(750,cyrus,mail) /var/lib/imap/msg
342 %attr(750,cyrus,mail) /var/lib/imap/proc
343 %attr(750,cyrus,mail) /var/lib/imap/db
344 %attr(750,cyrus,mail) /var/lib/imap/socket
345 %attr(750,cyrus,mail) %config(noreplace) %verify(not md5 mtime size) /var/lib/imap/mailboxes
350 %defattr(644,root,root,755)
351 %attr(755,root,root) %{_libdir}/libcyrus.so.*.*.*
352 %attr(755,root,root) %{_libdir}/libcyrus_min.so.*.*.*
353 %attr(755,root,root) %ghost %{_libdir}/libcyrus.so.0
354 %attr(755,root,root) %ghost %{_libdir}/libcyrus_min.so.0
357 %defattr(644,root,root,755)
358 %attr(755,root,root) %{_libdir}/libcyrus.so
359 %attr(755,root,root) %{_libdir}/libcyrus_min.so
360 %{_libdir}/libcyrus.la
361 %{_libdir}/libcyrus_min.la
365 %defattr(644,root,root,755)
366 %{_libdir}/libcyrus.a
367 %{_libdir}/libcyrus_min.a
369 %files -n perl-%{name}
370 %defattr(644,root,root,755)
371 %{perl_vendorarch}/Cyrus
372 %dir %{perl_vendorarch}/auto/Cyrus
373 %dir %{perl_vendorarch}/auto/Cyrus/IMAP
374 %attr(755,root,root) %{perl_vendorarch}/auto/Cyrus/IMAP/IMAP.so
375 %{perl_vendorarch}/auto/Cyrus/IMAP/IMAP.bs
376 %dir %{perl_vendorarch}/auto/Cyrus/SIEVE
377 %dir %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve
378 %attr(755,root,root) %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve/managesieve.so
379 %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve/managesieve.bs