SPECS: mantis.spec - removed unneccessary deps - use apache config...

glen glen at pld-linux.org
Sat Sep 24 15:14:31 CEST 2005


Author: glen                         Date: Sat Sep 24 13:14:31 2005 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- removed unneccessary deps
- use apache config install triggers
- moved config to /etc/mantis

---- Files affected:
SPECS:
   mantis.spec (1.22 -> 1.23) 

---- Diffs:

================================================================
Index: SPECS/mantis.spec
diff -u SPECS/mantis.spec:1.22 SPECS/mantis.spec:1.23
--- SPECS/mantis.spec:1.22	Sun Jan  9 18:42:44 2005
+++ SPECS/mantis.spec	Sat Sep 24 15:14:26 2005
@@ -1,14 +1,16 @@
 # $Revision$, $Date$
+# TIP:
+# - After upgrade from version <= 0.18.x mysql database requires upgrade!
 #
-# tip:
-# After upgrade from version <= 0.18.x mysql database requires upgrade!
+# TODO
+# - security http://security.gentoo.org/glsa/glsa-200509-16.xml
 
 Summary:	The Mantis bug tracker
 Summary(pl):	Mantis - system kontroli błędów
 Name:		mantis
 # %%define		sub_ver rc1
 Version:	0.19.2
-Release:	1
+Release:	1.4
 License:	GPL
 Group:		Development/Tools
 Source0:	http://dl.sourceforge.net/mantisbt/%{name}-%{version}.tar.gz
@@ -16,25 +18,25 @@
 Source1:	%{name}-doc-PLD.tar.gz
 Source2:	%{name}.conf
 URL:		http://mantisbt.sourceforge.net/
-Requires:	apache >= 1.3.27-4
-Requires:	apache-mod_dir >= 1.3.27-4
-Requires:	php >= 4.3.1-4
-Requires:	php-mysql >= 4.3.1-4
-Requires:	php-pcre >= 4.3.1-4
-Requires:	mysql >= 3.23.2
-Requires:	mysql-client >= 3.23.56-1
-Requires:	sed
+BuildRequires:	rpmbuild(macros) >= 1.226
+Requires(triggerpostun):	sed >= 4.0
+Requires:	apache >= 1.3.33-2
+Requires:	apache(mod_dir)
+Requires:	php >= 3:4.3.1-4
+Requires:	php-mysql >= 3:4.3.1-4
+Requires:	php-pcre >= 3:4.3.1-4
 BuildArch:	noarch
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define		_mantisdir	%{_datadir}/%{name}
+%define		_sysconfdir /etc/%{name}
 
 %description
 Mantis is a PHP/MySQL/web based bugtracking system.
 
 %description -l pl
-Mantis jest systemem kontroli błędów opartym na interfejsie WWW,
-bazie MySQL oraz PHP.
+Mantis jest systemem kontroli błędów opartym na interfejsie WWW, bazie
+MySQL oraz PHP.
 
 %prep
 %setup -q -c -a1
@@ -45,62 +47,91 @@
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_mantisdir}/doc,%{_sysconfdir}/httpd}
+install -d $RPM_BUILD_ROOT{%{_mantisdir}/doc,%{_sysconfdir}}
 
 cp -af mantis-%{version}/{*.php,admin,core,css,graphs,images,javascript,lang,sql} $RPM_BUILD_ROOT%{_mantisdir}
 # cp -af mantis-%{version}/doc/faq.* $RPM_BUILD_ROOT%{_mantisdir}/doc/
 
-sed -e 's/root/mysql/g' mantis-%{version}/config_inc.php.sample > $RPM_BUILD_ROOT%{_mantisdir}/config_inc.php
+sed -e 's/root/mysql/g' mantis-%{version}/config_inc.php.sample > $RPM_BUILD_ROOT%{_sysconfdir}/config.php
+ln -s %{_sysconfdir}/config.php $RPM_BUILD_ROOT%{_mantisdir}/config_inc.php
 
-install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/httpd/%{name}.conf
+mv $RPM_BUILD_ROOT{%{_mantisdir}/config_defaults_inc.php,%{_sysconfdir}/config_defaults.php}
+ln -s %{_sysconfdir}/config_defaults.php $RPM_BUILD_ROOT%{_mantisdir}/config_defaults_inc.php
+
+install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post
-if [ "$LANG" = "pl_PL" ]; then
-#	sed -e "s/= 'english';/= 'polish';/g" %{_mantisdir}/config_defaults_inc.php > %{_mantisdir}/config_defaults_inc_PLD.php
-#	mv -f %{_mantisdir}/config_defaults_inc_PLD.php %{_mantisdir}/config_defaults_inc.php
-	echo
-	echo "Mantis zapisany..."
-	echo "Więcej: /usr/share/doc/mantis-%{version}/PLD_Install_PL.txt.gz"
-	echo
-else
-	echo
-	echo "Mantis loaded..."
-	echo "More: /usr/share/doc/mantis-%{version}/PLD_Install_EN.txt.gz"
-	echo
+if [ "$1" = 1 ]; then
+	# TODO: use banner
+	if [ "$LANG" = "pl_PL" ]; then
+		echo "Więcej: "
+		echo " less %{_docdir}/%{name}-%{version}/PLD_Install_EN.txt.gz"
+	else
+		echo "For More information on Mantis on PLD Linux please read:"
+		echo " less %{_docdir}/%{name}-%{version}/PLD_Install_EN.txt.gz"
+	fi
 fi
 
