-#
# TODO:
-# - waiting for all updates from courier-mta.org, and all triggers !
-# - force update of userdb ? or trigger with info to do it manualy
-# - tests
+# - put imap-ssl and pop3-ssl to separate packages - some want to have
+# ssl-only system.
+#
+%bcond_with toplevel # Allow toplevel folders. More info: http://www.ricky-chan.co.uk/courier/
#
Summary: Courier-IMAP server
Summary(pl): Serwer Courier-IMAP
Name: courier-imap
-Version: 4.0.2
-Release: 0.5
+Version: 4.1.1
+Release: 2
License: GPL
Group: Networking/Daemons
Source0: http://dl.sourceforge.net/courier/%{name}-%{version}.tar.bz2
-# Source0-md5: 9061583ef8e7b3fd69ef77dbfc0656eb
+# Source0-md5: f423a609d9cce0dcf193cac64eb4cbdd
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
URL: http://www.courier-mta.org/imap/
BuildRequires: autoconf >= 2.54
BuildRequires: automake
-BuildRequires: courier-authlib-devel
+BuildRequires: courier-authlib-devel >= 0.57
BuildRequires: db-devel
BuildRequires: fam-devel
BuildRequires: libstdc++-devel
BuildRequires: openssl-devel >= 0.9.7d
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: pam >= 0.79.0
+Requires: rc-scripts
Provides: imapdaemon
Obsoletes: imapdaemon
Conflicts: cyrus-imapd
Summary: Common files for imap and pop3 daemons
Summary(pl): Pliki wspólne dla serwerów imap i pop3
Group: Networking/Daemons
-PreReq: rc-scripts
Requires(post,preun): /sbin/chkconfig
+Requires: /sbin/chkconfig
+Requires: courier-authlib
Requires: procps
+Requires: rc-scripts
%description common
Common files for imap and pop3 daemons.
Summary: Courier-IMAP POP3 Server
Summary(pl): Serwer Courier-IMAP POP3
Group: Networking/Daemons
-PreReq: %{name}-common = %{version}-%{release}
+Requires: %{name}-common = %{version}-%{release}
Requires: pam >= 0.77.3
Provides: pop3daemon
Obsoletes: pop3daemon
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%if %{with toplevel}
+%patch3 -p1
+%endif
+%patch4 -p1
install %{SOURCE1} courier-imap.in
-install %{SOURCE2} courier-pop3.in
+install %{SOURCE2} courier-imap-ssl.in
+install %{SOURCE3} courier-pop3.in
+install %{SOURCE4} courier-pop3-ssl.in
+rm -f makedat/configure.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.in -o -name configure.ac ')' | while read FILE; do
+ cd "$(dirname "$FILE")"
+
+ if [ -f Makefile.am ]; then
+ %{__sed} -i -e '/_[L]DFLAGS=-static/d' Makefile.am
+ fi
+
+ %{__libtoolize}
+ %{__aclocal}
+ %{__autoconf}
+ %{__autoheader}
+ %{__automake}
-cd imap
-%{__aclocal}
-%{__autoconf}
-ln -s ../ltmain.sh .
-%{__automake}
-cd ..
+ cd -
+done
%configure \
--with-db=db \
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-imap-ssl $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-imap-ssl
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
+install courier-pop3-ssl $RPM_BUILD_ROOT/etc/rc.d/init.d/courier-pop3-ssl
+install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/imap
+install %{SOURCE6} $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 imap/README README.imap
+install imap/ChangeLog ChangeLog
+install maildir/README.maildirquota.txt README.maildirquota
-mv -f $RPM_BUILD_ROOT%{_datadir}/mk*cert \
- $RPM_BUILD_ROOT%{_sbindir}
+mv -f $RPM_BUILD_ROOT%{_datadir}/mk*cert $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
+install tcpd/couriertls.1 $RPM_BUILD_ROOT%{_mandir}/man8/couriertls.8
+install imap/courierpop3d.8 $RPM_BUILD_ROOT%{_mandir}/man8/courierpop3d.8
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
%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
+if [ "$1" = "0" ]; then
+ %service courier-imap-ssl stop
+ /sbin/chkconfig --del courier-imap-ssl
+fi
+
+
%triggerin -- %{name} < 3.0.5
if [ -f /var/lib/openssl/certs/imapd.pem ]; then
echo
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
. %{_sysconfdir}/imapd-ssl
sed -i s/^TLS_CACHEFILE=.*/"TLS_CACHEFILE=\/var\/spool\/courier-imap\/couriersslcache"/ %{_sysconfdir}/imapd-ssl
fi
+%triggerin -n %{name}-common -- %{name}-userdb
+echo
+echo courier-imap-userdb is obsolete
+echo install courier-authlib-userdb package
+echo
+
%triggerin -n %{name}-common -- %{name}-common < 3.0.5
/sbin/chkconfig --del authdaemon
if [ -f /var/lock/subsys/authdaemon ]; then
%post pop3
/sbin/chkconfig --add courier-pop3
+/sbin/chkconfig --add courier-pop3-ssl
/sbin/chkconfig --del courier-imap-pop3 >/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
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
. %{_sysconfdir}/pop3d-ssl
%files
%defattr(644,root,root,755)
-%doc maildir/README.sharedfolders.html
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/imap
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/security/blacklist.imap
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/imapd
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/imapd-ssl
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/imapd.cnf
+%doc maildir/README.sharedfolders.txt imap/README.proxy 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
%files common
%defattr(644,root,root,755)
%doc AUTHORS ChangeLog imap/BUGS INSTALL README*
-%attr(750,root,root) %dir %{_sysconfdir}
+%attr(751,root,root) %dir %{_sysconfdir}
%attr(750,root,root) %dir %{_certsdir}
%attr(770,daemon,daemon) %dir %{_localstatedir}
%dir %{_libexecdir}
%{_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*
%files pop3
%defattr(644,root,root,755)
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/pop3
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/security/blacklist.pop3
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/pop3d
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/pop3d-ssl
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/pop3d.cnf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/pop3
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.pop3
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pop3d
+%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