1 %include /usr/lib/rpm/macros.perl
2 Summary: high-performance mail store with imap and pop3
6 Copyright: academic/research
7 Group: Networking/Daemons
8 Group(pl): Sieciowe/Serwery
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
19 Source10: %{name}-pop.pamd
20 Source11: %{name}.init
22 Patch0: %{name}-snmp.patch
23 Patch1: %{name}-mandir.patch
24 URL: http://andrew2.andrew.cmu.edu/cyrus/imapd/
26 BuildRequires: cyrus-sasl-devel
27 #BuildRequires: tcl-devel >= 8.0
28 BuildRequires: openssl-devel
29 BuildRequires: perl >= 5.6.0
30 BuildRequires: db3-devel >= 3.1.17
35 Conflicts: solid-pop3d
39 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
41 %define _libexecdir %{_prefix}/lib/cyrus
44 The Cyrus IMAP server is a scaleable enterprise mail system designed
45 for use from small to large enterprise environments using
46 standards-based technologies.
48 A full Cyrus IMAP implementation allows a seamless mail and bulletin
49 board environment to be set up across multiple servers. It differs
50 from other IMAP server implementations in that it is run on "sealed"
51 servers, where users are not normally permitted to log in. The mailbox
52 database is stored in parts of the filesystem that are private to the
53 Cyrus IMAP system. All user access to mail is through software using
54 the IMAP, POP3, or KPOP protocols.
56 Note that this package can be used by ISPs and other to provide mail
57 services, but it may not be distributed as part of a commercial
61 Serwer Cyrus IMAP jest skalowalnym systemem e-mail dla
62 przedsiêbiorstwa, zaprojektowanym dla ma³ych i du¿ych firm i
63 wykorzystuj±cym oparte na standardach technologie.
65 Pe³na implementacja Cyrus IMAP pozwala na bezproblemowe ustawienie
66 ¶rodowiska poczty i elektronicznej tablicy og³oszeniowej na kilku
67 serwerach. Tym siê ró¿ni od innych implementacji serwerów IMAP, ¿e
68 jest uruchamiany na "opieczêtowanych" serwerach, na które w normalnych
69 waunkach u¿ytkownicy nie mog± siê zalogowaæ. Baza danych skrzynek
70 pocztowych jest pzrechowywana w tych czê¶ciach systemu plików, które
71 s± dostêpne jedynie dla systemu IMAP Cyrus. Wszelki dostêp do poczty
72 ma miejsce poprzez oprogramowanie wykorzystuj±ce protoko³y IMAP, POP3
75 Nale¿y zwróciæ uwagê na fakt, ¿e pakiet ten mo¿e byæ wykorzystywany
76 przez ISP, nie mo¿e byæ jednak rozpowszechniany jako czê¶æ
77 komercyjnego produktu.
88 export PATH=$PATH:`pwd`
97 %{__cc} $RPM_OPT_FLAGS -DLIBEXECDIR=\"%{_libexecdir}\" -s -Wall -o deliver-wrapper %{SOURCE3}
100 rm -rf $RPM_BUILD_ROOT
103 $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
104 $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,cron.daily,sysconfig/rc-inetd} \
105 $RPM_BUILD_ROOT/var/spool/imap/stage. \
106 $RPM_BUILD_ROOT/var/lib/imap/{user,quota,proc,log,msg,deliverdb,sieve,db,socket} \
107 $RPM_BUILD_ROOT/etc/{security,pam.d,rc.d/init.d}
109 touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
110 $RPM_BUILD_ROOT/var/lib/imap/faillog \
111 $RPM_BUILD_ROOT/etc/security/blacklist.imap \
112 $RPM_BUILD_ROOT/etc/security/blacklist.pop
114 %{__make} install DESTDIR=$RPM_BUILD_ROOT CYRUS_USER="`id -u`" CYRUS_GROUP="`id -g`" mandir=%{_mandir}
116 install deliver-wrapper $RPM_BUILD_ROOT%{_prefix}/cyrus/bin/deliver-wrapper
122 install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
123 install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/imapd.conf
124 install %{SOURCE8} $RPM_BUILD_ROOT/etc/cron.daily/cyrus-imapd
125 install %{SOURCE9} $RPM_BUILD_ROOT/etc/pam.d/imap
126 install %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/pop
127 install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
128 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
130 mv $RPM_BUILD_ROOT%{_prefix}/cyrus/bin/* $RPM_BUILD_ROOT%{_libexecdir}
131 mv $RPM_BUILD_ROOT%{_libexecdir}/master $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
133 gzip -9nf cyrus-README cyrus-procmailrc cyrus-user-procmailrc.template \
134 cyrus-imapd-procmail+cyrus.mc
138 cd $RPM_BUILD_ROOT/var
140 foreach \$i ("a".."z")
142 mkdir "lib/imap/user/\$i", 0755;
143 mkdir "lib/imap/quota/\$i", 0755;
144 mkdir "lib/imap/sieve/\$i", 0755;
145 mkdir "spool/imap/\$i", 0755;
151 if [ -z "`id -u cyrus 2>/dev/null`" ]; then
152 /usr/sbin/useradd -u 76 -r -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus 1>&2
156 /sbin/chkconfig --add cyrus-imapd
157 touch /var/lib/imap/faillog
158 chown cyrus.mail /var/lib/imap/faillog
159 chmod 640 /var/lib/imap/faillog
161 chattr +S . user quota user/* quota/* 2>/dev/null
162 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null
163 if [ -f /var/lock/subsys/cyrus-imapd ]; then
164 /etc/rc.d/init.d/cyrus-imapd restart 1>&2
166 echo "Run \"/etc/rc.d/init.d/cyrus-imapd start\" to start apache http daemon."
170 if [ "$1" = "0" ]; then
171 if [ -f /var/lock/subsys/cyrus-imapd ]; then
172 /etc/rc.d/init.d/cyrus-imapd stop 1>&2
174 /sbin/chkconfig --del cyrus-imapd
178 if [ "$1" = "0" ]; then
179 /usr/sbin/userdel cyrus
183 rm -rf $RPM_BUILD_ROOT
186 %defattr(644,root,root,755)
188 %config %{_sysconfdir}/imapd.conf
189 %attr(640,root,root) %config(noreplace) /etc/logrotate.d/cyrus-imapd
190 %attr(440,cyrus,root) %config(noreplace) %verify(not size md5 mtime) /etc/pam.d/*
191 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
192 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
193 %attr(755,root,root) /etc/cron.daily/cyrus-imapd
194 %attr(755,root,root) %{_bindir}/*
195 %attr(4750,cyrus,mail) %{_libexecdir}/deliver
196 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
197 %attr(755,root,root) %{_libexecdir}/ctl_deliver
198 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
199 %attr(755,root,root) %{_libexecdir}/feedcyrus
200 %attr(755,root,root) %{_libexecdir}/fud
201 %attr(755,root,root) %{_libexecdir}/imapd
202 %attr(755,root,root) %{_libexecdir}/ipurge
203 %attr(755,root,root) %{_libexecdir}/lmtpd
204 %attr(755,root,root) %{_libexecdir}/cyrus-master
205 %attr(755,root,root) %{_libexecdir}/mbpath
206 %attr(755,root,root) %{_libexecdir}/pop3d
207 %attr(755,root,root) %{_libexecdir}/quota
208 %attr(755,root,root) %{_libexecdir}/reconstruct
209 %attr(755,root,root) %{_libexecdir}/timsieved
211 %dir %{perl_sitearch}/Cyrus
212 %{perl_sitearch}/Cyrus/*.pm
213 %dir %{perl_sitearch}/Cyrus/IMAP
214 %{perl_sitearch}/Cyrus/IMAP/*.pm
215 %dir %{perl_sitearch}/Cyrus/SIEVE
216 %{perl_sitearch}/Cyrus/SIEVE/*.pm
217 %dir %{perl_sitearch}/auto/Cyrus
218 %dir %{perl_sitearch}/auto/Cyrus/IMAP
219 %{perl_sitearch}/auto/Cyrus/IMAP/*.so
220 %{perl_sitearch}/auto/Cyrus/IMAP/*.bs
221 %dir %{perl_sitearch}/auto/Cyrus/SIEVE
222 %dir %{perl_sitearch}/auto/Cyrus/SIEVE/acap
223 %{perl_sitearch}/auto/Cyrus/SIEVE/acap/*.so
224 %{perl_sitearch}/auto/Cyrus/SIEVE/acap/*.bs
225 %dir %{perl_sitearch}/auto/Cyrus/SIEVE/managesieve
226 %{perl_sitearch}/auto/Cyrus/SIEVE/managesieve/*.so
227 %{perl_sitearch}/auto/Cyrus/SIEVE/managesieve/*.bs
229 %attr(750,cyrus,mail) /var/spool/imap
230 %attr(750,cyrus,mail) %dir /var/lib/imap
231 %attr(640,cyrus,mail) /var/lib/imap/deliverdb
232 %attr(640,cyrus,mail) /var/lib/imap/quota
233 %attr(640,cyrus,mail) /var/lib/imap/user
234 %attr(640,cyrus,mail) /var/lib/imap/sieve
235 %attr(640,cyrus,mail) /var/lib/imap/log
236 %attr(640,cyrus,mail) /var/lib/imap/msg
237 %attr(640,cyrus,mail) /var/lib/imap/proc
238 %attr(640,cyrus,mail) /var/lib/imap/db
239 %attr(640,cyrus,mail) /var/lib/imap/socket
240 %attr(640,cyrus,mail) %config(noreplace) %verify(not size md5 mtime) /var/lib/imap/mailboxes