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: 32888c5120edeb2867d6283fedbdb7d5
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}-mandir.patch
26 Patch1: %{name}-et.patch
27 Patch2: %{name}-shared.patch
28 URL: http://andrew2.andrew.cmu.edu/cyrus/imapd/
29 BuildRequires: autoconf
30 BuildRequires: automake
31 BuildRequires: cyrus-sasl-devel >= 1.5.27
32 BuildRequires: db-devel >= 4.1.25
34 BuildRequires: libcom_err-devel >= 1.21
35 BuildRequires: libtool
36 BuildRequires: openssl-devel >= 0.9.7d
37 BuildRequires: perl-devel >= 1:5.8.0
38 #BuildRequires: ucd-snmp-devel >= 4.2.6
40 Requires(pre): /usr/sbin/useradd
41 Requires(postun): /usr/sbin/userdel
42 Requires(post,preun): /sbin/chkconfig
43 Requires: %{name}-libs = %{version}-%{release}
44 Requires: pam >= 0.77.3
51 Conflicts: courier-imap
52 Conflicts: courier-imap-common
53 Conflicts: courier-imap-pop3
55 Conflicts: imap-common
60 Conflicts: solid-pop3d
62 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
64 %define _libexecdir %{_libdir}/cyrus
67 The Cyrus IMAP server is a scalable enterprise mail system designed
68 for use from small to large enterprise environments using
69 standards-based technologies.
71 A full Cyrus IMAP implementation allows a seamless mail and bulletin
72 board environment to be set up across multiple servers. It differs
73 from other IMAP server implementations in that it is run on "sealed"
74 servers, where users are not normally permitted to log in. The mailbox
75 database is stored in parts of the filesystem that are private to the
76 Cyrus IMAP system. All user access to mail is through software using
77 the IMAP, POP3, or KPOP protocols.
80 Serwer Cyrus IMAP jest skalowalnym systemem e-mail dla
81 przedsiêbiorstwa, zaprojektowanym dla ma³ych i du¿ych firm i
82 wykorzystuj±cym oparte na standardach technologie.
84 Pe³na implementacja Cyrus IMAP pozwala na bezproblemowe ustawienie
85 ¶rodowiska poczty i elektronicznej tablicy og³oszeniowej na kilku
86 serwerach. Tym siê ró¿ni od innych implementacji serwerów IMAP, ¿e
87 jest uruchamiany na "opieczêtowanych" serwerach, na które w normalnych
88 waunkach u¿ytkownicy nie mog± siê zalogowaæ. Baza danych skrzynek
89 pocztowych jest pzrechowywana w tych czê¶ciach systemu plików, które
90 s± dostêpne jedynie dla systemu IMAP Cyrus. Wszelki dostêp do poczty
91 ma miejsce poprzez oprogramowanie wykorzystuj±ce protoko³y IMAP, POP3
95 O servidor IMAP Cyrus é um sistema de mail corporativo escalável
96 projetado para uso por pequenos a grandes ambientes corporativos
97 usando tecnologias baseadas em padrões abertos.
99 Uma implementação completa do Cyrus permite se configurar um ambiente
100 transparente de mail e bulletin board entre múltiplos servidores. Ele
101 difere de outros servidores IMAP por rodar em servidores "selados",
102 onde usuários não possuem normalmente a permissão de log in. O banco
103 de dados de caixas de mail é armazenado em partes do sistema de
104 arquivos que são privativos do sistema Cyrus. Todo o acesso de
105 usuários aos mails se dá através de software usando os protocolos
109 Summary: Shared cyrus-imapd libraries
110 Summary(pl): Wspó³dzielone biblioteki cyrus-imapd
114 Shared cyrus-imapd libraries.
116 %description libs -l pl
117 Wspó³dzielone biblioteki cyrus-imapd.
120 Summary: Header files for developing with cyrus-imapd libraries
121 Summary(pl): Pliki nag³ówkowe do programowania z u¿yciem bibliotek cyrus-imapd
122 Group: Development/Libraries
123 Requires: %{name}-libs = %{version}-%{release}
126 This package provides the necessary header files files to allow you to
127 develop with cyrus-imapd libraries.
129 %description devel -l pl
130 Ten pakiet zawiera pliki nag³ówkowe niezbêdne do tworzenia
131 oprogramowania z wykorzystaniem bibliotek cyrus-imapd.
134 Summary: Static cyrus-imapd libraries
135 Summary(pl): Biblioteki statyczne cyrus-imapd
136 Group: Development/Libraries
137 Requires: %{name}-devel = %{version}-%{release}
140 Static cyrus-imapd libraries
142 %description static -l pl
143 Biblioteki statyczne cyrus-imapd
145 %package -n perl-%{name}
146 Summary: Perl interface to cyrus-imapd library
147 Summary(pl): Perlowy interfejs do biblioteki cyrus-imapd
148 Group: Development/Languages/Perl
149 Requires: %{name}-libs = %{version}-%{release}
151 %description -n perl-%{name}
152 Perl interface to cyrus-imapd library.
154 %description -n perl-%{name} -l pl
155 Perlowy interfejs do biblioteki cyrus-imapd.
163 rm -rf autom4te.cache
171 PATH=$PATH:`pwd`; export PATH
174 %{__aclocal} -I cmulocal
177 cp -f %{_datadir}/automake/config.* .
178 cp -f %{_datadir}/automake/install-sh .
182 --with-cyrus-prefix=%{_libexecdir} \
183 --with-service-path=%{_libexecdir} \
184 --with-com_err=/usr \
185 --with-perl=%{__perl}
189 %{__cc} %{rpmcflags} \
190 -DLIBEXECDIR="\"%{_libexecdir}\"" %{rpmldflags} -Wall -o deliver-wrapper %{SOURCE3}
193 rm -rf $RPM_BUILD_ROOT
195 $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
196 $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,sysconfig/rc-inetd} \
197 $RPM_BUILD_ROOT/var/spool/imap/stage. \
198 $RPM_BUILD_ROOT/var/lib/imap/{user,quota,proc,log,msg,deliverdb/db,sieve,db,socket} \
199 $RPM_BUILD_ROOT/etc/{security,pam.d,rc.d/init.d}
201 touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
202 $RPM_BUILD_ROOT/var/lib/imap/faillog \
203 $RPM_BUILD_ROOT/etc/security/blacklist.imap \
204 $RPM_BUILD_ROOT/etc/security/blacklist.pop
207 DESTDIR=$RPM_BUILD_ROOT \
208 CYRUS_USER="`id -u`" \
209 CYRUS_GROUP="`id -g`" \
212 install deliver-wrapper $RPM_BUILD_ROOT%{_libexecdir}/deliver-wrapper
214 install %{SOURCE1} %{SOURCE2} %{SOURCE4} %{SOURCE5} .
215 install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
216 install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/imapd.conf
217 install %{SOURCE9} $RPM_BUILD_ROOT/etc/pam.d/imap
218 install %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/pop
219 install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
220 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
222 mv -f $RPM_BUILD_ROOT%{_libexecdir}/master $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
223 mv -f $RPM_BUILD_ROOT%{_mandir}/man8/master.8 $RPM_BUILD_ROOT%{_mandir}/man8/cyrus-master.8
224 rm -rf $RPM_BUILD_ROOT%{_mandir}/man8/idled.8
226 touch $RPM_BUILD_ROOT/etc/security/blacklist.{imap,pop}
228 find $RPM_BUILD_ROOT%{perl_vendorarch} -name .packlist -exec rm {} \;
231 for i in `%{__perl} -le 'print for "a".."z"'`; do
232 mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/user/$i
233 mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/quota/$i
234 mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/lib/imap/sieve/$i
235 mkdir -p -m 0755 $RPM_BUILD_ROOT%{_var}/spool/imap/$i
239 rm -rf $RPM_BUILD_ROOT
242 if [ -n "`id -u cyrus 2>/dev/null`" ]; then
243 if [ "`id -u cyrus`" != "76" ]; then
244 echo "Error: user cyrus doesn't have uid=76. Correct this before installing cyrus-imapd." 1>&2
248 /usr/sbin/useradd -u 76 -r -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus 1>&2
252 /sbin/chkconfig --add cyrus-imapd
253 touch /var/lib/imap/faillog
254 chown cyrus:mail /var/lib/imap/faillog
255 chmod 640 /var/lib/imap/faillog
257 chattr +S . user quota user/* quota/* 2>/dev/null
258 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null
259 if [ -f /var/lock/subsys/cyrus-imapd ]; then
260 /etc/rc.d/init.d/cyrus-imapd restart 1>&2
262 echo "Run \"/etc/rc.d/init.d/cyrus-imapd start\" to start cyrus imap daemon."
266 if [ "$1" = "0" ]; then
267 if [ -f /var/lock/subsys/cyrus-imapd ]; then
268 /etc/rc.d/init.d/cyrus-imapd stop 1>&2
270 /sbin/chkconfig --del cyrus-imapd
274 if [ "$1" = "0" ]; then
275 /usr/sbin/userdel cyrus
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 size mtime md5) %{_sysconfdir}/*.conf
286 %attr(640,root,root) /etc/logrotate.d/cyrus-imapd
287 %attr(440,cyrus,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/*
288 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/security/blacklist.*
289 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
290 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
291 %attr(755,root,root) %{_bindir}/*
292 %attr(4754,cyrus,mail) %{_libexecdir}/deliver
293 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
294 %attr(755,root,root) %{_libexecdir}/arbitron
295 %attr(755,root,root) %{_libexecdir}/chk_cyrus
296 %attr(755,root,root) %{_libexecdir}/ctl_deliver
297 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
298 %attr(755,root,root) %{_libexecdir}/ctl_cyrusdb
299 %attr(755,root,root) %{_libexecdir}/cvt_cyrusdb
300 %attr(755,root,root) %{_libexecdir}/cyr_expire
301 %attr(755,root,root) %{_libexecdir}/cyrdump
302 %attr(755,root,root) %{_libexecdir}/cyrus-master
303 %attr(755,root,root) %{_libexecdir}/fud
304 %attr(755,root,root) %{_libexecdir}/imapd
305 %attr(755,root,root) %{_libexecdir}/ipurge
306 %attr(755,root,root) %{_libexecdir}/lmtpd
307 %attr(755,root,root) %{_libexecdir}/mbexamine
308 %attr(755,root,root) %{_libexecdir}/mbpath
309 %attr(755,root,root) %{_libexecdir}/notifyd
310 %attr(755,root,root) %{_libexecdir}/pop3d
311 %attr(755,root,root) %{_libexecdir}/pop3proxyd
312 %attr(755,root,root) %{_libexecdir}/quota
313 %attr(755,root,root) %{_libexecdir}/reconstruct
314 %attr(755,root,root) %{_libexecdir}/sievec
315 %attr(755,root,root) %{_libexecdir}/smmapd
316 %attr(755,root,root) %{_libexecdir}/squatter
317 %attr(755,root,root) %{_libexecdir}/timsieved
318 %attr(755,root,root) %{_libexecdir}/tls_prune
320 %attr(750,cyrus,mail) /var/spool/imap
321 %attr(750,cyrus,mail) %dir /var/lib/imap
322 %attr(750,cyrus,mail) %dir /var/lib/imap/deliverdb
323 %attr(750,cyrus,mail) /var/lib/imap/deliverdb/db
324 %attr(750,cyrus,mail) /var/lib/imap/quota
325 %attr(750,cyrus,mail) /var/lib/imap/user
326 %attr(750,cyrus,mail) /var/lib/imap/sieve
327 %attr(750,cyrus,mail) /var/lib/imap/log
328 %attr(750,cyrus,mail) /var/lib/imap/msg
329 %attr(750,cyrus,mail) /var/lib/imap/proc
330 %attr(750,cyrus,mail) /var/lib/imap/db
331 %attr(750,cyrus,mail) /var/lib/imap/socket
332 %attr(750,cyrus,mail) %config(noreplace) %verify(not size md5 mtime) /var/lib/imap/mailboxes
337 %defattr(644,root,root,755)
338 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
341 %defattr(644,root,root,755)
342 %attr(755,root,root) %{_libdir}/lib*.so
347 %defattr(644,root,root,755)
350 %files -n perl-%{name}
351 %defattr(644,root,root,755)
352 %{perl_vendorarch}/Cyrus
353 %dir %{perl_vendorarch}/auto/Cyrus
354 %dir %{perl_vendorarch}/auto/Cyrus/IMAP
355 %attr(755,root,root) %{perl_vendorarch}/auto/Cyrus/IMAP/IMAP.so
356 %{perl_vendorarch}/auto/Cyrus/IMAP/IMAP.bs
357 %dir %{perl_vendorarch}/auto/Cyrus/SIEVE
358 %dir %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve
359 %attr(755,root,root) %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve/managesieve.so
360 %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve/managesieve.bs