Author: glen                         Date: Wed Nov  5 22:42:19 2008 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- add user and initscript
- package initial data
- package manual

---- Files affected:
SPECS:
   gozerbot.spec (1.1 -> 1.2) 

---- Diffs:

================================================================
Index: SPECS/gozerbot.spec
diff -u SPECS/gozerbot.spec:1.1 SPECS/gozerbot.spec:1.2
--- SPECS/gozerbot.spec:1.1     Wed Nov  5 21:43:37 2008
+++ SPECS/gozerbot.spec Wed Nov  5 23:42:14 2008
@@ -1,31 +1,53 @@
 # $Revision$, $Date$
 # TODO
-# - user and initscript
+# - initscript
+# - patch code to support output logging
+# - patch code to support daemonizing
+# - patch code to switch uid
+# - config from /etc when ran as service
 Summary:       gozerbot is the Python IRC bot and Jabber bot in one
 Name:          gozerbot
 Version:       0.8.1.1
-Release:       0.2
+Release:       0.5
 License:       BSD
 Group:         Applications/Communications
 Source0:       http://www.gozerbot.org/media/tarball/%{name}-%{version}.tar.gz
 # Source0-md5: f94037651700737f655f28244662c5a0
+Source1:       %{name}.init
+Patch0:                %{name}-pyc.patch
 URL:           http://www.gozerbot.org/
 BuildRequires: rpm-pythonprov
+BuildRequires: rpmbuild(macros) >= 1.228
 BuildRequires: sed >= 4.0
+Requires(post,preun):  /sbin/chkconfig
+Requires(postun):      /usr/sbin/groupdel
+Requires(postun):      /usr/sbin/userdel
+Requires(pre): /bin/id
+Requires(pre): /usr/bin/getgid
+Requires(pre): /usr/sbin/groupadd
+Requires(pre): /usr/sbin/useradd
 Requires:      python >= 1:2.4
+Provides:      group(gozerbot)
+Provides:      user(gozerbot)
 BuildArch:     noarch
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define                _rundir         /var/lib/%{name}
+
 %description
 Python IRC bot and Jabber bot in one.
 
 %prep
 %setup -q
+%patch0 -p1
 %{__grep} -rl '#!/usr/bin/env python' . | xargs %{__sed} -i -e '1s,#!.*bin/env 
python,#!%{__python}',
 
 %build
 %{__python} setup.py build
 
+# build datadir
+./bin/gozerinit
+
 %install
 rm -rf $RPM_BUILD_ROOT
 %{__python} setup.py install \
@@ -34,6 +56,11 @@
 
 %py_postclean
 
+install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_rundir},%{_mandir}/man1}
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/gozerbot
+cp -a man/gozerbot.1 $RPM_BUILD_ROOT%{_mandir}/man1
+cp -a gozerdata $RPM_BUILD_ROOT%{_rundir}
+
 # some merge tool. likely don't need it
 rm -f $RPM_BUILD_ROOT%{_bindir}/gozerbot-merc
 rm -f $RPM_BUILD_ROOT%{_bindir}/gozerupgrade06
@@ -52,10 +79,32 @@
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%pre
+%groupadd -g 205 -r -f gozerbot
+%useradd -u 205 -r -d %{_rundir} -s /bin/sh -c "gozerbot" -g gozerbot gozerbot
+
+%post
+/sbin/chkconfig --add gozerbot
+%service gozerbot restart
+
+%preun
+if [ "$1" = "0" ]; then
+       %service -q gozerbot stop
+       /sbin/chkconfig --del gozerbot
+fi
+
+%postun
+if [ "$1" = "0" ]; then
+       %userremove gozerbot
+       %groupremove gozerbot
+fi
+
 %files
 %defattr(644,root,root,755)
 %doc README
+%attr(754,root,root) /etc/rc.d/init.d/gozerbot
 %attr(755,root,root) %{_bindir}/gozerbot
+%{_mandir}/man1/gozerbot.1*
 %dir %{_datadir}/gozerbot
 %{_datadir}/gozerbot/gb_db
 %{_datadir}/gozerbot/postgres_db
@@ -63,11 +112,22 @@
 %{py_sitescriptdir}/gozerbot
 %{py_sitescriptdir}/gozerplugs
 
+%dir %attr(775,root,gozerbot) %{_rundir}
+%dir %attr(775,root,gozerbot) %{_rundir}/gozerdata
+%dir %attr(775,root,gozerbot) %{_rundir}/gozerdata/userstates
+# XXX: move to %{_sysconfdir}
+%attr(660,root,gozerbot) %config(noreplace) %verify(not md5 mtime size) 
%{_rundir}/gozerdata/config
+
 %define date   %(echo `LC_ALL="C" date +"%a %b %d %Y"`)
 %changelog
 * %{date} PLD Team <[EMAIL PROTECTED]>
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.2  2008/11/05 22:42:14  glen
+- add user and initscript
+- package initial data
+- package manual
+
 Revision 1.1  2008/11/05 20:43:37  glen
 - new
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SPECS/gozerbot.spec?r1=1.1&r2=1.2&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to