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