X-Git-Url: http://git.pld-linux.org/?p=packages%2Fcourier-imap.git;a=blobdiff_plain;f=courier-imap.spec;h=bc9615045dab40b0d3fc963e59789a61f12458cf;hp=2188d9dc3086e8e1d1c007fb96bbc8ac930e09b1;hb=HEAD;hpb=542cc3303f691fa793af83497ec9211f303f15b5 diff --git a/courier-imap.spec b/courier-imap.spec index 2188d9d..943c76d 100644 --- a/courier-imap.spec +++ b/courier-imap.spec @@ -1,41 +1,71 @@ +# TODO: +# - put imap-ssl and pop3-ssl to separate packages - some want to have +# ssl-only system (or non-ssl only system) +# see also http://thread.gmane.org/gmane.linux.pld.devel.english/2509/focus=2509 +# - fix manpages: +# [set $man.base.url.for.relative.links]/maildirquota.html +# - Review -toplevel.patch +# +# Conditional build: +%bcond_with toplevel # Allow toplevel folders. More info: http://www.ricky-chan.co.uk/courier/ +%bcond_without fam # FAM for enhanced IMAP IDLE and locking +%bcond_with gnutls # GnuTLS instead of OpenSSL +%bcond_with socks # (Courier) Socks support + Summary: Courier-IMAP server -Summary(pl): Serwer Courier-IMAP +Summary(pl.UTF-8): Serwer Courier-IMAP Name: courier-imap -Version: 4.0.2 -Release: 2 -License: GPL +Version: 5.2.2 +Release: 1 +License: GPL v3 with OpenSSL exception Group: Networking/Daemons -Source0: http://dl.sourceforge.net/courier/%{name}-%{version}.tar.bz2 -# Source0-md5: 9061583ef8e7b3fd69ef77dbfc0656eb +Source0: https://downloads.sourceforge.net/courier/%{name}-%{version}.tar.bz2 +# Source0-md5: 7f210160a19ec973ea39d9ef32e25053 Source1: %{name}.init -Source2: %{name}-pop3.init -Source3: %{name}.pamd -Source4: %{name}-pop3.pamd +Source2: %{name}-ssl.init +Source3: %{name}-pop3.init +Source4: %{name}-pop3-ssl.init +Source5: %{name}.pamd +Source6: %{name}-pop3.pamd Patch0: %{name}-dirs.patch Patch1: %{name}-certsdir.patch Patch2: %{name}-maildir.patch +Patch3: %{name}-toplevel.patch +Patch4: %{name}-drop-makedat.patch +Patch5: %{name}-disable-courierlogger-check.patch URL: http://www.courier-mta.org/imap/ -BuildRequires: autoconf >= 2.54 +BuildRequires: autoconf >= 2.59 BuildRequires: automake -BuildRequires: courier-authlib-devel +BuildRequires: courier-authlib-devel >= 0.71.0 +%{?with_socks:BuildRequires: courier-sox-devel} +BuildRequires: courier-unicode-devel >= 2.1 BuildRequires: db-devel -BuildRequires: fam-devel +BuildRequires: libidn2-devel >= 0.0.0 +%{?with_fam:BuildRequires: gamin-devel} +%{?with_gnutls:BuildRequires: gnutls-devel >= 3.0} +%{?with_gnutls:BuildRequires: libgcrypt-devel} +%{?with_gnutls:BuildRequires: libgpg-error-devel} BuildRequires: libstdc++-devel -BuildRequires: openssl-devel >= 0.9.7d +BuildRequires: libtool >= 2:2 +%{!?with_gnutls:BuildRequires: openssl-devel >= 0.9.7d} +BuildRequires: perl-base +BuildRequires: pkgconfig BuildRequires: procps +BuildRequires: rpmbuild(macros) >= 1.268 BuildRequires: sed >= 4.0 BuildRequires: sysconftool -PreReq: %{name}-common = %{version}-%{release} -PreReq: rc-scripts Requires(post,preun): /sbin/chkconfig -Requires: pam >= 0.77.3 +Requires: %{name}-common = %{version}-%{release} +Requires: /sbin/chkconfig +Requires: courier-unicode >= 2.1 +Requires: pam >= 0.79.0 +Requires: rc-scripts Provides: imapdaemon Obsoletes: imapdaemon Conflicts: cyrus-imapd Conflicts: imap BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define _libexecdir /usr/%{_lib}/courier-imap %define _sysconfdir /etc/courier-imap %define _certsdir %{_sysconfdir}/certs %define _localstatedir /var/spool/courier-imap @@ -43,56 +73,60 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description Courier-IMAP is an IMAP server for Maildir mailboxes. -%description -l pl +%description -l pl.UTF-8 Courier-IMAP jest serwerem IMAP dla skrzynek pocztowych Maildir. %package common Summary: Common files for imap and pop3 daemons -Summary(pl): Pliki wspólne dla serwerów imap i pop3 +Summary(pl.UTF-8): Pliki wspólne dla serwerów imap i pop3 Group: Networking/Daemons -PreReq: rc-scripts -Requires(pre): courier-authlib Requires(post,preun): /sbin/chkconfig +Requires: /sbin/chkconfig +# even if using OpenSSL libraries, Courier uses certtool from GnuTLS +Requires: /usr/bin/certtool +Requires: courier-authlib >= 0.71.0 Requires: procps +Requires: rc-scripts +Conflicts: maildrop < 3 %description common Common files for imap and pop3 daemons. -%description common -l pl -Pliki wspólne dla serwerów imap i pop3. +%description common -l pl.UTF-8 +Pliki wspólne dla serwerów imap i pop3. %package deliverquota Summary: Deliver to a Maildir with a quota -Summary(pl): Obs³uga quoty przy dostarczaniu poczty do skrzynek Maildir +Summary(pl.UTF-8): Obsługa quoty przy dostarczaniu poczty do skrzynek Maildir Group: Networking/Daemons %description deliverquota deliverquota is a temporary hack to implement E-mail delivery to a Maildir with a software-imposed quota. -%description deliverquota -l pl -deliverquota jest tymczasowym rozwi±zaniem implementuj±cym -dostarczanie e-maili do skrzynek Maildir z programowo narzucon± quot±. +%description deliverquota -l pl.UTF-8 +deliverquota jest tymczasowym rozwiązaniem implementującym +dostarczanie e-maili do skrzynek Maildir z programowo narzuconą quotą. %package maildirmake Summary: Tool for making mail folders in Maildir format -Summary(pl): Narzêdzie do tworzenia folderów w formacie Maildir +Summary(pl.UTF-8): Narzędzie do tworzenia folderów w formacie Maildir Group: Networking/Daemons Conflicts: qmail-maildirmake %description maildirmake Maildirmake is a tool for making mail folders in Maildir format. -%description maildirmake -l pl -Maildirmake jest narzêdziem do tworzenia folderów pocztowych w +%description maildirmake -l pl.UTF-8 +Maildirmake jest narzędziem do tworzenia folderów pocztowych w formacie Maildir. %package pop3 Summary: Courier-IMAP POP3 Server -Summary(pl): Serwer Courier-IMAP POP3 -Group: Networking/Daemons -PreReq: %{name}-common = %{version}-%{release} -Requires: pam >= 0.77.3 +Summary(pl.UTF-8): Serwer Courier-IMAP POP3 +Group: Networking/Daemons/POP3 +Requires: %{name}-common = %{version}-%{release} +Requires: pam >= 0.79.0 Provides: pop3daemon Obsoletes: pop3daemon Conflicts: cyrus-imapd @@ -103,7 +137,7 @@ Conflicts: tpop3d %description pop3 Courier-IMAP POP3 is an POP3 server for Maildir mailboxes. -%description pop3 -l pl +%description pop3 -l pl.UTF-8 Courier-IMAP POP3 jest serwerem POP3 dla skrzynek pocztowych Maildir. %prep @@ -111,59 +145,77 @@ Courier-IMAP POP3 jest serwerem POP3 dla skrzynek pocztowych Maildir. %patch0 -p1 %patch1 -p1 %patch2 -p1 +%if %{with toplevel} +%patch3 -p1 +%endif +%patch4 -p1 +%patch5 -p1 -install %{SOURCE1} courier-imap.in -install %{SOURCE2} courier-pop3.in +cp -p %{SOURCE1} courier-imap.in +cp -p %{SOURCE2} courier-imap-ssl.in +cp -p %{SOURCE3} courier-pop3.in +cp -p %{SOURCE4} courier-pop3-ssl.in %build -cp -f /usr/share/automake/config.sub . -cp -f /usr/share/automake/config.sub maildir - %{__libtoolize} -%{__aclocal} -%{__autoconf} -%{__automake} +# Change Makefile.am files and force recreate Makefile.in's. +find -type f -a -name configure.ac | while read FILE; do + cd "$(dirname "$FILE")" -cd imap -%{__aclocal} -%{__autoconf} -ln -s ../ltmain.sh . -%{__automake} -cd .. + %{__sed} -i -e '/_[L]DFLAGS=-static/d' Makefile.am + + %{__aclocal} + %{__autoconf} + if grep -q AC_CONFIG_HEADER configure.ac; then + %{__autoheader} + fi + %{__automake} + + cd - +done %configure \ - --with-db=db \ + CERTOOL=/usr/bin/certtool \ +%if %{without fam} + ac_cv_header_fam_h=no \ + ac_cv_lib_fam_FAMOpen=no \ +%endif + --libexecdir=%{_libexecdir}/courier-imap \ --enable-unicode \ --with-authchangepwdir=/var/tmp \ - --with-certsdir=%{_certsdir} + --with-certsdir=%{_certsdir} \ + --with-db=db \ + %{?with_gnutls:--with-gnutls} \ + --with-mailer=/usr/lib/sendmail \ + --with-notice=unicode \ + %{!?with_socks:--without-socks} -%{__make} +%{__make} -j1 %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{/etc/{pam.d,rc.d/init.d,security},%{_certsdir}} -%{__make} install \ +%{__make} -j1 install \ DESTDIR=$RPM_BUILD_ROOT -install courier-imap $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-imap -install courier-pop3 $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-pop3 -install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/imap -install %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/pop3 - -rm -rf $RPM_BUILD_ROOT%{_sbindir}/mk*cert - -mv -f imap/README README.imap -mv -f imap/ChangeLog ChangeLog -mv -f maildir/README.maildirquota.txt README.maildirquota +install -p courier-imap $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-imap +install -p courier-imap-ssl $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-imap-ssl +install -p courier-pop3 $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-pop3 +install -p courier-pop3-ssl $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-pop3-ssl +cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/imap +cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/pop3 -mv -f $RPM_BUILD_ROOT%{_datadir}/mk*cert \ - $RPM_BUILD_ROOT%{_sbindir} +# install directly instead of symlinking +%{__rm} $RPM_BUILD_ROOT%{_sbindir}/mk{dhparams,imapdcert,pop3dcert} +%{__mv} $RPM_BUILD_ROOT%{_datadir}/mk{dhparams,imapdcert,pop3dcert} $RPM_BUILD_ROOT%{_sbindir} -mv -f tcpd/couriertls.1 $RPM_BUILD_ROOT%{_mandir}/man8/couriertls.8 -mv -f imap/courierpop3d.8 $RPM_BUILD_ROOT%{_mandir}/man8/courierpop3d.8 +# missing from make install +cp -p libs/imap/courierpop3d.8 $RPM_BUILD_ROOT%{_mandir}/man8 +cp -p libs/tcpd/couriertls.1 $RPM_BUILD_ROOT%{_mandir}/man1 touch $RPM_BUILD_ROOT/etc/security/blacklist.{pop3,imap} +touch $RPM_BUILD_ROOT%{_sysconfdir}/shared/index # make config files ./sysconftool $RPM_BUILD_ROOT%{_sysconfdir}/*.dist @@ -173,29 +225,31 @@ sed -i 's/^POP3DSTART.*/POP3DSTART=YES/' $RPM_BUILD_ROOT%{_sysconfdir}/pop3d sed -i 's/^IMAPDSTART.*/IMAPDSTART=YES/' $RPM_BUILD_ROOT%{_sysconfdir}/imapd # remove unpackaged files -rm -f $RPM_BUILD_ROOT%{_sysconfdir}/*.dist +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/*.dist %clean rm -rf $RPM_BUILD_ROOT %post /sbin/chkconfig --add courier-imap - -if [ -f /var/lock/subsys/courier-imap ]; then - /etc/rc.d/init.d/courier-imap restart >&2 -else - echo "Run \"/etc/rc.d/init.d/courier-imap start\" to start courier-imap daemon." -fi +/sbin/chkconfig --add courier-imap-ssl +%service courier-imap restart "courier-imap daemon" +%service courier-imap-ssl restart "courier-imap-ssl daemon" %preun if [ "$1" = "0" ]; then - if [ -f /var/lock/subsys/courier-imap ]; then - /etc/rc.d/init.d/courier-imap stop >&2 - fi + %service courier-imap stop /sbin/chkconfig --del courier-imap fi -%triggerin -- %{name} < 3.0.5 +if [ "$1" = "0" ]; then + %service courier-imap-ssl stop + /sbin/chkconfig --del courier-imap-ssl +fi + + +%triggerin -- %{name} < 3.0.6 +# 3.0.5 if [ -f /var/lib/openssl/certs/imapd.pem ]; then echo echo imapd.pem has been moved automatically to %{_certsdir} @@ -219,11 +273,9 @@ if [ -f /etc/sysconfig/courier-imap ]; then echo please look at them echo fi -if [ -f /var/lock/subsys/courier-imap ]; then - /etc/rc.d/init.d/courier-imap restart >&2 -fi +%service -q courier-imap restart -%triggerin -- %{name} < 3.0.6 +# 3.0.6 . %{_sysconfdir}/imapd-ssl if [ $TLS_CACHEFILE = "/var/couriersslcache" ]; then sed -i s/^TLS_CACHEFILE=.*/"TLS_CACHEFILE=\/var\/spool\/courier-imap\/couriersslcache"/ %{_sysconfdir}/imapd-ssl @@ -247,31 +299,38 @@ if [ -f /etc/sysconfig/authdaemon ]; then fi echo echo Changes to version 3.0.5 : -echo - config files has been splited and moved to %{_sysconfdir} +echo - config files has been split and moved to %{_sysconfdir} echo - certificates directory has changed to %{_certsdir} echo +%triggerpostun common -- %{name}-common < 5 +%banner -e courier-imap-unicode </dev/null 2>&1 || : if [ -f /var/lock/subsys/courier-imap-pop3 ]; then - /etc/rc.d/init.d/courier-imap-pop3 stop >&2 - /etc/rc.d/init.d/courier-pop3 start >&2 -elif [ -f /var/lock/subsys/courier-pop3 ]; then - /etc/rc.d/init.d/courier-pop3 restart >&2 + /sbin/service courier-imap-pop3 stop >&2 + /sbin/service courier-pop3 start >&2 else - echo "Run \"/etc/rc.d/init.d/courier-pop3 start\" to start courier-pop3 daemon." + %service courier-pop3 restart "courier-pop3 daemon" fi +%service courier-pop3-ssl restart "courier-pop3-ssl daemon" %preun pop3 if [ "$1" = "0" ]; then - if [ -f /var/lock/subsys/courier-pop3 ]; then - /etc/rc.d/init.d/courier-pop3 stop >&2 - fi + %service courier-pop3 stop /sbin/chkconfig --del courier-pop3 + %service courier-pop3-ssl stop + /sbin/chkconfig --del courier-pop3-ssl fi -%triggerin -n %{name}-pop3 -- %{name}-pop3 < 3.0.5 +%triggerin -n %{name}-pop3 -- %{name}-pop3 < 3.0.6 +# 3.0.5 if [ -f /var/lib/openssl/certs/pop3d.pem ]; then echo echo pop3d.pem has been moved automatically to %{_certsdir} @@ -293,11 +352,9 @@ if [ -f /etc/sysconfig/courier-pop3 ]; then echo please look at them echo fi -if [ -f /var/lock/subsys/courier-pop3 ]; then - /etc/rc.d/init.d/courier-pop3 restart >&2 -fi +%service courier-pop3 restart -%triggerin -n %{name}-pop3 -- %{name}-pop3 < 3.0.6 +# 3.0.6 . %{_sysconfdir}/pop3d-ssl if [ $TLS_CACHEFILE = "/var/couriersslcache" ]; then sed -i s/^TLS_CACHEFILE=.*/"TLS_CACHEFILE=\/var\/spool\/courier-imap\/couriersslcache"/ %{_sysconfdir}/pop3d-ssl @@ -305,52 +362,57 @@ fi %files %defattr(644,root,root,755) -%doc maildir/README.sharedfolders.html +%doc libs/maildir/README.sharedfolders.txt libs/imap/README.proxy libs/tcpd/README.couriertls %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/imap %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.imap %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/imapd %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/imapd-ssl %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/imapd.cnf %attr(754,root,root) /etc/rc.d/init.d/courier-imap +%attr(754,root,root) /etc/rc.d/init.d/courier-imap-ssl %attr(755,daemon,daemon) %dir %{_sysconfdir}/shared %attr(755,daemon,daemon) %dir %{_sysconfdir}/shared.tmp +%attr(644,daemon,daemon) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/shared/index %attr(755,root,root) %{_bindir}/imapd %attr(755,root,root) %{_bindir}/maildiracl %attr(755,root,root) %{_bindir}/maildirkw +%attr(755,root,root) %{_bindir}/makeimapaccess %attr(755,root,root) %{_sbindir}/imaplogin %attr(755,root,root) %{_sbindir}/mkimapdcert %attr(755,root,root) %{_sbindir}/sharedindexinstall %attr(755,root,root) %{_sbindir}/sharedindexsplit -%attr(755,root,root) %{_libexecdir}/imapd.rc -%attr(755,root,root) %{_libexecdir}/imapd-ssl.rc -%{_mandir}/man8/imapd* +%attr(755,root,root) %{_libexecdir}/courier-imap/imapd.rc +%attr(755,root,root) %{_libexecdir}/courier-imap/imapd-ssl.rc %{_mandir}/man1/maildiracl.1* %{_mandir}/man1/maildirkw.1* +%{_mandir}/man8/imapd.8* +%{_mandir}/man8/makeimapaccess.8* +%{_mandir}/man8/mkimapdcert.8* %files common %defattr(644,root,root,755) -%doc AUTHORS ChangeLog imap/BUGS INSTALL README* -%attr(750,root,root) %dir %{_sysconfdir} +%doc AUTHORS COPYING INSTALL NEWS README libs/imap/{BUGS,ChangeLog} libs/maildir/README.maildirquota.txt +%attr(751,root,root) %dir %{_sysconfdir} %attr(750,root,root) %dir %{_certsdir} %attr(770,daemon,daemon) %dir %{_localstatedir} -%dir %{_libexecdir} +%dir %{_libexecdir}/courier-imap %{_sysconfdir}/quotawarnmsg.example %attr(755,root,root) %{_bindir}/couriertls -%attr(755,root,root) %{_libexecdir}/couriertcpd -%attr(755,root,root) %{_libexecdir}/makedatprog -%{_mandir}/man1/couriert* -%{_mandir}/man8/couriert* -%{_mandir}/man8/mk* +%attr(755,root,root) %{_sbindir}/mkdhparams +%attr(755,root,root) %{_libexecdir}/courier-imap/couriertcpd +%{_mandir}/man1/couriertcpd.1* +%{_mandir}/man1/couriertls.1* +%{_mandir}/man8/mkdhparams.8* %files deliverquota %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/deliverquota -%{_mandir}/man8/deliverquota* +%{_mandir}/man8/deliverquota.8* %files maildirmake %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/maildirmake -%{_mandir}/man1/maildirmake* +%{_mandir}/man1/maildirmake.1* %files pop3 %defattr(644,root,root,755) @@ -360,9 +422,11 @@ fi %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pop3d-ssl %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pop3d.cnf %attr(754,root,root) /etc/rc.d/init.d/courier-pop3 +%attr(754,root,root) /etc/rc.d/init.d/courier-pop3-ssl %attr(755,root,root) %{_bindir}/pop3d %attr(755,root,root) %{_sbindir}/mkpop3dcert %attr(755,root,root) %{_sbindir}/pop3login -%attr(755,root,root) %{_libexecdir}/pop3d.rc -%attr(755,root,root) %{_libexecdir}/pop3d-ssl.rc -%{_mandir}/man8/courierpop* +%attr(755,root,root) %{_libexecdir}/courier-imap/pop3d.rc +%attr(755,root,root) %{_libexecdir}/courier-imap/pop3d-ssl.rc +%{_mandir}/man8/courierpop3d.8* +%{_mandir}/man8/mkpop3dcert.8*