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