]> git.pld-linux.org Git - packages/cyrus-imapd.git/blob - cyrus-imapd.spec
- reverte last change (seems in rpm file_check is bug on checking %ghost files).
[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 Summary(pl):    Wysoko wydajny serwer IMAP i POP3
4 Summary(pt_BR): Um servidor de mail de alto desempenho que suporta IMAP e POP3
5 Name:           cyrus-imapd
6 Version:        2.0.16
7 Release:        8
8 License:        BSD-like
9 Group:          Networking/Daemons
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 Patch4:         http://www.imasy.or.jp/~ume/ipv6/%{name}-2.0.16-ipv6-20010728.diff.gz
27 Patch5:         %{name}-et.patch
28 Patch6:         %{name}-ac250.patch
29 Patch7:         %{name}-db3.patch
30 Patch8:         %{name}-ipv6.m4.patch
31 Patch9:         %{name}-ac25x.patch
32 URL:            http://andrew2.andrew.cmu.edu/cyrus/imapd/
33 #Icon:          cyrus.gif
34 BuildRequires:  autoconf
35 BuildRequires:  automake
36 BuildRequires:  cyrus-sasl-devel >= 1.5.27
37 BuildRequires:  db3-devel >= 3.1.17
38 BuildRequires:  e2fsprogs-devel >= 1.21
39 BuildRequires:  flex
40 BuildRequires:  openssl-devel >= 0.9.6a
41 BuildRequires:  perl-devel >= 5.6.1
42 BuildRequires:  ucd-snmp-devel >= 4.2.5-10
43 Prereq:         rc-scripts
44 Requires(pre):  /usr/sbin/useradd
45 Requires(post,preun):/sbin/chkconfig
46 Requires(postun):       /usr/sbin/userdel
47 Provides:       imapdaemon
48 Provides:       pop3daemon
49 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50 Conflicts:      courier-imap
51 Conflicts:      courier-imap-common
52 Conflicts:      courier-imap-pop3
53 Conflicts:      imap
54 Conflicts:      imap-common
55 Conflicts:      imap-pop2
56 Conflicts:      imap-pop3
57 Conflicts:      qpopper
58 Conflicts:      qpopper6
59 Conflicts:      solid-pop3d
60 Conflicts:      tpop3d
61 Obsoletes:      imapd
62 Obsoletes:      pop3daemon
63 Obsoletes:      imapdaemon
64
65 %define         _libexecdir     %{_prefix}/lib/cyrus
66
67 %description
68 The Cyrus IMAP server is a scaleable enterprise mail system designed
69 for use from small to large enterprise environments using
70 standards-based technologies.
71
72 A full Cyrus IMAP implementation allows a seamless mail and bulletin
73 board environment to be set up across multiple servers. It differs
74 from other IMAP server implementations in that it is run on "sealed"
75 servers, where users are not normally permitted to log in. The mailbox
76 database is stored in parts of the filesystem that are private to the
77 Cyrus IMAP system. All user access to mail is through software using
78 the IMAP, POP3, or KPOP protocols.
79
80 %description -l pl
81 Serwer Cyrus IMAP jest skalowalnym systemem e-mail dla
82 przedsiêbiorstwa, zaprojektowanym dla ma³ych i du¿ych firm i
83 wykorzystuj±cym oparte na standardach technologie.
84
85 Pe³na implementacja Cyrus IMAP pozwala na bezproblemowe ustawienie
86 ¶rodowiska poczty i elektronicznej tablicy og³oszeniowej na kilku
87 serwerach. Tym siê ró¿ni od innych implementacji serwerów IMAP, ¿e
88 jest uruchamiany na "opieczêtowanych" serwerach, na które w normalnych
89 waunkach u¿ytkownicy nie mog± siê zalogowaæ. Baza danych skrzynek
90 pocztowych jest pzrechowywana w tych czê¶ciach systemu plików, które
91 s± dostêpne jedynie dla systemu IMAP Cyrus. Wszelki dostêp do poczty
92 ma miejsce poprzez oprogramowanie wykorzystuj±ce protoko³y IMAP, POP3
93 oraz KPOP.
94
95 %description -l pt_BR
96 O servidor IMAP Cyrus é um sistema de mail corporativo escalável
97 projetado para uso por pequenos a grandes ambientes corporativos
98 usando tecnologias baseadas em padrões abertos.
99
100 Uma implementação completa do Cyrus permite se configurar um ambiente
101 transparente de mail e bulletin board entre múltiplos servidores. Ele
102 difere de outros servidores IMAP por rodar em servidores "selados",
103 onde usuários não possuem normalmente a permissão de log in. O banco
104 de dados de caixas de mail é armazenado em partes do sistema de
105 arquivos que são privativos do sistema Cyrus. Todo o acesso de
106 usuários aos mails se dá através de software usando os protocolos
107 IMAP, POP3 ou KPOP.
108
109 %prep
110 %setup -q
111 %patch0 -p1
112 %patch1 -p1
113 %patch2 -p0
114 %patch3 -p1
115 %patch4 -p0
116 %patch5 -p1
117 %patch6 -p1
118 %patch7 -p1
119 %patch8 -p1
120 %patch9 -p1
121
122 %build
123 cd makedepend
124 rm -f aclocal.m4
125 aclocal
126 %{__autoconf}
127 %configure
128 %{__make}
129 PATH=$PATH:`pwd`; export PATH
130 cd ..
131 rm -f aclocal.m4
132 aclocal -I cmulocal
133 autoheader
134 %{__autoconf}
135 %configure \
136         --with-auth=unix \
137         --without-libwrap \
138         --with-cyrus-prefix=%{_libexecdir} \
139         --with-com_err=/usr
140 %{__make}
141
142 %{__cc} %{rpmcflags} \
143         -DLIBEXECDIR="\"%{_libexecdir}\"" %{rpmldflags} -Wall -o deliver-wrapper %{SOURCE3}
144
145 %install
146 rm -rf $RPM_BUILD_ROOT
147 install -d \
148         $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
149         $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,sysconfig/rc-inetd} \
150         $RPM_BUILD_ROOT/var/spool/imap/stage. \
151         $RPM_BUILD_ROOT/var/lib/imap/{user,quota,proc,log,msg,deliverdb/db,sieve,db,socket} \
152         $RPM_BUILD_ROOT/etc/{security,pam.d,rc.d/init.d}
153
154 touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
155         $RPM_BUILD_ROOT/var/lib/imap/faillog \
156         $RPM_BUILD_ROOT/etc/security/blacklist.imap \
157         $RPM_BUILD_ROOT/etc/security/blacklist.pop
158
159 %{__make} install DESTDIR=$RPM_BUILD_ROOT CYRUS_USER="`id -u`" CYRUS_GROUP="`id -g`" mandir=%{_mandir}
160
161 install deliver-wrapper $RPM_BUILD_ROOT%{_libexecdir}/deliver-wrapper
162
163 install %{SOURCE1}      %{SOURCE2} %{SOURCE4} %{SOURCE5} .
164 install %{SOURCE6}      $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
165 install %{SOURCE7}      $RPM_BUILD_ROOT%{_sysconfdir}/imapd.conf
166 install %{SOURCE9}      $RPM_BUILD_ROOT/etc/pam.d/imap
167 install %{SOURCE10}     $RPM_BUILD_ROOT/etc/pam.d/pop
168 install %{SOURCE11}     $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
169 install %{SOURCE12}     $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
170
171 mv -f $RPM_BUILD_ROOT%{_libexecdir}/bin/*       $RPM_BUILD_ROOT%{_libexecdir}
172 mv -f $RPM_BUILD_ROOT%{_libexecdir}/master      $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
173 mv -f $RPM_BUILD_ROOT%{_mandir}/man8/master.8   $RPM_BUILD_ROOT%{_mandir}/man8/cyrus-master.8
174 rm -rf $RPM_BUILD_ROOT%{_libexecdir}/bin
175 rm -rf $RPM_BUILD_ROOT%{_mandir}/man8/idled.8
176
177 touch $RPM_BUILD_ROOT/etc/security/blacklist.{imap,pop}
178
179 find $RPM_BUILD_ROOT%{perl_sitearch} -name .packlist -exec rm {} \;
180
181 # make hashed dirs
182 oldpwd=`pwd`
183 cd $RPM_BUILD_ROOT/var
184 perl <<EOF
185 foreach \$i ("a".."z")
186 {
187         mkdir "lib/imap/user/\$i", 0755;
188         mkdir "lib/imap/quota/\$i", 0755;
189         mkdir "lib/imap/sieve/\$i", 0755;
190         mkdir "spool/imap/\$i", 0755;
191 }
192 EOF
193 cd ${oldpwd}
194
195 %pre
196 if [ -z "`id -u cyrus 2>/dev/null`" ]; then
197         /usr/sbin/useradd -u 76 -r -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus 1>&2
198 fi
199
200 %post
201 /sbin/chkconfig --add cyrus-imapd
202 touch /var/lib/imap/faillog
203 chown cyrus.mail /var/lib/imap/faillog
204 chmod 640 /var/lib/imap/faillog
205 cd /var/lib/imap
206 chattr +S . user quota user/* quota/* 2>/dev/null
207 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null
208 if [ -f /var/lock/subsys/cyrus-imapd ]; then
209         /etc/rc.d/init.d/cyrus-imapd restart 1>&2
210 else
211         echo "Run \"/etc/rc.d/init.d/cyrus-imapd start\" to start cyrus imap daemon."
212 fi
213
214 %preun
215 if [ "$1" = "0" ]; then
216         if [ -f /var/lock/subsys/cyrus-imapd ]; then
217                 /etc/rc.d/init.d/cyrus-imapd stop 1>&2
218         fi
219         /sbin/chkconfig --del cyrus-imapd
220 fi
221
222 %postun
223 if [ "$1" = "0" ]; then
224         /usr/sbin/userdel cyrus
225 fi
226
227 %clean
228 rm -rf $RPM_BUILD_ROOT
229
230 %files
231 %defattr(644,root,root,755)
232 %doc cyrus-README cyrus-procmailrc cyrus-user-procmailrc.template
233 %doc cyrus-imapd-procmail+cyrus.mc COPYRIGHT doc/*.html
234 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.conf
235 %attr(640,root,root) /etc/logrotate.d/cyrus-imapd
236 %attr(440,cyrus,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/*
237 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/security/blacklist.*
238 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
239 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
240 %attr(755,root,root) %{_bindir}/*
241 %attr(4754,cyrus,mail) %{_libexecdir}/deliver
242 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
243 %attr(755,root,root) %{_libexecdir}/ctl_deliver
244 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
245 %attr(755,root,root) %{_libexecdir}/cyrdump
246 %attr(755,root,root) %{_libexecdir}/feedcyrus
247 %attr(755,root,root) %{_libexecdir}/fud
248 %attr(755,root,root) %{_libexecdir}/imapd
249 %attr(755,root,root) %{_libexecdir}/ipurge
250 %attr(755,root,root) %{_libexecdir}/lmtpd
251 %attr(755,root,root) %{_libexecdir}/cyrus-master
252 %attr(755,root,root) %{_libexecdir}/mbpath
253 %attr(755,root,root) %{_libexecdir}/pop3d
254 %attr(755,root,root) %{_libexecdir}/quota
255 %attr(755,root,root) %{_libexecdir}/reconstruct
256 %attr(755,root,root) %{_libexecdir}/timsieved
257
258 %{perl_sitearch}/Cyrus
259 %{perl_sitearch}/auto/Cyrus
260
261 %attr(750,cyrus,mail) /var/spool/imap
262 %attr(750,cyrus,mail) %dir /var/lib/imap
263 %attr(750,cyrus,mail) %dir /var/lib/imap/deliverdb
264 %attr(750,cyrus,mail) /var/lib/imap/deliverdb/db
265 %attr(750,cyrus,mail) /var/lib/imap/quota
266 %attr(750,cyrus,mail) /var/lib/imap/user
267 %attr(750,cyrus,mail) /var/lib/imap/sieve
268 %attr(750,cyrus,mail) /var/lib/imap/log
269 %attr(750,cyrus,mail) /var/lib/imap/msg
270 %attr(750,cyrus,mail) /var/lib/imap/proc
271 %attr(750,cyrus,mail) /var/lib/imap/db
272 %attr(750,cyrus,mail) /var/lib/imap/socket
273 %attr(750,cyrus,mail) %config(noreplace) %verify(not size md5 mtime) /var/lib/imap/mailboxes
274
275 %{_mandir}/man*/*
276 %{_includedir}/cyrus
277 %{_libdir}/lib*.a
This page took 0.378855 seconds and 3 git commands to generate.