-if [ -f %{_sysconfdir}/httpd/httpd.conf ] && ! grep -q "^Include.*%{name}.conf" %{_sysconfdir}/httpd/httpd.conf; then
-        echo "Include %{_sysconfdir}/httpd/%{name}.conf" >> %{_sysconfdir}/httpd/httpd.conf
-elif [ -d %{_sysconfdir}/httpd/httpd.conf ]; then
-        ln -sf %{_sysconfdir}/httpd/%{name}.conf %{_sysconfdir}/httpd/httpd.conf/99_%{name}.conf
+%triggerin -- apache1 >= 1.3.33-2
+%apache_config_install -v 1 -c %{_sysconfdir}/apache.conf
+
+%triggerun -- apache1 >= 1.3.33-2
+%apache_config_uninstall -v 1
+
+%triggerin -- apache >= 2.0.0
+%apache_config_install -v 2 -c %{_sysconfdir}/apache.conf
+
+%triggerun -- apache >= 2.0.0
+%apache_config_uninstall -v 2
+
+%triggerpostun -- %{name} < 0.19.2-1.1
+# migrate from old config location (only apache2, as there was no apache1 support)
+if [ -f /etc/httpd/%{name}.conf.rpmsave ]; then
+	cp -f %{_sysconfdir}/apache.conf{,.rpmnew}
+	mv -f /etc/httpd/%{name}.conf.rpmsave %{_sysconfdir}/apache.conf
+	if [ -f /var/lock/subsys/httpd ]; then
+		/etc/rc.d/init.d/httpd reload 1>&2
+	fi
 fi
-if [ -f /var/lock/subsys/httpd ]; then
-        /usr/sbin/apachectl restart 1>&2
+
+# nuke very-old config location
+if [ ! -d /etc/httpd/httpd.conf ]; then
+	sed -i -e "/^Include.*%{name}.conf/d" /etc/httpd/httpd.conf
+	if [ -f /var/lock/subsys/httpd ]; then
+		/etc/rc.d/init.d/httpd reload 1>&2
+	fi
 fi
 
-%preun
-if [ "$1" = "0" ]; then
-        umask 027
-        if [ -d %{_sysconfdir}/httpd/httpd.conf ]; then
-            rm -f %{_sysconfdir}/httpd/httpd.conf/99_%{name}.conf
-        else
-                grep -v "^Include.*%{name}.conf" %{_sysconfdir}/httpd/httpd.conf > \
-                        %{_sysconfdir}/httpd/httpd.conf.tmp
-                mv -f %{_sysconfdir}/httpd/httpd.conf.tmp %{_sysconfdir}/httpd/httpd.conf
-                if [ -f /var/lock/subsys/httpd ]; then
-                    /usr/sbin/apachectl restart 1>&2
-                fi
-        fi
+# place new config location, as trigger puts config only on first install, do it here.
+# apache1
+if [ -d /etc/apache/conf.d ]; then
+	ln -sf %{_sysconfdir}/apache.conf /etc/apache/conf.d/99_%{name}.conf
+	if [ -f /var/lock/subsys/apache ]; then
+		/etc/rc.d/init.d/apache reload 1>&2
+	fi
+fi
+# apache2
+if [ -d /etc/httpd/httpd.conf ]; then
+	ln -sf %{_sysconfdir}/apache.conf /etc/httpd/httpd.conf/99_%{name}.conf
+	if [ -f /var/lock/subsys/httpd ]; then
+		/etc/rc.d/init.d/httpd reload 1>&2
+	fi
 fi
 
 %files
 %defattr(644,root,root,755)
 %doc mantis-%{version}/doc/{CREDITS,CUSTOMIZATION,ChangeLog,INSTALL,README,UPGRADING}
 %doc PLD*
+%attr(750,root,http) %dir %{_sysconfdir}
+%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php
+%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config_defaults.php
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
 %dir %{_mantisdir}
+%{_mantisdir}/config_inc.php
+%{_mantisdir}/config_defaults_inc.php
 %{_mantisdir}/admin
 %{_mantisdir}/core
 %{_mantisdir}/css
@@ -116,7 +147,6 @@
 %{_mantisdir}/changelog_page*
 %{_mantisdir}/core.*
 %{_mantisdir}/csv*
-%{_mantisdir}/file_down*
 %{_mantisdir}/file*
 %{_mantisdir}/history*
 %{_mantisdir}/index*
@@ -135,16 +165,17 @@
 %{_mantisdir}/veri*
 %{_mantisdir}/view*
 
-%config(noreplace) %{_mantisdir}/config_inc.php
-%config(noreplace) %{_mantisdir}/config_defaults_inc.php
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/httpd/%{name}.conf
-
 %define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
 %changelog
 * %{date} PLD Team <feedback at pld-linux.org>
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.23  2005/09/24 13:14:26  glen
+- removed unneccessary deps
+- use apache config install triggers
+- moved config to /etc/mantis
+
 Revision 1.22  2005/01/09 17:42:44  adamg
 - updated to 0.19.2
 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SPECS/mantis.spec?r1=1.22&r2=1.23&f=u




More information about the pld-cvs-commit mailing list