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