]> git.pld-linux.org Git - packages/cyrus-imapd.git/blob - cyrus-imapd.spec
- update to 2.3.9 by Eero Hänninen
[packages/cyrus-imapd.git] / cyrus-imapd.spec
1 #
2 # TODO:
3 # - fix path in .init for lib64
4 #
5 %include        /usr/lib/rpm/macros.perl
6 Summary:        High-performance mail store with imap and pop3
7 Summary(pl.UTF-8):      Wysoko wydajny serwer IMAP i POP3
8 Summary(pt_BR.UTF-8):   Um servidor de mail de alto desempenho que suporta IMAP e POP3
9 Name:           cyrus-imapd
10 Version:        2.3.9
11 Release:        0.1
12 License:        BSD-like
13 Group:          Networking/Daemons
14 Source0:        ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/%{name}-%{version}.tar.gz
15 # Source0-md5:  113433c1fdc777e3b0466b5ce643b8bc
16 Source1:        cyrus-README
17 Source2:        cyrus-procmailrc
18 Source3:        cyrus-deliver-wrapper.c
19 Source4:        cyrus-user-procmailrc.template
20 Source5:        %{name}-procmail+cyrus.mc
21 Source6:        %{name}.logrotate
22 Source7:        %{name}.conf
23 Source9:        %{name}.pamd
24 Source10:       %{name}-pop.pamd
25 Source11:       %{name}.init
26 Source12:       cyrus.conf
27 Patch0:         %{name}-et.patch
28 Patch1:         %{name}-shared.patch
29 URL:            http://andrew2.andrew.cmu.edu/cyrus/imapd/
30 BuildRequires:  autoconf >= 2.54
31 BuildRequires:  automake
32 BuildRequires:  cyrus-sasl-devel >= 1.5.27
33 BuildRequires:  db-devel >= 4.1.25
34 BuildRequires:  flex
35 BuildRequires:  libcom_err-devel >= 1.21
36 BuildRequires:  libtool
37 BuildRequires:  net-snmp-devel
38 BuildRequires:  openssl-devel >= 0.9.7d
39 BuildRequires:  perl-devel >= 1:5.8.0
40 BuildRequires:  rpm-perlprov
41 BuildRequires:  rpmbuild(macros) >= 1.268
42 Requires(post,preun):   /sbin/chkconfig
43 Requires(postun):       /usr/sbin/userdel
44 Requires(pre):  /bin/id
45 Requires(pre):  /usr/sbin/useradd
46 Requires:       %{name}-libs = %{version}-%{release}
47 Requires:       rc-scripts
48 # needed by scripts from %{_bindir}
49 Requires:       pam >= 0.79.0
50 Requires:       perl-%{name} = %{version}-%{release}
51 Provides:       imapdaemon
52 Provides:       pop3daemon
53 Provides:       user(cyrus)
54 Obsoletes:      imap
55 Obsoletes:      imapd
56 Obsoletes:      imapdaemon
57 Obsoletes:      pop3daemon
58 Conflicts:      courier-imap
59 Conflicts:      courier-imap-common
60 Conflicts:      courier-imap-pop3
61 Conflicts:      imap
62 Conflicts:      imap-common
63 Conflicts:      imap-pop2
64 Conflicts:      imap-pop3
65 Conflicts:      qpopper
66 Conflicts:      qpopper6
67 Conflicts:      solid-pop3d
68 Conflicts:      tpop3d
69 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
70
71 %define         _libexecdir     %{_libdir}/cyrus
72
73 %description
74 The Cyrus IMAP server is a scalable enterprise mail system designed
75 for use from small to large enterprise environments using
76 standards-based technologies.
77
78 A full Cyrus IMAP implementation allows a seamless mail and bulletin
79 board environment to be set up across multiple servers. It differs
80 from other IMAP server implementations in that it is run on "sealed"
81 servers, where users are not normally permitted to log in. The mailbox
82 database is stored in parts of the filesystem that are private to the
83 Cyrus IMAP system. All user access to mail is through software using
84 the IMAP, POP3, or KPOP protocols.
85
86 %description -l pl.UTF-8
87 Serwer Cyrus IMAP jest skalowalnym systemem e-mail dla
88 przedsiębiorstwa, zaprojektowanym dla małych i dużych firm i
89 wykorzystującym oparte na standardach technologie.
90
91 Pełna implementacja Cyrus IMAP pozwala na bezproblemowe ustawienie
92 środowiska poczty i elektronicznej tablicy ogłoszeniowej na kilku
93 serwerach. Tym się różni od innych implementacji serwerów IMAP, że
94 jest uruchamiany na "opieczętowanych" serwerach, na które w normalnych
95 warunkach użytkownicy nie mogą się zalogować. Baza danych skrzynek
96 pocztowych jest przechowywana w tych częściach systemu plików, które
97 są dostępne jedynie dla systemu IMAP Cyrus. Wszelki dostęp do poczty
98 ma miejsce poprzez oprogramowanie wykorzystujące protokoły IMAP, POP3
99 oraz KPOP.
100
101 %description -l pt_BR.UTF-8
102 O servidor IMAP Cyrus é um sistema de mail corporativo escalável
103 projetado para uso por pequenos a grandes ambientes corporativos
104 usando tecnologias baseadas em padrões abertos.
105
106 Uma implementação completa do Cyrus permite se configurar um ambiente
107 transparente de mail e bulletin board entre múltiplos servidores. Ele
108 difere de outros servidores IMAP por rodar em servidores "selados",
109 onde usuários não possuem normalmente a permissão de log in. O banco
110 de dados de caixas de mail é armazenado em partes do sistema de
111 arquivos que são privativos do sistema Cyrus. Todo o acesso de
112 usuários aos mails se dá através de software usando os protocolos
113 IMAP, POP3 ou KPOP.
114
115 %package libs
116 Summary:        Shared cyrus-imapd libraries
117 Summary(pl.UTF-8):      Współdzielone biblioteki cyrus-imapd
118 Group:          Libraries
119
120 %description libs
121 Shared cyrus-imapd libraries.
122
123 %description libs -l pl.UTF-8
124 Współdzielone biblioteki cyrus-imapd.
125
126 %package devel
127 Summary:        Header files for developing with cyrus-imapd libraries
128 Summary(pl.UTF-8):      Pliki nagłówkowe do programowania z użyciem bibliotek cyrus-imapd
129 Group:          Development/Libraries
130 Requires:       %{name}-libs = %{version}-%{release}
131
132 %description devel
133 This package provides the necessary header files files to allow you to
134 develop with cyrus-imapd libraries.
135
136 %description devel -l pl.UTF-8
137 Ten pakiet zawiera pliki nagłówkowe niezbędne do tworzenia
138 oprogramowania z wykorzystaniem bibliotek cyrus-imapd.
139
140 %package static
141 Summary:        Static cyrus-imapd libraries
142 Summary(pl.UTF-8):      Biblioteki statyczne cyrus-imapd
143 Group:          Development/Libraries
144 Requires:       %{name}-devel = %{version}-%{release}
145
146 %description static
147 Static cyrus-imapd libraries
148
149 %description static -l pl.UTF-8
150 Biblioteki statyczne cyrus-imapd
151
152 %package -n perl-%{name}
153 Summary:        Perl interface to cyrus-imapd library
154 Summary(pl.UTF-8):      Perlowy interfejs do biblioteki cyrus-imapd
155 Group:          Development/Languages/Perl
156 Requires:       %{name}-libs = %{version}-%{release}
157
158 %description -n perl-%{name}
159 Perl interface to cyrus-imapd library.
160
161 %description -n perl-%{name} -l pl.UTF-8
162 Perlowy interfejs do biblioteki cyrus-imapd.
163
164 %prep
165 %setup -q
166 %patch0 -p1
167 %patch1 -p1
168
169 rm -rf autom4te.cache
170
171 %build
172 cd makedepend
173 %{__aclocal}
174 %{__autoconf}
175 %configure
176 %{__make}
177 PATH=$PATH:`pwd`; export PATH
178 cd ..
179 %{__libtoolize}
180 %{__aclocal} -I cmulocal
181 %{__autoheader}
182 %{__autoconf}
183 cp -f %{_datadir}/automake/config.* .
184 cp -f %{_datadir}/automake/install-sh .
185 %configure \
186         --with-auth=unix \
187         --without-libwrap \
188         --with-cyrus-prefix=%{_libexecdir} \
189         --with-service-path=%{_libexecdir} \
190         --with-com_err=/usr \
191         --with-perl=%{__perl} \
192         --enable-nntp
193 %{__make} \
194         INSTALLDIRS=vendor
195
196 %{__cc} %{rpmcflags} \
197         -DLIBEXECDIR="\"%{_libexecdir}\"" %{rpmldflags} -Wall -o deliver-wrapper %{SOURCE3}
198
199 %install
200 rm -rf $RPM_BUILD_ROOT
201 install -d \
202         $RPM_BUILD_ROOT{%{_sbindir},%{_libexecdir},%{_mandir}} \
203         $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,sysconfig/rc-inetd} \
204         $RPM_BUILD_ROOT/var/spool/imap/stage. \
205         $RPM_BUILD_ROOT/var/lib/imap/{user,quota,proc,log,msg,deliverdb/db,sieve,db,socket} \
206         $RPM_BUILD_ROOT/etc/{security,pam.d,rc.d/init.d}
207
208 touch $RPM_BUILD_ROOT/var/lib/imap/mailboxes \
209         $RPM_BUILD_ROOT/var/lib/imap/faillog \
210         $RPM_BUILD_ROOT/etc/security/blacklist.imap \
211         $RPM_BUILD_ROOT/etc/security/blacklist.pop3
212
213 %{__make} install \
214         DESTDIR=$RPM_BUILD_ROOT \
215         CYRUS_USER="`id -u`" \
216         CYRUS_GROUP="`id -g`" \
217         INSTALLDIRS=vendor
218
219 install deliver-wrapper $RPM_BUILD_ROOT%{_libexecdir}/deliver-wrapper
220
221 install %{SOURCE1}      %{SOURCE2} %{SOURCE4} %{SOURCE5} .
222 install %{SOURCE6}      $RPM_BUILD_ROOT/etc/logrotate.d/cyrus-imapd
223 install %{SOURCE7}      $RPM_BUILD_ROOT%{_sysconfdir}/imapd.conf
224 install %{SOURCE9}      $RPM_BUILD_ROOT/etc/pam.d/imap
225 install %{SOURCE10}     $RPM_BUILD_ROOT/etc/pam.d/pop
226 sed -e 's,/''usr/lib/cyrus,%{_libexecdir},' %{SOURCE11} > $RPM_BUILD_ROOT/etc/rc.d/init.d/cyrus-imapd
227 install %{SOURCE12}     $RPM_BUILD_ROOT%{_sysconfdir}/cyrus.conf
228
229 mv -f $RPM_BUILD_ROOT%{_libexecdir}/master      $RPM_BUILD_ROOT%{_libexecdir}/cyrus-master
230 mv -f $RPM_BUILD_ROOT%{_mandir}/man8/master.8   $RPM_BUILD_ROOT%{_mandir}/man8/cyrus-master.8
231 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/idled.8
232 rm -f $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
233
234 touch $RPM_BUILD_ROOT/etc/security/blacklist.{imap,pop3}
235
236 find $RPM_BUILD_ROOT%{perl_vendorarch} -name .packlist | xargs rm -v
237
238 # make hashed dirs
239 for i in `%{__perl} -le 'print for "a".."z"'`; do
240         install -d $RPM_BUILD_ROOT%{_var}/lib/imap/user/$i
241         install -d $RPM_BUILD_ROOT%{_var}/lib/imap/quota/$i
242         install -d $RPM_BUILD_ROOT%{_var}/lib/imap/sieve/$i
243         install -d $RPM_BUILD_ROOT%{_var}/spool/imap/$i
244 done
245
246 %clean
247 rm -rf $RPM_BUILD_ROOT
248
249 %pre
250 %useradd -u 76 -d /var/spool/imap -s /bin/false -c "Cyrus User" -g mail cyrus
251
252 %post
253 /sbin/chkconfig --add cyrus-imapd
254 touch /var/lib/imap/faillog
255 chown cyrus:mail /var/lib/imap/faillog
256 chmod 640 /var/lib/imap/faillog
257 cd /var/lib/imap
258 chattr +S . user quota user/* quota/* 2>/dev/null ||:
259 chattr +S /var/spool/imap /var/spool/imap/* 2>/dev/null ||:
260 %service cyrus-imapd restart "cyrus imap daemon"
261
262 %preun
263 if [ "$1" = "0" ]; then
264         %service cyrus-imapd stop
265         /sbin/chkconfig --del cyrus-imapd
266 fi
267
268 %postun
269 if [ "$1" = "0" ]; then
270         %userremove cyrus
271 fi
272
273 %post   libs -p /sbin/ldconfig
274 %postun libs -p /sbin/ldconfig
275
276 %files
277 %defattr(644,root,root,755)
278 %doc cyrus-README cyrus-procmailrc cyrus-user-procmailrc.template
279 %doc cyrus-imapd-procmail+cyrus.mc COPYRIGHT doc/*.html tools
280 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
281 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/cyrus-imapd
282 %attr(440,cyrus,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*
283 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.*
284 %attr(754,root,root) /etc/rc.d/init.d/cyrus-imapd
285 %attr(640,cyrus,mail) %ghost /var/lib/imap/faillog
286 %attr(755,root,root) %{_bindir}/*
287 %dir %{_libexecdir}
288 %attr(4754,cyrus,mail) %{_libexecdir}/deliver
289 %attr(2755,cyrus,mail) %{_libexecdir}/deliver-wrapper
290 %attr(755,root,root) %{_libexecdir}/arbitron
291 %attr(755,root,root) %{_libexecdir}/chk_cyrus
292 %attr(755,root,root) %{_libexecdir}/ctl_cyrusdb
293 %attr(755,root,root) %{_libexecdir}/ctl_deliver
294 %attr(755,root,root) %{_libexecdir}/ctl_mboxlist
295 %attr(755,root,root) %{_libexecdir}/cvt_cyrusdb
296 %attr(755,root,root) %{_libexecdir}/cyr_dbtool
297 %attr(755,root,root) %{_libexecdir}/cyrdump
298 %attr(755,root,root) %{_libexecdir}/cyr_expire
299 %attr(755,root,root) %{_libexecdir}/cyrus-master
300 %attr(755,root,root) %{_libexecdir}/fetchnews
301 %attr(755,root,root) %{_libexecdir}/fud
302 %attr(755,root,root) %{_libexecdir}/imapd
303 %attr(755,root,root) %{_libexecdir}/ipurge
304 %attr(755,root,root) %{_libexecdir}/lmtpd
305 %attr(755,root,root) %{_libexecdir}/lmtpproxyd
306 %attr(755,root,root) %{_libexecdir}/mbexamine
307 %attr(755,root,root) %{_libexecdir}/mbpath
308 %attr(755,root,root) %{_libexecdir}/nntpd
309 %attr(755,root,root) %{_libexecdir}/notifyd
310 %attr(755,root,root) %{_libexecdir}/pop3d
311 %attr(755,root,root) %{_libexecdir}/pop3proxyd
312 %attr(755,root,root) %{_libexecdir}/proxyd
313 %attr(755,root,root) %{_libexecdir}/quota
314 %attr(755,root,root) %{_libexecdir}/reconstruct
315 %attr(755,root,root) %{_libexecdir}/sievec
316 %attr(755,root,root) %{_libexecdir}/smmapd
317 %attr(755,root,root) %{_libexecdir}/squatter
318 %attr(755,root,root) %{_libexecdir}/timsieved
319 %attr(755,root,root) %{_libexecdir}/tls_prune
320 %attr(755,root,root) %{_libexecdir}/unexpunge
321
322
323 %attr(750,cyrus,mail) /var/spool/imap
324 %attr(750,cyrus,mail) %dir /var/lib/imap
325 %attr(750,cyrus,mail) %dir /var/lib/imap/deliverdb
326 %attr(750,cyrus,mail) /var/lib/imap/deliverdb/db
327 %attr(750,cyrus,mail) /var/lib/imap/quota
328 %attr(750,cyrus,mail) /var/lib/imap/user
329 %attr(750,cyrus,mail) /var/lib/imap/sieve
330 %attr(750,cyrus,mail) /var/lib/imap/log
331 %attr(750,cyrus,mail) /var/lib/imap/msg
332 %attr(750,cyrus,mail) /var/lib/imap/proc
333 %attr(750,cyrus,mail) /var/lib/imap/db
334 %attr(750,cyrus,mail) /var/lib/imap/socket
335 %attr(750,cyrus,mail) %config(noreplace) %verify(not md5 mtime size) /var/lib/imap/mailboxes
336
337 %{_mandir}/man*/*
338
339 %files libs
340 %defattr(644,root,root,755)
341 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
342
343 %files devel
344 %defattr(644,root,root,755)
345 %attr(755,root,root) %{_libdir}/lib*.so
346 %{_libdir}/lib*.la
347 %{_includedir}/cyrus
348
349 %files static
350 %defattr(644,root,root,755)
351 %{_libdir}/lib*.a
352
353 %files -n perl-%{name}
354 %defattr(644,root,root,755)
355 %{perl_vendorarch}/Cyrus
356 %dir %{perl_vendorarch}/auto/Cyrus
357 %dir %{perl_vendorarch}/auto/Cyrus/IMAP
358 %attr(755,root,root) %{perl_vendorarch}/auto/Cyrus/IMAP/IMAP.so
359 %{perl_vendorarch}/auto/Cyrus/IMAP/IMAP.bs
360 %dir %{perl_vendorarch}/auto/Cyrus/SIEVE
361 %dir %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve
362 %attr(755,root,root) %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve/managesieve.so
363 %{perl_vendorarch}/auto/Cyrus/SIEVE/managesieve/managesieve.bs
This page took 0.108942 seconds and 3 git commands to generate.