SPECS: qmail.spec - fixes for /var/qmail move. sending works

glen glen at pld-linux.org
Mon May 19 22:57:32 CEST 2008


Author: glen                         Date: Mon May 19 20:57:32 2008 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- fixes for /var/qmail move. sending works

---- Files affected:
SPECS:
   qmail.spec (1.176 -> 1.177) 

---- Diffs:

================================================================
Index: SPECS/qmail.spec
diff -u SPECS/qmail.spec:1.176 SPECS/qmail.spec:1.177
--- SPECS/qmail.spec:1.176	Wed Feb  6 22:05:41 2008
+++ SPECS/qmail.spec	Mon May 19 22:57:27 2008
@@ -34,7 +34,7 @@
 Summary(pl.UTF-8):	qmail - serwer pocztowy (MTA)
 Name:		qmail
 Version:	1.03
-Release:	63
+Release:	63.2
 License:	Public Domain
 Group:		Networking/Daemons
 Source0:	http://cr.yp.to/software/%{name}-%{version}.tar.gz
@@ -47,8 +47,8 @@
 # Source4-md5:	6818629dc74737f3ca33ca97ab4ffcc4
 Source5:	http://www.netmeridian.com/e-huss/queue-fix-1.4.tar.gz
 # Source5-md5:	43f915c104024e6f33a5b3ff52dfb75b
-Source6:	http://glen.alkohol.ee/pld/qmail/%{name}-conf-20061222.tar.bz2
-# Source6-md5:	b844f22a9134ee16ee7a9f81c223ac80
+Source6:	http://glen.alkohol.ee/pld/qmail/%{name}-conf-20080519.tar.bz2
+# Source6-md5:	95a9af47c4a7b92fb6a07014bb89987e
 Source7:	http://iidea.pl/~paweln/tlum/%{name}-doki.tar.bz2
 # Source7-md5:	2d85f0f9f8408cf6caab9f9bc8f68657
 Source8:	%{name}-linux.sh
@@ -171,7 +171,6 @@
 # bouncing it because it exceeded your databytes setting
 Patch219:	%{name}-smtpd-esmtp-size-gentoo.patch
 
-
 # Reject some bad relaying attempts
 # gentoo bug #18064
 Patch220:	%{name}-smtpd-relay-reject.gentoo.patch
@@ -254,6 +253,7 @@
 Provides:	user(qmails)
 Obsoletes:	smtpdaemon
 Conflicts:	qmail-client
+Conflicts:	qmhandle < 1.2.0-5.4
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define		_sysconfdir	/etc/qmail
@@ -261,6 +261,7 @@
 %define		supervise	%{_sysconfdir}/supervise
 
 %define		varqmail	/var/lib/qmail
+%define		queuedir	/var/spool/qmail
 # not FHS compliant - use freedt with sane path?
 %define		servicedir	/service
 
@@ -464,6 +465,8 @@
 	patch -p2 < $a
 done
 
+echo %{varqmail} > conf-qmail
+
 # setup compiler. we use CFLAGS redefine rather using conditional patching.
 echo -n "%{__cc} %{rpmcflags}" > conf-cc
 echo -n "%{__cc} -s" > conf-ld
@@ -484,8 +487,8 @@
 echo -n ' -lhome_etc' >> conf-ld
 %endif
 
-# remove backup files after patching
-rm -f *~
+# cleanup backups after patching
+find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
 
 %build
 %{__make} CFLAGS="%{rpmcflags}"
@@ -497,17 +500,22 @@
 
 %install
 rm -rf $RPM_BUILD_ROOT
-
-install -d boot
-install -d $RPM_BUILD_ROOT{%{_sbindir},%{_bindir},%{_mandir},%{_prefix}/lib,%{_libdir}/qmail,%{varqmail}} \
+install -d $RPM_BUILD_ROOT{%{_sbindir},%{_bindir},%{_mandir}/man{1,8},%{_prefix}/lib,%{_libdir}/qmail,%{varqmail}} \
 	$RPM_BUILD_ROOT/etc/{rc.d/init.d,profile.d,mail,pam.d,security,logrotate.d} \
 	$RPM_BUILD_ROOT%{_sysconfdir}/{alias,control,users} \
+	$RPM_BUILD_ROOT%{queuedir}
 
