1 %include /usr/lib/rpm/macros.perl
2 Summary: high-performance mail store with imap and pop3
3 Summary(pl): Wysoko wydajny serwer IMAP i POP3
8 Group: Networking/Daemons
9 Source0: ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/%{name}-%{version}.tar.gz
11 Source2: cyrus-procmailrc
12 Source3: cyrus-deliver-wrapper.c
13 Source4: cyrus-user-procmailrc.template
14 Source5: %{name}-procmail+cyrus.mc
15 Source6: %{name}.logrotate
18 Source10: %{name}-pop.pamd
19 Source11: %{name}.init
21 Patch0: %{name}-snmp.patch
22 Patch1: %{name}-mandir.patch
23 Patch2: %{name}-paths.patch
24 Patch3: %{name}-overquota.patch
25 Patch4: http://www.imasy.or.jp/~ume/ipv6/%{name}-2.0.16-ipv6-20010728.diff.gz
26 Patch5: %{name}-et.patch
27 Patch6: %{name}-ac250.patch
28 Patch7: %{name}-db3.patch
29 Patch8: %{name}-ipv6.m4.patch
30 URL: http://andrew2.andrew.cmu.edu/cyrus/imapd/
32 BuildRequires: e2fsprogs-devel >= 1.21
33 BuildRequires: cyrus-sasl-devel >= 1.5.27
34 BuildRequires: db3-devel >= 3.1.17
36 BuildRequires: openssl-devel >= 0.9.6a
37 BuildRequires: perl-devel >= 5.6.1
38 BuildRequires: ucd-snmp-devel >= 4.2.3
39 BuildRequires: autoconf
40 BuildRequires: automake
42 Prereq: /sbin/chkconfig
45 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47 Conflicts: imap-common
52 Conflicts: solid-pop3d
57 %define _libexecdir %{_prefix}/lib/cyrus
60 The Cyrus IMAP server is a scaleable enterprise mail system designed
61 for use from small to large enterprise environments using
62 standards-based technologies.
64 A full Cyrus IMAP implementation allows a seamless mail and bulletin
65 board environment to be set up across multiple servers. It differs
66 from other IMAP server implementations in that it is run on "sealed"
67 servers, where users are not normally permitted to log in. The mailbox
68 database is stored in parts of the filesystem that are private to the
69 Cyrus IMAP system. All user access to mail is through software using
70 the IMAP, POP3, or KPOP protocols.
73 Serwer Cyrus IMAP jest skalowalnym systemem e-mail dla
74 przedsiêbiorstwa, zaprojektowanym dla ma³ych i du¿ych firm i
75 wykorzystuj±cym oparte na standardach technologie.
77 Pe³na implementacja Cyrus IMAP pozwala na bezproblemowe ustawienie
78 ¶rodowiska poczty i elektronicznej tablicy og³oszeniowej na kilku
79 serwerach. Tym siê ró¿ni od innych implementacji serwerów IMAP, ¿e
80 jest uruchamiany na "opieczêtowanych" serwerach, na które w normalnych
81 waunkach u¿ytkownicy nie mog± siê zalogowaæ. Baza danych skrzynek
82 pocztowych jest pzrechowywana w tych czê¶ciach systemu plików, które
83 s± dostêpne jedynie dla systemu IMAP Cyrus. Wszelki dostêp do poczty
84 ma miejsce poprzez oprogramowanie wykorzystuj±ce protoko³y IMAP, POP3
106 PATH=$PATH:`pwd`; export PATH
115 --with-cyrus-prefix=%{_libexecdir} \
119 %{__cc} %{rpmcflags} \
120 -DLIBEXECDIR=\"%{_libexecdir}\" %{rpmldflags} -Wall -o deliver-wrapper %{SOURCE3}
123 rm -rf $RPM_BUILD_ROOT
125 $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
126 $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,sysconfig/rc-inetd} \
127 $RPM_BUILD_ROOT/var/spool/imap/stage. \
128 $RPM_BUILD_ROOT/var/lib/imap/{user,quota,proc,log,msg,deliverdb/db,sieve,db,socket} \
129 $RPM_BUILD_ROOT/etc/{security,pam.d,rc.d/init.d}
131 touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
132 $RPM_BUILD_ROOT/var/lib/imap/faillog \
133 $RPM_BUILD_ROOT/etc/security/blacklist.imap \
134 $RPM_BUILD_ROOT/etc/security/blacklist.pop
136 %{__make} install DESTDIR=$RPM_BUILD_ROOT CYRUS_USER="`id -u`" CYRUS_GROUP="`id -g`" mandir=%{_mandir}
138 install deliver-wrapper $RPM_BUILD_ROOT%{_libexecdir}/deliver-wrapper
140 install %{SOURCE1} %{SOURCE2} %{SOURCE4} %{SOURCE5} .
141 install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
142 install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/imapd.conf
143 install %{SOURCE9} $RPM_BUILD_ROOT/etc/pam.d/imap
144 install %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/pop
145 install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
146 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
148 mv -f $RPM_BUILD_ROOT%{_libexecdir}/bin/* $RPM_BUILD_ROOT%{_libexecdir}
149 mv -f $RPM_BUILD_ROOT%{_libexecdir}/master $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
150 mv -f $RPM_BUILD_ROOT%{_mandir}/man8/master.8 $RPM_BUILD_ROOT%{_mandir}/man8/cyrus-master.8
151 rm -rf $RPM_BUILD_ROOT%{_libexecdir}/bin
153 touch $RPM_BUILD_ROOT/etc/security/blacklist.{imap,pop}
155 find $RPM_BUILD_ROOT%{perl_sitearch} -name .packlist -exec rm {} \;
157 gzip -9nf cyrus-README cyrus-procmailrc cyrus-user-procmailrc.template \
158 cyrus-imapd-procmail+cyrus.mc COPYRIGHT
162 cd $RPM_BUILD_ROOT/var
164 foreach \$i ("a".."z")
166 mkdir "lib/imap/user/\$i", 0755;
167 mkdir "lib/imap/quota/\$i", 0755;
168 mkdir "lib/imap/sieve/\$i", 0755;
169 mkdir "spool/imap/\$i", 0755;
175 if [ -z "`id -u cyrus 2>/dev/null`" ]; then
176 /usr/sbin/useradd -u 76 -r -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus 1>&2
180 /sbin/chkconfig --add cyrus-imapd
181 touch /var/lib/imap/faillog
182 chown cyrus.mail /var/lib/imap/faillog
183 chmod 640 /var/lib/imap/faillog
185 chattr +S . user quota user/* quota/* 2>/dev/null
186 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null
187 if [ -f /var/lock/subsys/cyrus-imapd ]; then
188 /etc/rc.d/init.d/cyrus-imapd restart 1>&2
190 echo "Run \"/etc/rc.d/init.d/cyrus-imapd start\" to start cyrus imap daemon."
194 if [ "$1" = "0" ]; then
195 if [ -f /var/lock/subsys/cyrus-imapd ]; then
196 /etc/rc.d/init.d/cyrus-imapd stop 1>&2
198 /sbin/chkconfig --del cyrus-imapd
202 if [ "$1" = "0" ]; then
203 /usr/sbin/userdel cyrus
207 rm -rf $RPM_BUILD_ROOT
210 %defattr(644,root,root,755)
212 %config %{_sysconfdir}/*.conf
213 %attr(640,root,root) /etc/logrotate.d/cyrus-imapd
214 %attr(440,cyrus,root) %config(noreplace) %verify(not size md5 mtime) /etc/pam.d/*
215 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/security/blacklist.*
216 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
217 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
218 %attr(755,root,root) %{_bindir}/*
219 %attr(4754,cyrus,mail) %{_libexecdir}/deliver
220 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
221 %attr(755,root,root) %{_libexecdir}/ctl_deliver
222 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
223 %attr(755,root,root) %{_libexecdir}/cyrdump
224 %attr(755,root,root) %{_libexecdir}/feedcyrus
225 %attr(755,root,root) %{_libexecdir}/fud
226 %attr(755,root,root) %{_libexecdir}/imapd
227 %attr(755,root,root) %{_libexecdir}/ipurge
228 %attr(755,root,root) %{_libexecdir}/lmtpd
229 %attr(755,root,root) %{_libexecdir}/cyrus-master
230 %attr(755,root,root) %{_libexecdir}/mbpath
231 %attr(755,root,root) %{_libexecdir}/pop3d
232 %attr(755,root,root) %{_libexecdir}/quota
233 %attr(755,root,root) %{_libexecdir}/reconstruct
234 %attr(755,root,root) %{_libexecdir}/timsieved
236 %{perl_sitearch}/Cyrus
237 %{perl_sitearch}/auto/Cyrus
239 %attr(750,cyrus,mail) /var/spool/imap
240 %attr(750,cyrus,mail) %dir /var/lib/imap
241 %attr(750,cyrus,mail) %dir /var/lib/imap/deliverdb
242 %attr(750,cyrus,mail) /var/lib/imap/deliverdb/db
243 %attr(750,cyrus,mail) /var/lib/imap/quota
244 %attr(750,cyrus,mail) /var/lib/imap/user
245 %attr(750,cyrus,mail) /var/lib/imap/sieve
246 %attr(750,cyrus,mail) /var/lib/imap/log
247 %attr(750,cyrus,mail) /var/lib/imap/msg
248 %attr(750,cyrus,mail) /var/lib/imap/proc
249 %attr(750,cyrus,mail) /var/lib/imap/db
250 %attr(750,cyrus,mail) /var/lib/imap/socket
251 %attr(750,cyrus,mail) %config(noreplace) %verify(not size md5 mtime) /var/lib/imap/mailboxes