SPECS: ApacheJServ.spec - user/groupadd to init package - secret.k...

glen glen at pld-linux.org
Tue Aug 23 11:28:35 CEST 2005


Author: glen                         Date: Tue Aug 23 09:28:35 2005 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- user/groupadd to init package
- secret.key fill simplified
- cleanups

---- Files affected:
SPECS:
   ApacheJServ.spec (1.38 -> 1.39) 

---- Diffs:

================================================================
Index: SPECS/ApacheJServ.spec
diff -u SPECS/ApacheJServ.spec:1.38 SPECS/ApacheJServ.spec:1.39
--- SPECS/ApacheJServ.spec:1.38	Fri Aug 19 19:47:15 2005
+++ SPECS/ApacheJServ.spec	Tue Aug 23 11:28:28 2005
@@ -1,14 +1,17 @@
 # $Revision$, $Date$
+# TODO
+# - separate package for jsdk?
+#
 # Conditional build:
 %bcond_with	gcj	# use javac instead of GCJ
-
+#
 %define		apxs		/usr/sbin/apxs1
 %define		jsdkversion	20000924
 Summary:	Servlet engine with support for the leading web server
 Summary(pl):	Silnik serwletów ze wsparciem dla wiodącego serwera WWW
 Name:		ApacheJServ
 Version:	1.1.2
-Release:	0.19
+Release:	0.27
 License:	freely distributable & usable (JServ), LGPL (JSDK)
 Group:		Networking/Daemons
 Source0:	http://java.apache.org/jserv/dist/%{name}-%{version}.tar.gz
@@ -19,6 +22,7 @@
 Source3:	%{name}.init
 Patch0:		%{name}-enable-secret.patch
 Patch1:		%{name}-ac.patch
+Patch2:		%{name}-jre-env.patch
 URL:		http://java.apache.org/
 BuildRequires:	apache1-devel >= 1.3.9-8
 BuildRequires:	rpmbuild(macros) >= 1.228
@@ -37,10 +41,8 @@
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define		_pkglibdir	%(%{apxs} -q LIBEXECDIR 2>/dev/null)
-%define		x_sysconfdir	%(%{apxs} -q SYSCONFDIR 2>/dev/null)
 %define		httpdconf	%(%{apxs} -q SYSCONFDIR 2>/dev/null)
 %define		_sysconfdir	/etc/jserv
-%define		x_sysconfdir	%{httpdconf}/jserv
 %define		logdir		/var/log/jserv
 %define		servletdir	%{_datadir}/jserv/servlets
 %define		_noautocompressdoc  package-list
@@ -68,6 +70,11 @@
 Summary:	ApacheJServ initscript
 Group:		Development/Languages/Java
 Requires:	%{name} = %{version}-%{release}
+BuildRequires:	rpmbuild(macros) >= 1.202
+Requires(pre):  /bin/id
+Requires(pre):  /usr/bin/getgid
+Requires(pre):  /usr/sbin/useradd
+Requires(pre):  /usr/sbin/groupadd
 
 %description init
 JServ initscript for standalone mode.
@@ -83,6 +90,7 @@
 %setup -q -a1
 %patch0 -p0
 %patch1 -p0
+%patch2 -p1
 
 sed -i -e '
 	s|@JSDK_CLASSES@|%{_javadir}/servlet-2.0.jar|g
@@ -127,7 +135,7 @@
 	--with-logdir=%{logdir} \
 	--with-servlets=%{servletdir} \
 	%{!?with_gcj:GCJ=javac GCJFLAGS= CLASSPATH=`pwd` JAVAC_OPT="-source 1.4"} \
-    %{!?with_gcj:--with-javac=%{_bindir}/javac --with-jdk-home=%{_libdir}/java} \
+    %{!?with_gcj:--with-javac=%{_bindir}/javac --with-java=%{_bindir}/java --with-jdk-home=%{_libdir}/java} \
     %{?with_gcj:--with-javac=%{_bindir}/gcj --with-jar=%{_bindir}/fastjar} \
 	--with-JSDK=`pwd`/classpathx_servlet-%{jsdkversion}/servlet-2.0.jar
 
@@ -165,14 +173,15 @@
 find jsdk-doc -name 'Makefile*' | xargs rm -f
 rm -rf jsdk-doc/{COPYING.LIB,CVS} jsdk-doc/apidoc/CVS
 
+# duplicate
+rm -f $RPM_BUILD_ROOT%{_sysconfdir}/jserv.conf
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post
 if [ "$1" = 1 ]; then
-	# use fortune + install-date + process-list to create pseudo-random, hardly
-	# guessable secret key. Use md5sum to create a hash from this, if available:
-	(fortune 2>/dev/null; date; ps -eal 2>/dev/null) \
+	dd if=/dev/urandom bs=1 count=42 2>/dev/null \
 		| (md5sum 2>/dev/null || cat) > %{_sysconfdir}/jserv.secret.key
 fi
 %service apache restart
@@ -182,6 +191,11 @@
 	%service -q apache restart
 fi
 
+
+%pre init
+%groupadd -P %{name}-init -g 154 jserv
+%useradd -P %{name}-init -u 154 -g jserv -d /etc/jserv -c "JServ User" jserv
+
 %post init
 /sbin/chkconfig --add jserv
 
@@ -193,6 +207,12 @@
 	/sbin/chkconfig --del jserv
 fi
 
+%postun init
+if [ "$1" = "0" ]; then
+	%userremove jserv
+	%groupremove jserv
+fi
+
 %files
 %defattr(644,root,root,755)
 %doc LICENSE README
@@ -200,7 +220,6 @@
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{httpdconf}/conf.d/*_mod_jserv.conf
 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/jserv.properties
 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zone.properties
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/jserv.conf
 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/jserv.secret.key
 #%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/jserv
 #%config /etc/profile.d/jserv.sh
@@ -235,6 +254,11 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.39  2005/08/23 09:28:28  glen
+- user/groupadd to init package
+- secret.key fill simplified
+- cleanups
+
 Revision 1.38  2005/08/19 17:47:15  glen
 - created -init subpackage for standalone mode
 - cruft removed from %post (we are rpm!)
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SPECS/ApacheJServ.spec?r1=1.38&r2=1.39&f=u




More information about the pld-cvs-commit mailing list