2 # - use net-snmp (it wants ucd-snmp)
3 %include /usr/lib/rpm/macros.perl
4 Summary: High-performance mail store with imap and pop3
5 Summary(pl): Wysoko wydajny serwer IMAP i POP3
6 Summary(pt_BR): Um servidor de mail de alto desempenho que suporta IMAP e POP3
11 Group: Networking/Daemons
12 Source0: ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/%{name}-%{version}.tar.gz
13 # Source0-md5: 70b3bba526a8d36d3bb23a87d37e9188
15 Source2: cyrus-procmailrc
16 Source3: cyrus-deliver-wrapper.c
17 Source4: cyrus-user-procmailrc.template
18 Source5: %{name}-procmail+cyrus.mc
19 Source6: %{name}.logrotate
22 Source10: %{name}-pop.pamd
23 Source11: %{name}.init
25 Patch0: %{name}-et.patch
26 Patch1: %{name}-shared.patch
27 URL: http://andrew2.andrew.cmu.edu/cyrus/imapd/
28 BuildRequires: autoconf >= 2.54
29 BuildRequires: automake
30 BuildRequires: cyrus-sasl-devel >= 1.5.27
31 BuildRequires: db-devel >= 4.1.25
33 BuildRequires: libcom_err-devel >= 1.21
34 BuildRequires: libtool
35 BuildRequires: openssl-devel >= 0.9.7d
36 BuildRequires: perl-devel >= 1:5.8.0
37 BuildRequires: rpmbuild(macros) >= 1.202
38 #BuildRequires: ucd-snmp-devel >= 4.2.6
40 Requires(pre): /bin/id
41 Requires(pre): /usr/sbin/useradd
42 Requires(postun): /usr/sbin/userdel
43 Requires(post,preun): /sbin/chkconfig
44 Requires: %{name}-libs = %{version}-%{release}
45 # needed by scripts from %{_bindir}
46 Requires: perl-%{name} = %{version}-%{release}
47 Requires: pam >= 0.77.3
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.
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
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): Wspó³dzielone biblioteki cyrus-imapd
118 Shared cyrus-imapd libraries.
120 %description libs -l pl
121 Wspó³dzielone biblioteki cyrus-imapd.
124 Summary: Header files for developing with cyrus-imapd libraries
125 Summary(pl): 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
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): Biblioteki statyczne cyrus-imapd
140 Group: Development/Libraries
141 Requires: %{name}-devel = %{version}-%{release}
144 Static cyrus-imapd libraries
146 %description static -l pl
147 Biblioteki statyczne cyrus-imapd
149 %package -n perl-%{name}
150 Summary: Perl interface to cyrus-imapd library
151 Summary(pl): 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
159 Perlowy interfejs do biblioteki cyrus-imapd.
166 rm -rf autom4te.cache
174 PATH=$PATH:`pwd`; export PATH
177 %{__aclocal} -I cmulocal
180 cp -f %{_datadir}/automake/config.* .
181 cp -f %{_datadir}/automake/install-sh .
185 --with-cyrus-prefix=%{_libexecdir} \
186 --with-service-path=%{_libexecdir} \
187 --with-com_err=/usr \
188 --with-perl=%{__perl} \
193 %{__cc} %{rpmcflags} \
194 -DLIBEXECDIR="\"%{_libexecdir}\"" %{rpmldflags} -Wall -o deliver-wrapper %{SOURCE3}
197 rm -rf $RPM_BUILD_ROOT
199 $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
200 $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,sysconfig/rc-inetd} \
201 $RPM_BUILD_ROOT/var/spool/imap/stage. \
202 $RPM_BUILD_ROOT/var/lib/imap/{user,quota,proc,log,msg,deliverdb/db,sieve,db,socket} \
203 $RPM_BUILD_ROOT/etc/{security,pam.d,rc.d/init.d}
205 touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
206 $RPM_BUILD_ROOT/var/lib/imap/faillog \
207 $RPM_BUILD_ROOT/etc/security/blacklist.imap \
208 $RPM_BUILD_ROOT/etc/security/blacklist.pop
211 DESTDIR=$RPM_BUILD_ROOT \
212 CYRUS_USER="`id -u`" \
213 CYRUS_GROUP="`id -g`" \
216 install deliver-wrapper $RPM_BUILD_ROOT%{_libexecdir}/deliver-wrapper
218 install %{SOURCE1} %{SOURCE2} %{SOURCE4} %{SOURCE5} .
219 install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
220 install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/imapd.conf
221 install %{SOURCE9} $RPM_BUILD_ROOT/etc/pam.d/imap
222 install %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/pop
223 install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
224 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
226 mv -f $RPM_BUILD_ROOT%{_libexecdir}/master $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
227 mv -f $RPM_BUILD_ROOT%{_mandir}/man8/master.8 $RPM_BUILD_ROOT%{_mandir}/man8/cyrus-master.8
228 rm -rf $RPM_BUILD_ROOT%{_mandir}/man8/idled.8
230 touch $RPM_BUILD_ROOT/etc/security/blacklist.{imap,pop}
232 find $RPM_BUILD_ROOT%{perl_vendorarch} -name .packlist -exec rm {} \;
235 for i in `%{__perl} -le 'print for "a".."z"'`; do
236 mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/user/$i
237 mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/quota/$i
238 mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/sieve/$i
239 mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/spool/imap/$i
243 rm -rf $RPM_BUILD_ROOT
246 %useradd -u 76 -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus
249 /sbin/chkconfig --add cyrus-imapd
250 touch /var/lib/imap/faillog
251 chown cyrus:mail /var/lib/imap/faillog
252 chmod 640 /var/lib/imap/faillog
254 chattr +S . user quota user/* quota/* 2>/dev/null ||:
255 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null ||:
256 if [ -f /var/lock/subsys/cyrus-imapd ]; then
257 /etc/rc.d/init.d/cyrus-imapd restart 1>&2
259 echo "Run \"/etc/rc.d/init.d/cyrus-imapd start\" to start cyrus imap daemon."
263 if [ "$1" = "0" ]; then
264 if [ -f /var/lock/subsys/cyrus-imapd ]; then
265 /etc/rc.d/init.d/cyrus-imapd stop 1>&2
267 /sbin/chkconfig --del cyrus-imapd
271 if [ "$1" = "0" ]; then
275 %post libs -p /sbin/ldconfig
276 %postun libs -p /sbin/ldconfig
279 %defattr(644,root,root,755)
280 %doc cyrus-README cyrus-procmailrc cyrus-user-procmailrc.template
281 %doc cyrus-imapd-procmail+cyrus.mc COPYRIGHT doc/*.html tools
282 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.conf
283 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/cyrus-imapd
284 %attr(440,cyrus,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/*
285 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/security/blacklist.*
286 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
287 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
288 %attr(755,root,root) %{_bindir}/*
289 %attr(4754,cyrus,mail) %{_libexecdir}/deliver
290 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
291 %attr(755,root,root) %{_libexecdir}/arbitron
292 %attr(755,root,root) %{_libexecdir}/chk_cyrus
293 %attr(755,root,root) %{_libexecdir}/ctl_deliver
294 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
295 %attr(755,root,root) %{_libexecdir}/ctl_cyrusdb
296 %attr(755,root,root) %{_libexecdir}/cvt_cyrusdb
297 %attr(755,root,root) %{_libexecdir}/cyr_expire
298 %attr(755,root,root) %{_libexecdir}/cyrdump
299 %attr(755,root,root) %{_libexecdir}/cyrus-master
300 %attr(755,root,root) %{_libexecdir}/fud
301 %attr(755,root,root) %{_libexecdir}/imapd
302 %attr(755,root,root) %{_libexecdir}/ipurge
303 %attr(755,root,root) %{_libexecdir}/lmtpd
304 %attr(755,root,root) %{_libexecdir}/mbexamine
305 %attr(755,root,root) %{_libexecdir}/mbpath
306 %attr(755,root,root) %{_libexecdir}/notifyd
307 %attr(755,root,root) %{_libexecdir}/pop3d
308 %attr(755,root,root) %{_libexecdir}/pop3proxyd
309 %attr(755,root,root) %{_libexecdir}/quota
310 %attr(755,root,root) %{_libexecdir}/reconstruct
311 %attr(755,root,root) %{_libexecdir}/sievec
312 %attr(755,root,root) %{_libexecdir}/smmapd
313 %attr(755,root,root) %{_libexecdir}/squatter
314 %attr(755,root,root) %{_libexecdir}/timsieved
315 %attr(755,root,root) %{_libexecdir}/tls_prune
316 %attr(755,root,root) %{_libexecdir}/fetchnews
317 %attr(755,root,root) %{_libexecdir}/nntpd
319 %attr(750,cyrus,mail) /var/spool/imap
320 %attr(750,cyrus,mail) %dir /var/lib/imap
321 %attr(750,cyrus,mail) %dir /var/lib/imap/deliverdb
322 %attr(750,cyrus,mail) /var/lib/imap/deliverdb/db
323 %attr(750,cyrus,mail) /var/lib/imap/quota
324 %attr(750,cyrus,mail) /var/lib/imap/user
325 %attr(750,cyrus,mail) /var/lib/imap/sieve
326 %attr(750,cyrus,mail) /var/lib/imap/log
327 %attr(750,cyrus,mail) /var/lib/imap/msg
328 %attr(750,cyrus,mail) /var/lib/imap/proc
329 %attr(750,cyrus,mail) /var/lib/imap/db
330 %attr(750,cyrus,mail) /var/lib/imap/socket
331 %attr(750,cyrus,mail) %config(noreplace) %verify(not size md5 mtime) /var/lib/imap/mailboxes
336 %defattr(644,root,root,755)
337 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
340 %defattr(644,root,root,755)
341 %attr(755,root,root) %{_libdir}/lib*.so
346 %defattr(644,root,root,755)
349 %files -n perl-%{name}
350 %defattr(644,root,root,755)
351 %{perl_vendorarch}/Cyrus
352 %dir %{perl_vendorarch}/auto/Cyrus
353 %dir %{perl_vendorarch}/auto/Cyrus/IMAP
354 %attr(755,root,root) %{perl_vendorarch}/auto/Cyrus/IMAP/IMAP.so
355 %{perl_vendorarch}/auto/Cyrus/IMAP/IMAP.bs
356 %dir %{perl_vendorarch}/auto/Cyrus/SIEVE
357 %dir %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve
358 %attr(755,root,root) %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve/managesieve.so
359 %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve/managesieve.bs