]> git.pld-linux.org Git - packages/cyrus-imapd.git/blob - cyrus-imapd.spec
- release 1.2
[packages/cyrus-imapd.git] / cyrus-imapd.spec
1 %include        /usr/lib/rpm/macros.perl
2 Summary:        high-performance mail store with imap and pop3
3 Name:           cyrus-imapd
4 Version:        2.0.11
5 Release:        1.2
6 License:        academic/research
7 Group:          Networking/Daemons
8 Group(de):      Netzwerkwesen/Server
9 Group(pl):      Sieciowe/Serwery
10 Source0:        ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/%{name}-%{version}.tar.gz
11 Source1:        cyrus-README
12 Source2:        cyrus-procmailrc
13 Source3:        cyrus-deliver-wrapper.c
14 Source4:        cyrus-user-procmailrc.template
15 Source5:        %{name}-procmail+cyrus.mc
16 Source6:        %{name}.logrotate
17 Source7:        %{name}.conf
18 Source9:        %{name}.pamd
19 Source10:       %{name}-pop.pamd
20 Source11:       %{name}.init
21 Source12:       cyrus.conf
22 Patch0:         %{name}-snmp.patch
23 Patch1:         %{name}-mandir.patch
24 Patch2:         %{name}-paths.patch
25 Patch3:         %{name}-overquota.patch
26 URL:            http://andrew2.andrew.cmu.edu/cyrus/imapd/
27 #Icon:          cyrus.gif
28 BuildRequires:  cyrus-sasl-devel
29 #BuildRequires: tcl-devel >= 8.0
30 BuildRequires:  openssl-devel
31 BuildRequires:  perl >= 5.6.0
32 BuildRequires:  db3-devel >= 3.1.17
33 Obsoletes:      imapd
34 Obsoletes:      pop3daemon
35 Obsoletes:      imapdaemon
36 Conflicts:      qpopper
37 Conflicts:      solid-pop3d
38 Conflicts:      qpopper6
39 Provides:       imapdaemon
40 Provides:       pop3daemon
41 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42
43 %define         _libexecdir     %{_prefix}/lib/cyrus
44
45 %description
46 The Cyrus IMAP server is a scaleable enterprise mail system designed
47 for use from small to large enterprise environments using
48 standards-based technologies.
49
50 A full Cyrus IMAP implementation allows a seamless mail and bulletin
51 board environment to be set up across multiple servers. It differs
52 from other IMAP server implementations in that it is run on "sealed"
53 servers, where users are not normally permitted to log in. The mailbox
54 database is stored in parts of the filesystem that are private to the
55 Cyrus IMAP system. All user access to mail is through software using
56 the IMAP, POP3, or KPOP protocols.
57
58 Note that this package can be used by ISPs and other to provide mail
59 services, but it may not be distributed as part of a commercial
60 product.
61
62 %description -l pl
63 Serwer Cyrus IMAP jest skalowalnym systemem e-mail dla
64 przedsiêbiorstwa, zaprojektowanym dla ma³ych i du¿ych firm i
65 wykorzystuj±cym oparte na standardach technologie.
66
67 Pe³na implementacja Cyrus IMAP pozwala na bezproblemowe ustawienie
68 ¶rodowiska poczty i elektronicznej tablicy og³oszeniowej na kilku
69 serwerach. Tym siê ró¿ni od innych implementacji serwerów IMAP, ¿e
70 jest uruchamiany na "opieczêtowanych" serwerach, na które w normalnych
71 waunkach u¿ytkownicy nie mog± siê zalogowaæ. Baza danych skrzynek
72 pocztowych jest pzrechowywana w tych czê¶ciach systemu plików, które
73 s± dostêpne jedynie dla systemu IMAP Cyrus. Wszelki dostêp do poczty
74 ma miejsce poprzez oprogramowanie wykorzystuj±ce protoko³y IMAP, POP3
75 oraz KPOP.
76
77 Nale¿y zwróciæ uwagê na fakt, ¿e pakiet ten mo¿e byæ wykorzystywany
78 przez ISP, nie mo¿e byæ jednak rozpowszechniany jako czê¶æ
79 komercyjnego produktu.
80
81 %prep
82 %setup -q 
83 %patch0 -p1
84 %patch1 -p1
85 %patch2 -p0
86 %patch3 -p1
87
88 %build
89 cd makedepend
90 autoconf
91 %configure 
92 %{__make}
93 export PATH=$PATH:`pwd`
94 cd ..
95 autoheader
96 autoconf
97 %configure \
98         --with-auth=unix \
99         --without-libwrap \
100         --with-cyrus-prefix=%{_libexecdir}
101 %{__make}
102
103 %{__cc} %{?debug:-O0 -g}%{!?debug:$RPM_OPT_FLAGS} \
104         -DLIBEXECDIR=\"%{_libexecdir}\" -s -Wall -o deliver-wrapper %{SOURCE3}
105
106 %install
107 rm -rf $RPM_BUILD_ROOT
108
109 install -d \
110         $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
111         $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,sysconfig/rc-inetd} \
112         $RPM_BUILD_ROOT/var/spool/imap/stage. \
113         $RPM_BUILD_ROOT/var/lib/imap/{user,quota,proc,log,msg,deliverdb/db,sieve,db,socket} \
114         $RPM_BUILD_ROOT/etc/{security,pam.d,rc.d/init.d}
115
116 touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
117         $RPM_BUILD_ROOT/var/lib/imap/faillog \
118         $RPM_BUILD_ROOT/etc/security/blacklist.imap \
119         $RPM_BUILD_ROOT/etc/security/blacklist.pop
120
121 %{__make} install DESTDIR=$RPM_BUILD_ROOT CYRUS_USER="`id -u`" CYRUS_GROUP="`id -g`" mandir=%{_mandir}
122
123 install deliver-wrapper $RPM_BUILD_ROOT%{_libexecdir}/deliver-wrapper
124
125 install %{SOURCE1}      %{SOURCE2} %{SOURCE4} %{SOURCE5} .
126 install %{SOURCE6}      $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
127 install %{SOURCE7}      $RPM_BUILD_ROOT%{_sysconfdir}/imapd.conf
128 install %{SOURCE9}      $RPM_BUILD_ROOT/etc/pam.d/imap
129 install %{SOURCE10}     $RPM_BUILD_ROOT/etc/pam.d/pop
130 install %{SOURCE11}     $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
131 install %{SOURCE12}     $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
132
133 mv -f $RPM_BUILD_ROOT%{_libexecdir}/bin/*       $RPM_BUILD_ROOT%{_libexecdir}
134 mv -f $RPM_BUILD_ROOT%{_libexecdir}/master      $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
135 mv -f $RPM_BUILD_ROOT%{_mandir}/man8/master.8   $RPM_BUILD_ROOT%{_mandir}/man8/cyrus-master.8
136 rm -rf $RPM_BUILD_ROOT%{_libexecdir}/bin
137
138 touch $RPM_BUILD_ROOT/etc/security/blacklist.{imap,pop}
139
140 gzip -9nf cyrus-README cyrus-procmailrc cyrus-user-procmailrc.template \
141         cyrus-imapd-procmail+cyrus.mc
142
143 # make hashed dirs
144 oldpwd=`pwd`
145 cd $RPM_BUILD_ROOT/var
146 perl <<EOF
147 foreach \$i ("a".."z") 
148 {
149   mkdir "lib/imap/user/\$i", 0755;
150   mkdir "lib/imap/quota/\$i", 0755;
151   mkdir "lib/imap/sieve/\$i", 0755;
152   mkdir "spool/imap/\$i", 0755;
153 }
154 EOF
155 cd ${oldpwd}
156
157 %pre
158 if [ -z "`id -u cyrus 2>/dev/null`" ]; then
159         /usr/sbin/useradd -u 76 -r -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus 1>&2
160 fi
161
162 %post
163 /sbin/chkconfig --add cyrus-imapd
164 touch /var/lib/imap/faillog
165 chown cyrus.mail /var/lib/imap/faillog
166 chmod 640 /var/lib/imap/faillog
167 cd /var/lib/imap
168 chattr +S . user quota user/* quota/* 2>/dev/null
169 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null
170 if [ -f /var/lock/subsys/cyrus-imapd ]; then
171         /etc/rc.d/init.d/cyrus-imapd restart 1>&2
172 else
173         echo "Run \"/etc/rc.d/init.d/cyrus-imapd start\" to start apache http daemon."
174 fi
175
176 %preun
177 if [ "$1" = "0" ]; then
178         if [ -f /var/lock/subsys/cyrus-imapd ]; then
179                 /etc/rc.d/init.d/cyrus-imapd stop 1>&2
180         fi
181         /sbin/chkconfig --del cyrus-imapd
182 fi
183
184 %postun
185 if [ "$1" = "0" ]; then
186         /usr/sbin/userdel cyrus
187 fi
188
189 %clean
190 rm -rf $RPM_BUILD_ROOT
191
192 %files
193 %defattr(644,root,root,755)
194 %doc *.gz doc/*.html
195 %config %{_sysconfdir}/*.conf
196 %attr(640,root,root) /etc/logrotate.d/cyrus-imapd
197 %attr(440,cyrus,root) %config(noreplace) %verify(not size md5 mtime) /etc/pam.d/*
198 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/security/blacklist.*
199 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
200 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
201 %attr(755,root,root) %{_bindir}/*
202 %attr(4754,cyrus,mail) %{_libexecdir}/deliver
203 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
204 %attr(755,root,root) %{_libexecdir}/ctl_deliver
205 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
206 %attr(755,root,root) %{_libexecdir}/feedcyrus
207 %attr(755,root,root) %{_libexecdir}/fud
208 %attr(755,root,root) %{_libexecdir}/imapd
209 %attr(755,root,root) %{_libexecdir}/ipurge
210 %attr(755,root,root) %{_libexecdir}/lmtpd
211 %attr(755,root,root) %{_libexecdir}/cyrus-master
212 %attr(755,root,root) %{_libexecdir}/mbpath
213 %attr(755,root,root) %{_libexecdir}/pop3d
214 %attr(755,root,root) %{_libexecdir}/quota
215 %attr(755,root,root) %{_libexecdir}/reconstruct
216 %attr(755,root,root) %{_libexecdir}/timsieved
217
218 %dir %{perl_sitearch}/Cyrus
219 %{perl_sitearch}/Cyrus/*.pm
220 %dir %{perl_sitearch}/Cyrus/IMAP
221 %{perl_sitearch}/Cyrus/IMAP/*.pm
222 %dir %{perl_sitearch}/Cyrus/SIEVE
223 %{perl_sitearch}/Cyrus/SIEVE/*.pm
224 %dir %{perl_sitearch}/auto/Cyrus
225 %dir %{perl_sitearch}/auto/Cyrus/IMAP
226 %{perl_sitearch}/auto/Cyrus/IMAP/*.so
227 %{perl_sitearch}/auto/Cyrus/IMAP/*.bs
228 %dir %{perl_sitearch}/auto/Cyrus/SIEVE
229 %dir %{perl_sitearch}/auto/Cyrus/SIEVE/acap
230 %{perl_sitearch}/auto/Cyrus/SIEVE/acap/*.so
231 %{perl_sitearch}/auto/Cyrus/SIEVE/acap/*.bs
232 %dir %{perl_sitearch}/auto/Cyrus/SIEVE/managesieve
233 %{perl_sitearch}/auto/Cyrus/SIEVE/managesieve/*.so
234 %{perl_sitearch}/auto/Cyrus/SIEVE/managesieve/*.bs
235
236 %attr(750,cyrus,mail) /var/spool/imap
237 %attr(750,cyrus,mail) %dir /var/lib/imap
238 %attr(750,cyrus,mail) %dir /var/lib/imap/deliverdb
239 %attr(750,cyrus,mail) /var/lib/imap/deliverdb/db
240 %attr(750,cyrus,mail) /var/lib/imap/quota
241 %attr(750,cyrus,mail) /var/lib/imap/user
242 %attr(750,cyrus,mail) /var/lib/imap/sieve
243 %attr(750,cyrus,mail) /var/lib/imap/log
244 %attr(750,cyrus,mail) /var/lib/imap/msg
245 %attr(750,cyrus,mail) /var/lib/imap/proc
246 %attr(750,cyrus,mail) /var/lib/imap/db
247 %attr(750,cyrus,mail) /var/lib/imap/socket
248 %attr(750,cyrus,mail) %config(noreplace) %verify(not size md5 mtime) /var/lib/imap/mailboxes
249
250 %{_mandir}/man*/*
251 %{_includedir}/cyrus
252 %{_libdir}/lib*.a
This page took 0.079319 seconds and 3 git commands to generate.