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