-ln -sf ../..%{_sysconfdir}/alias $RPM_BUILD_ROOT%{varqmail}
-ln -sf ../..%{_sysconfdir}/control $RPM_BUILD_ROOT%{varqmail}
-ln -sf ../..%{_sysconfdir}/users $RPM_BUILD_ROOT%{varqmail}
-ln -sf ../..%{_libdir}/qmail $RPM_BUILD_ROOT%{varqmail}/bin
-ln -sf ../..%{_mandir} $RPM_BUILD_ROOT%{varqmail}/man
+# docs for qmail setup are installed here
+install -d boot
+
+# symlinks so ./install would install to wanted directories
+install -d $RPM_BUILD_ROOT%{varqmail}
+ln -sf ../../..%{_sysconfdir}/alias $RPM_BUILD_ROOT%{varqmail}
+ln -sf ../../..%{_sysconfdir}/control $RPM_BUILD_ROOT%{varqmail}
+ln -sf ../../..%{_sysconfdir}/users $RPM_BUILD_ROOT%{varqmail}
+ln -sf ../../..%{_libdir}/qmail $RPM_BUILD_ROOT%{varqmail}/bin
+ln -sf ../../..%{_mandir} $RPM_BUILD_ROOT%{varqmail}/man
+ln -sf ../../..%{queuedir} $RPM_BUILD_ROOT%{varqmail}/queue
 ln -sf $RPM_BUILD_DIR/%{name}-%{version}/boot $RPM_BUILD_ROOT%{varqmail}/boot
 
 ./install -s $RPM_BUILD_ROOT
@@ -516,15 +524,14 @@
 ln -sf ../..%{varqmail}/bin/sendmail $RPM_BUILD_ROOT%{_sbindir}/sendmail
 ln -sf ../..%{varqmail}/bin/sendmail $RPM_BUILD_ROOT%{_prefix}/lib/sendmail
 
-# Set up boot procedures
 install %{SOURCE8} $RPM_BUILD_ROOT/etc/profile.d/qmail.sh
 install %{SOURCE9} $RPM_BUILD_ROOT/etc/profile.d/qmail.csh
 
 install %{SOURCE18} $RPM_BUILD_ROOT/etc/logrotate.d/qmail
 install %{SOURCE19} $RPM_BUILD_ROOT/etc/logrotate.d/qmail-pop3
 
-# tcpserver (supervise)
-PV=`basename %{SOURCE6}`
+# tcpserver (ucspi-tcp)
+PV=$(basename %{SOURCE6})
 cd ${PV%.tar.bz2}
 
 install -d $RPM_BUILD_ROOT/var/log/{,archive/}qmail
@@ -547,7 +554,7 @@
 install qmail-genrsacert.sh $RPM_BUILD_ROOT/etc/cron.hourly
 
 # for some files
-install -d $RPM_BUILD_ROOT/var/qmail/control/tlshosts
+install -d $RPM_BUILD_ROOT%{varqmail}/control/tlshosts
 > $RPM_BUILD_ROOT%{_sysconfdir}/control/clientcert.pem
 %endif
 
@@ -605,11 +612,11 @@
 # Set up default delivery
 install %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/control/defaultdelivery
 
-install %{SOURCE14} $RPM_BUILD_ROOT%{varqmail}/bin/qmail-lint
-install %{SOURCE15} $RPM_BUILD_ROOT%{varqmail}/bin/qmail-qsanity
+install %{SOURCE14} $RPM_BUILD_ROOT%{_libdir}/qmail/qmail-lint
+install %{SOURCE15} $RPM_BUILD_ROOT%{_bindir}/qmail-qsanity
 
 # QUEUE FIX command
-install queue-fix-1.4/queue-fix $RPM_BUILD_ROOT%{varqmail}/bin
+install queue-fix-1.4/queue-fix $RPM_BUILD_ROOT%{_bindir}
 
 # CHECKPASSWORD command
 install checkpass-1.2/checkpass $RPM_BUILD_ROOT%{varqmail}/bin
@@ -618,17 +625,17 @@
 
 # DOT FORWARD command and doc
 install dot-forward-0.71/dot-forward $RPM_BUILD_ROOT%{varqmail}/bin
-install dot-forward-0.71/dot-forward.1 $RPM_BUILD_ROOT%{varqmail}/man/man1
+install dot-forward-0.71/dot-forward.1 $RPM_BUILD_ROOT%{_mandir}/man1
 
 # FAST FORWARD commands and docs
 install fastforward-0.51/fastforward $RPM_BUILD_ROOT%{varqmail}/bin
