1 Summary: high-performance mail store with imap and pop3
5 Copyright: academic/research
6 Group: Networking/Daemons
7 Source0: ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/%{name}-%{version}.tar.gz
9 Source2: cyrus-procmailrc
10 Source3: cyrus-deliver-wrapper.c
11 Source4: cyrus-user-procmailrc.template
12 Source5: cyrus-imapd-procmail+cyrus.mc
13 Source6: cyrus-imapd.logrotate
14 Source7: cyrus-imapd.conf
15 Source8: cyrus-imapd.cron
16 Source9: cyrus-imapd.inetd
17 Source10: cyrus-imapd-pop3.inetd
18 Source11: cyrus-imapd.pamd
19 Source12: cyrus-imapd-pop.pamd
20 URL: http://andrew2.andrew.cmu.edu/cyrus/imapd/
22 BuildRequires: cyrus-sasl-devel
23 BuildRequires: tcl-devel >= 8.0
24 BuildRequires: openssl-devel
29 Conflicts: solid-pop3d
33 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
35 %define _libexecdir %{_prefix}/lib/cyrus
38 The Cyrus IMAP server is a scaleable enterprise mail system
39 designed for use from small to large enterprise environments using
40 standards-based technologies.
42 A full Cyrus IMAP implementation allows a seamless mail and bulletin
43 board environment to be set up across multiple servers. It differs from
44 other IMAP server implementations in that it is run on "sealed"
45 servers, where users are not normally permitted to log in. The mailbox
46 database is stored in parts of the filesystem that are private to the
47 Cyrus IMAP system. All user access to mail is through software using
48 the IMAP, POP3, or KPOP protocols.
50 Note that this package can be used by ISPs and other to provide mail
51 services, but it may not be distributed as part of a commercial product.
54 Serwer Cyrus IMAP jest skalowalnym systemem e-mail dla przedsiêbiorstwa,
55 zaprojektowanym dla ma³ych i du¿ych firm i wykorzystuj±cym oparte na
56 standardach technologie.
58 Pe³na implementacja Cyrus IMAP pozwala na bezproblemowe ustawienie
59 ¶rodowiska poczty i elektronicznej tablicy og³oszeniowej na kilku serwerach.
60 Tym siê ró¿ni od innych implementacji serwerów IMAP, ¿e jest uruchamiany
61 na "opieczêtowanych" serwerach, na które w normalnych waunkach u¿ytkownicy
62 nie mog± siê zalogowaæ. Baza danych skrzynek pocztowych jest pzrechowywana
63 w tych czê¶ciach systemu plików, które s± dostêpne jedynie dla systemu
64 IMAP Cyrus. Wszelki dostêp do poczty ma miejsce poprzez oprogramowanie
65 wykorzystuj±ce protoko³y IMAP, POP3 oraz KPOP.
67 Nale¿y zwróciæ uwagê na fakt, ¿e pakiet ten mo¿e byæ wykorzystywany przez ISP,
68 nie mo¿e byæ jednak rozpowszechniany jako czê¶æ komercyjnego produktu.
70 %define version %{PACKAGE_VERSION}
73 rm -rf $RPM_BUILD_ROOT
79 # prepare a makedepend
84 export PATH=$PATH:`pwd`
91 gcc $RPM_OPT_FLAGS -DLIBEXECDIR=\"%{_libexecdir}\" -s -Wall -o deliver-wrapper %{SOURCE3}
94 rm -rf $RPM_BUILD_ROOT
95 #install -d $RPM_BUILD_ROOT/usr/cyrus/etc
97 $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
98 $RPM_BUILD_ROOT/etc/{logrotate.d,cron.daily,sysconfig/rc-inetd} \
99 $RPM_BUILD_ROOT/var/spool/imap/stage. \
100 $RPM_BUILD_ROOT/var/state/imap/{user,quota,proc,log,msg,deliverdb,sieve} \
101 $RPM_BUILD_ROOT%{_libdir}/sendmail-cf/cf
102 touch $RPM_BUILD_ROOT/var/state/imap/mailboxes \
103 $RPM_BUILD_ROOT/var/state/imap/faillog \
104 $RPM_BUILD_ROOT/etc/security/blacklist.imap \
105 $RPM_BUILD_ROOT/etc/security/blacklist.pop
107 make install DESTDIR=$RPM_BUILD_ROOT CYRUS_USER="`id -u`" CYRUS_GROUP="`id -g`"
109 #mkdir -p $RPM_BUILD_ROOT/usr/cyrus/bin
110 #install -g mail -m 2755 -s deliver-wrapper $RPM_BUILD_ROOT/usr/cyrus/bin/deliver-wrapper
111 install deliver-wrapper $RPM_BUILD_ROOT/usr/cyrus/bin/deliver-wrapper
114 install %{SOURCE2} $RPM_BUILD_ROOT/etc/procmailrc.cyrus
115 #install %{SOURCE4} $RPM_BUILD_ROOT/usr/cyrus/etc/user-procmailrc.template
116 install %{SOURCE5} $RPM_BUILD_ROOT%{_libdir}/sendmail-cf/cf/procmail+cyrus.mc
117 install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
118 install %{SOURCE7} $RPM_BUILD_ROOT/etc/imapd.conf
119 install %{SOURCE8} $RPM_BUILD_ROOT/etc/cron.daily/cyrus-imapd
120 install %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/imapd
121 install %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/pop3d
122 install %{SOURCE11} $RPM_BUILD_ROOT/etc/pam.d/imap
123 install %{SOURCE12} $RPM_BUILD_ROOT/etc/pam.d/pop
125 mv $RPM_BUILD_ROOT/usr/cyrus/bin/* $RPM_BUILD_ROOT%{_libexecdir}
126 mv $RPM_BUILD_ROOT/usr/man/* $RPM_BUILD_ROOT%{_mandir}
128 gzip -9fn $RPM_BUILD_ROOT%{_mandir}/man*/* \
132 cd $RPM_BUILD_ROOT/var
134 foreach \$i ("a".."z")
136 mkdir "state/imap/user/\$i", 0755;
137 mkdir "state/imap/quota/\$i", 0755;
138 mkdir "state/imap/sieve/\$i", 0755;
139 mkdir "spool/imap/\$i", 0755;
144 if [ -z "`id -u cyrus 2>/dev/null`" ]; then
145 /usr/sbin/useradd -u 76 -r -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus 1>&2
146 if [ -f /var/db/passwd.db ]; then
147 /usr/bin/update-db 1>&2
152 touch /var/state/imap/faillog
153 chown cyrus.mail /var/state/imap/faillog
154 chmod 640 /var/state/imap/faillog
155 if [ -f /var/lock/subsys/rc-inetd ]; then
156 /etc/rc.d/init.d/rc-inetd reload 1>&2
158 echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet sever" 1>&2
161 # force synchronous updates
163 chattr +S . user quota user/* quota/* 2>/dev/null
164 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null
167 if [ -f /var/lock/subsys/rc-inetd ]; then
168 /etc/rc.d/init.d/rc-inetd reload 1>&2
170 if [ "$1" = "0" ]; then
171 if [ -n "`id -u cyrus 2>/dev/null`" ]; then
172 /usr/sbin/userdel cyrus 1>&2
177 rm -rf $RPM_BUILD_ROOT
180 %defattr(644,root,root,755)
181 #doc README README.RPM doc
184 %config /etc/imapd.conf
185 %config /etc/procmailrc.cyrus
186 %config(noreplace) %verify(not size md5 mtime) /etc/logrotate.d/cyrus-imapd
187 %attr( 640, root,root) %config(noreplace) %verify(not size md5 mtime) /etc/sysconfig/rc-inetd/*
188 %attr( 440, cyrus,root) %config(noreplace) %verify(not size md5 mtime) /etc/pam.d/*
189 %attr( 640, cyrus,mail) %ghost /var/state/imap/faillog
190 %attr( 755, root,root) /etc/cron.daily/cyrus-imapd
191 %attr( 755, root,root) %{_bindir}/*
192 %attr(4750,cyrus,mail) %{_libexecdir}/deliver
193 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
194 %attr( 755, root,root) %{_libexecdir}/arbitron
195 %attr( 755, root,root) %{_libexecdir}/collectnews
196 %attr( 755, root,root) %{_libexecdir}/dump_deliverdb
197 %attr( 755, root,root) %{_libexecdir}/feedcyrus
198 %attr( 755, root,root) %{_libexecdir}/fud
199 %attr( 755, root,root) %{_libexecdir}/mbpath
200 %attr( 755, root,root) %{_libexecdir}/quota
201 %attr( 755, root,root) %{_libexecdir}/reconstruct
202 %attr( 755, root,root) %{_libexecdir}/syncnews
203 %attr( 755, root,root) %{_libexecdir}/timsieved
204 %attr( 755, root,root) %{_libexecdir}/pop3d
205 %attr( 755, root,root) %{_libexecdir}/imapd
207 #%attr(0755,root,root) %{_sbindir}/imapd
208 #%attr(0755,root,root) %{_sbindir}/ipop3d
210 %defattr(640,cyrus,mail,750)
213 /var/state/imap/deliverdb
214 /var/state/imap/quota
216 /var/state/imap/sieve
220 %config(noreplace) %verify(not size md5 mtime) /var/state/imap/mailboxes
221 %defattr(644,root,root,755)