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