-install fastforward-0.51/newaliases $RPM_BUILD_ROOT%{varqmail}/bin
+install fastforward-0.51/newaliases $RPM_BUILD_ROOT%{_bindir}
 install fastforward-0.51/newinclude $RPM_BUILD_ROOT%{varqmail}/bin
 install fastforward-0.51/printforward $RPM_BUILD_ROOT%{varqmail}/bin
 install fastforward-0.51/printmaillist $RPM_BUILD_ROOT%{varqmail}/bin
 install fastforward-0.51/setforward $RPM_BUILD_ROOT%{varqmail}/bin
 install fastforward-0.51/setmaillist $RPM_BUILD_ROOT%{varqmail}/bin
-install fastforward-0.51/*.1 $RPM_BUILD_ROOT%{varqmail}/man/man1/
+install fastforward-0.51/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
 
 %if %{with dkeys}
 install qmail-dk $RPM_BUILD_ROOT%{varqmail}/bin
@@ -651,15 +658,10 @@
 mv -f $RPM_BUILD_ROOT%{varqmail}/bin/maildirmake	$RPM_BUILD_ROOT%{_bindir}
 mv -f $RPM_BUILD_ROOT%{varqmail}/bin/maildirwatch	$RPM_BUILD_ROOT%{_bindir}
 mv -f $RPM_BUILD_ROOT%{varqmail}/bin/qmail-qread	$RPM_BUILD_ROOT%{_bindir}
-mv -f $RPM_BUILD_ROOT%{varqmail}/bin/qmail-qsanity	$RPM_BUILD_ROOT%{_bindir}
 mv -f $RPM_BUILD_ROOT%{varqmail}/bin/qmail-qstat	$RPM_BUILD_ROOT%{_bindir}
-mv -f $RPM_BUILD_ROOT%{varqmail}/bin/queue-fix		$RPM_BUILD_ROOT%{_bindir}
-mv -f $RPM_BUILD_ROOT%{varqmail}/bin/newaliases		$RPM_BUILD_ROOT%{_bindir}
 mv -f $RPM_BUILD_ROOT%{varqmail}/bin/qmail-showctl	$RPM_BUILD_ROOT%{_bindir}
-
-# remove mbox(5) man page which is in man-pages now and isn't strict qmail
-# man page
-rm -f $RPM_BUILD_ROOT%{_mandir}/man5/mbox.5
+mv -f $RPM_BUILD_ROOT%{varqmail}/rc					$RPM_BUILD_ROOT%{_libdir}/qmail
+ln -s ../../%{_libdir}/qmail/rc $RPM_BUILD_ROOT%{varqmail}/rc
 
 # remove doc, it's already in %doc
 rm -rf $RPM_BUILD_ROOT%{varqmail}/doc
@@ -697,9 +699,23 @@
 rm -f qmail-doki/*.[135789]
 rm -f INSTALL.redhat.redhat # size 0
 
+# remove mbox(5) man page which is in man-pages now and isn't strict qmail
+# man page
+rm -f $RPM_BUILD_ROOT%{_mandir}/man5/mbox.5
+rm -f $RPM_BUILD_ROOT%{_mandir}/pl/man5/mbox.5
+
+# no need for these symlinks to package
+rm -f $RPM_BUILD_ROOT%{varqmail}/{boot,man}
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%pretrans
+if [ -d /var/qmail ]; then
+	echo >&2 "You have old qmail setup with /var/qmail. Flawless upgrade not yet supported."
+	exit 1
+fi
+
 %pre
 # Add few users and groups
 %groupadd -g 81 nofiles
@@ -719,7 +735,7 @@
 
 umask 022
 if [ ! -s /etc/qmail/control/me ]; then
-	FQDN=`/bin/hostname -f`
+	FQDN=$(/bin/hostname -f)
 	echo "$FQDN" > /etc/qmail/control/me
 	echo "$FQDN" | /bin/sed 's/^\([^\.]*\)\.\([^\.]*\)\./\2\./' > /etc/qmail/control/defaultdomain
 	echo "$FQDN" | /bin/sed 's/^.*\.\([^\.]*\)\.\([^\.]*\)$/\1.\2/' > /etc/qmail/control/plusdomain
@@ -736,7 +752,7 @@
 %{_bindir}/newaliases
 
 # queue-fix makes life easy!
-%{_bindir}/queue-fix %{varqmail}/queue >/dev/null
+%{_bindir}/queue-fix %{queuedir} >/dev/null
 
 # build .cdb if missing
 for i in smtp qmtp qmqp; do
@@ -754,7 +770,7 @@
 
 # reload qmail-send on upgrade, the others are invoked anyway per connection
 if [ -d %{servicedir}/qmail-send/supervise ]; then
-	svc -t %{servicedir}/qmail-send %{servicedir}/qmail-send/log
+	svc -t %{servicedir}/qmail-send{,/log}
 fi
 
 ln -snf %{supervise}/send %{servicedir}/qmail-send
@@ -858,7 +874,7 @@
 
 umask 022
 if [ ! -s /etc/qmail/control/me ]; then
-	FQDN=`/bin/hostname -f`
+	FQDN=$(/bin/hostname -f)
 	echo "$FQDN" > /etc/qmail/control/me
 	echo "$FQDN" > /etc/qmail/control/idhost
 	echo "$FQDN" | /bin/sed 's/^\([^\.]*\)\.\([^\.]*\)\./\2\./' > /etc/qmail/control/defaultdomain
@@ -886,19 +902,20 @@
 %dir %{_sysconfdir}/users
 %attr(755,root,qmail) %dir %{_libdir}/qmail
 %attr(755,root,qmail) %dir %{varqmail}
-%attr(750,qmailq,qmail) %dir %{varqmail}/queue
-%attr(750,qmailq,qmail) %dir %{varqmail}/queue/lock
-%attr(700,qmails,qmail) %{varqmail}/queue/bounce
-%attr(700,qmails,qmail) %{varqmail}/queue/info
-%attr(700,qmailq,qmail) %{varqmail}/queue/intd
-%attr(700,qmails,qmail) %{varqmail}/queue/local
-%attr(750,qmailq,qmail) %{varqmail}/queue/mess
-%attr(700,qmailq,qmail) %{varqmail}/queue/pid
-%attr(700,qmails,qmail) %{varqmail}/queue/remote
-%attr(750,qmailq,qmail) %{varqmail}/queue/todo
-%attr(600,qmails,qmail) %config(noreplace) %verify(not md5 mtime size) %ghost %{varqmail}/queue/lock/sendmutex
-%attr(644,qmailr,qmail) %config(noreplace) %verify(not md5 mtime size) %ghost %{varqmail}/queue/lock/tcpto
-%attr(622,qmails,qmail) %config(noreplace) %verify(not md5 mtime size) %ghost %{varqmail}/queue/lock/trigger
+%{varqmail}/queue
+%attr(750,qmailq,qmail) %dir %{queuedir}
+%attr(750,qmailq,qmail) %dir %{queuedir}/lock
+%attr(700,qmails,qmail) %{queuedir}/bounce
+%attr(700,qmails,qmail) %{queuedir}/info
+%attr(700,qmailq,qmail) %{queuedir}/intd
+%attr(700,qmails,qmail) %{queuedir}/local
+%attr(750,qmailq,qmail) %{queuedir}/mess
+%attr(700,qmailq,qmail) %{queuedir}/pid
+%attr(700,qmails,qmail) %{queuedir}/remote
+%attr(750,qmailq,qmail) %{queuedir}/todo
+%attr(600,qmails,qmail) %config(noreplace) %verify(not md5 mtime size) %ghost %{queuedir}/lock/sendmutex
+%attr(644,qmailr,qmail) %config(noreplace) %verify(not md5 mtime size) %ghost %{queuedir}/lock/tcpto
+%attr(622,qmails,qmail) %config(noreplace) %verify(not md5 mtime size) %ghost %{queuedir}/lock/trigger
 %attr(644,root,nofiles) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/alias/.qmail-*
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/control/defaultdomain
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/control/locals
@@ -981,7 +998,8 @@
 %attr(755,root,root) %{_libdir}/qmail/qmail-dk
 %dir %attr(751,qmaild,root) %{_sysconfdir}/control/domainkeys
 %endif
-%attr(755,root,root) %{varqmail}/rc
+%attr(755,root,root) %{_libdir}/qmail/rc
+%{varqmail}/rc
 
 %attr(755,root,root) %{_libdir}/qmail/config-sanity-check
 %attr(755,root,root) %{_libdir}/qmail/qmail-config-system
@@ -1181,6 +1199,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.177  2008-05-19 20:57:27  glen
+- fixes for /var/qmail move. sending works
+
 Revision 1.176  2008-02-06 21:05:41  glen
 - never use '<=' in trigger comparision; rel 63
 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SPECS/qmail.spec?r1=1.176&r2=1.177&f=u



More information about the pld-cvs-commit mailing list