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
7 License: academic/research
8 Group: Networking/Daemons
9 Group(de): Netzwerkwesen/Server
10 Group(pl): Sieciowe/Serwery
11 Source0: ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/%{name}-%{version}.tar.gz
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 Patch0: %{name}-snmp.patch
24 Patch1: %{name}-mandir.patch
25 Patch2: %{name}-paths.patch
26 Patch3: %{name}-overquota.patch
27 Patch4: http://www.imasy.or.jp/~ume/ipv6/cyrus-imapd-2.0.16-ipv6-20010728.diff.gz
28 Patch5: %{name}-et.patch
29 Patch6: %{name}-ac250.patch
30 Patch7: %{name}-db3.patch
31 Patch8: %{name}-ipv6.m4.patch
32 URL: http://andrew2.andrew.cmu.edu/cyrus/imapd/
34 BuildRequires: e2fsprogs-devel >= 1.21
35 BuildRequires: cyrus-sasl-devel >= 1.5.27
36 BuildRequires: db3-devel >= 3.1.17
38 BuildRequires: openssl-devel >= 0.9.6a
39 BuildRequires: perl >= 5.6.1
40 BuildRequires: ucd-snmp-devel
42 Prereq: /sbin/chkconfig
45 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47 Conflicts: solid-pop3d
53 %define _libexecdir %{_prefix}/lib/cyrus
56 The Cyrus IMAP server is a scaleable enterprise mail system designed
57 for use from small to large enterprise environments using
58 standards-based technologies.
60 A full Cyrus IMAP implementation allows a seamless mail and bulletin
61 board environment to be set up across multiple servers. It differs
62 from other IMAP server implementations in that it is run on "sealed"
63 servers, where users are not normally permitted to log in. The mailbox
64 database is stored in parts of the filesystem that are private to the
65 Cyrus IMAP system. All user access to mail is through software using
66 the IMAP, POP3, or KPOP protocols.
68 Note that this package can be used by ISPs and other to provide mail
69 services, but it may not be distributed as part of a commercial
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
87 Nale¿y zwróciæ uwagê na fakt, ¿e pakiet ten mo¿e byæ wykorzystywany
88 przez ISP, nie mo¿e byæ jednak rozpowszechniany jako czê¶æ
89 komercyjnego produktu.
110 export PATH=$PATH:`pwd`
119 --with-cyrus-prefix=%{_libexecdir} \
123 %{__cc} %{rpmcflags} \
124 -DLIBEXECDIR=\"%{_libexecdir}\" %{rpmldflags} -Wall -o deliver-wrapper %{SOURCE3}
127 rm -rf $RPM_BUILD_ROOT
129 $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
130 $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,sysconfig/rc-inetd} \
131 $RPM_BUILD_ROOT/var/spool/imap/stage. \
132 $RPM_BUILD_ROOT/var/lib/imap/{user,quota,proc,log,msg,deliverdb/db,sieve,db,socket} \
133 $RPM_BUILD_ROOT/etc/{security,pam.d,rc.d/init.d}
135 touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
136 $RPM_BUILD_ROOT/var/lib/imap/faillog \
137 $RPM_BUILD_ROOT/etc/security/blacklist.imap \
138 $RPM_BUILD_ROOT/etc/security/blacklist.pop
140 %{__make} install DESTDIR=$RPM_BUILD_ROOT CYRUS_USER="`id -u`" CYRUS_GROUP="`id -g`" mandir=%{_mandir}
142 install deliver-wrapper $RPM_BUILD_ROOT%{_libexecdir}/deliver-wrapper
144 install %{SOURCE1} %{SOURCE2} %{SOURCE4} %{SOURCE5} .
145 install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
146 install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/imapd.conf
147 install %{SOURCE9} $RPM_BUILD_ROOT/etc/pam.d/imap
148 install %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/pop
149 install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
150 install %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
152 mv -f $RPM_BUILD_ROOT%{_libexecdir}/bin/* $RPM_BUILD_ROOT%{_libexecdir}
153 mv -f $RPM_BUILD_ROOT%{_libexecdir}/master $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
154 mv -f $RPM_BUILD_ROOT%{_mandir}/man8/master.8 $RPM_BUILD_ROOT%{_mandir}/man8/cyrus-master.8
155 rm -rf $RPM_BUILD_ROOT%{_libexecdir}/bin
157 touch $RPM_BUILD_ROOT/etc/security/blacklist.{imap,pop}
159 find $RPM_BUILD_ROOT%{perl_sitearch} -name .packlist -exec rm {} \;
161 gzip -9nf cyrus-README cyrus-procmailrc cyrus-user-procmailrc.template \
162 cyrus-imapd-procmail+cyrus.mc COPYRIGHT
166 cd $RPM_BUILD_ROOT/var
168 foreach \$i ("a".."z")
170 mkdir "lib/imap/user/\$i", 0755;
171 mkdir "lib/imap/quota/\$i", 0755;
172 mkdir "lib/imap/sieve/\$i", 0755;
173 mkdir "spool/imap/\$i", 0755;
179 if [ -z "`id -u cyrus 2>/dev/null`" ]; then
180 /usr/sbin/useradd -u 76 -r -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus 1>&2
184 /sbin/chkconfig --add cyrus-imapd
185 touch /var/lib/imap/faillog
186 chown cyrus.mail /var/lib/imap/faillog
187 chmod 640 /var/lib/imap/faillog
189 chattr +S . user quota user/* quota/* 2>/dev/null
190 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null
191 if [ -f /var/lock/subsys/cyrus-imapd ]; then
192 /etc/rc.d/init.d/cyrus-imapd restart 1>&2
194 echo "Run \"/etc/rc.d/init.d/cyrus-imapd start\" to start cyrus imap daemon."
198 if [ "$1" = "0" ]; then
199 if [ -f /var/lock/subsys/cyrus-imapd ]; then
200 /etc/rc.d/init.d/cyrus-imapd stop 1>&2
202 /sbin/chkconfig --del cyrus-imapd
206 if [ "$1" = "0" ]; then
207 /usr/sbin/userdel cyrus
211 rm -rf $RPM_BUILD_ROOT
214 %defattr(644,root,root,755)
216 %config %{_sysconfdir}/*.conf
217 %attr(640,root,root) /etc/logrotate.d/cyrus-imapd
218 %attr(440,cyrus,root) %config(noreplace) %verify(not size md5 mtime) /etc/pam.d/*
219 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/security/blacklist.*
220 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
221 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
222 %attr(755,root,root) %{_bindir}/*
223 %attr(4754,cyrus,mail) %{_libexecdir}/deliver
224 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
225 %attr(755,root,root) %{_libexecdir}/ctl_deliver
226 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
227 %attr(755,root,root) %{_libexecdir}/cyrdump
228 %attr(755,root,root) %{_libexecdir}/feedcyrus
229 %attr(755,root,root) %{_libexecdir}/fud
230 %attr(755,root,root) %{_libexecdir}/imapd
231 %attr(755,root,root) %{_libexecdir}/ipurge
232 %attr(755,root,root) %{_libexecdir}/lmtpd
233 %attr(755,root,root) %{_libexecdir}/cyrus-master
234 %attr(755,root,root) %{_libexecdir}/mbpath
235 %attr(755,root,root) %{_libexecdir}/pop3d
236 %attr(755,root,root) %{_libexecdir}/quota
237 %attr(755,root,root) %{_libexecdir}/reconstruct
238 %attr(755,root,root) %{_libexecdir}/timsieved
240 %{perl_sitearch}/Cyrus
241 %{perl_sitearch}/auto/Cyrus
243 %attr(750,cyrus,mail) /var/spool/imap
244 %attr(750,cyrus,mail) %dir /var/lib/imap
245 %attr(750,cyrus,mail) %dir /var/lib/imap/deliverdb
246 %attr(750,cyrus,mail) /var/lib/imap/deliverdb/db
247 %attr(750,cyrus,mail) /var/lib/imap/quota
248 %attr(750,cyrus,mail) /var/lib/imap/user
249 %attr(750,cyrus,mail) /var/lib/imap/sieve
250 %attr(750,cyrus,mail) /var/lib/imap/log
251 %attr(750,cyrus,mail) /var/lib/imap/msg
252 %attr(750,cyrus,mail) /var/lib/imap/proc
253 %attr(750,cyrus,mail) /var/lib/imap/db
254 %attr(750,cyrus,mail) /var/lib/imap/socket
255 %attr(750,cyrus,mail) %config(noreplace) %verify(not size md5 mtime) /var/lib/imap/mailboxes