Thu Jul 31 10:31:51 2014 UTC ()
Control script relies on $HOME, so 'su -m' will not cut it. Changed to just
su in the rc.d script and adjusted the SMF manifest similarly.

Bump PKGREVISION. Fixes pkg/49052.


(fhajny)
diff -r1.42 -r1.43 pkgsrc/chat/ejabberd/Makefile
diff -r1.3 -r1.4 pkgsrc/chat/ejabberd/files/ejabberd.sh
diff -r1.1 -r1.2 pkgsrc/chat/ejabberd/files/smf/manifest.xml

cvs diff -r1.42 -r1.43 pkgsrc/chat/ejabberd/Makefile (expand / switch to unified diff)

--- pkgsrc/chat/ejabberd/Makefile 2014/07/30 09:45:38 1.42
+++ pkgsrc/chat/ejabberd/Makefile 2014/07/31 10:31:51 1.43
@@ -1,16 +1,17 @@ @@ -1,16 +1,17 @@
1# $NetBSD: Makefile,v 1.42 2014/07/30 09:45:38 fhajny Exp $ 1# $NetBSD: Makefile,v 1.43 2014/07/31 10:31:51 fhajny Exp $
2 2
3DISTNAME= ejabberd-14.07 3DISTNAME= ejabberd-14.07
 4PKGREVISION= 1
4CATEGORIES= chat 5CATEGORIES= chat
5MASTER_SITES= http://www.process-one.net/downloads/ejabberd/${PKGVERSION_NOREV}/ 6MASTER_SITES= http://www.process-one.net/downloads/ejabberd/${PKGVERSION_NOREV}/
6EXTRACT_SUFX= .tgz 7EXTRACT_SUFX= .tgz
7 8
8MAINTAINER= pkgsrc-users@NetBSD.org 9MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= http://www.ejabberd.im/ 10HOMEPAGE= http://www.ejabberd.im/
10COMMENT= Free and Open Source distributed fault-tolerant Jabber server 11COMMENT= Free and Open Source distributed fault-tolerant Jabber server
11LICENSE= gnu-gpl-v2 12LICENSE= gnu-gpl-v2
12 13
13BUILD_DEPENDS+= git-base>=1.5:../../devel/git-base 14BUILD_DEPENDS+= git-base>=1.5:../../devel/git-base
14CONFLICTS+= jabberd-[0-9]* 15CONFLICTS+= jabberd-[0-9]*
15 16
16GNU_CONFIGURE= yes 17GNU_CONFIGURE= yes

cvs diff -r1.3 -r1.4 pkgsrc/chat/ejabberd/files/ejabberd.sh (expand / switch to unified diff)

--- pkgsrc/chat/ejabberd/files/ejabberd.sh 2013/10/11 13:32:25 1.3
+++ pkgsrc/chat/ejabberd/files/ejabberd.sh 2014/07/31 10:31:51 1.4
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1#!@RCD_SCRIPTS_SHELL@ 1#!@RCD_SCRIPTS_SHELL@
2# 2#
3# $NetBSD: ejabberd.sh,v 1.3 2013/10/11 13:32:25 fhajny Exp $ 3# $NetBSD: ejabberd.sh,v 1.4 2014/07/31 10:31:51 fhajny Exp $
4# $FreeBSD: ejabberd.sh.in,v 1.1 2005/08/28 15:51:48 vsevolod Exp $ 4# $FreeBSD: ejabberd.sh.in,v 1.1 2005/08/28 15:51:48 vsevolod Exp $
5# 5#
6# PROVIDE: ejabberd 6# PROVIDE: ejabberd
7# REQUIRE: DAEMON 7# REQUIRE: DAEMON
8# BEFORE: LOGIN 8# BEFORE: LOGIN
9# KEYWORD: shutdown 9# KEYWORD: shutdown
10 10
11if [ -f /etc/rc.subr ] 11if [ -f /etc/rc.subr ]
12then 12then
13 . /etc/rc.subr 13 . /etc/rc.subr
14fi 14fi
15 15
16name="ejabberd" 16name="ejabberd"
@@ -19,61 +19,61 @@ rcvar=${name} @@ -19,61 +19,61 @@ rcvar=${name}
19command=ejabberdctl 19command=ejabberdctl
20ejabberd_user="@EJABBERD_USER@" 20ejabberd_user="@EJABBERD_USER@"
21reload_cmd="ejabberd_reload" 21reload_cmd="ejabberd_reload"
22restart_cmd="ejabberd_reload" 22restart_cmd="ejabberd_reload"
23start_cmd="ejabberd_start" 23start_cmd="ejabberd_start"
24status_cmd="ejabberd_status" 24status_cmd="ejabberd_status"
25stop_cmd="ejabberd_stop" 25stop_cmd="ejabberd_stop"
26 26
27PATH=/sbin:/bin:/usr/sbin:/usr/bin:@PREFIX@/bin:@PREFIX@/sbin 27PATH=/sbin:/bin:/usr/sbin:/usr/bin:@PREFIX@/bin:@PREFIX@/sbin
28EJABBERDCTL=@PREFIX@/sbin/ejabberdctl 28EJABBERDCTL=@PREFIX@/sbin/ejabberdctl
29 29
30ejabberd_status() 30ejabberd_status()
31{ 31{
32 su -m $ejabberd_user -c "$EJABBERDCTL status >/dev/null" 32 su $ejabberd_user -c "$EJABBERDCTL status >/dev/null"
33} 33}
34 34
35ejabberd_start() 35ejabberd_start()
36{ 36{
37 echo -n "Starting $name: " 37 echo -n "Starting $name: "
38 if ejabberd_status; then 38 if ejabberd_status; then
39 echo " already running." 39 echo " already running."
40 exit 1 40 exit 1
41 else 41 else
42 su -m $ejabberd_user -c "$EJABBERDCTL start" 42 su $ejabberd_user -c "$EJABBERDCTL start"
43 fi 43 fi
44 echo "$name." 44 echo "$name."
45} 45}
46 46
47ejabberd_stop() 47ejabberd_stop()
48{ 48{
49 echo -n "Stopping $name: " 49 echo -n "Stopping $name: "
50 if su -m $ejabberd_user -c "$EJABBERDCTL stop"; then 50 if su $ejabberd_user -c "$EJABBERDCTL stop"; then
51 cnt=0 51 cnt=0
52 while ejabberd_status; do 52 while ejabberd_status; do
53 cnt=`expr $cnt + 1` 53 cnt=`expr $cnt + 1`
54 if [ $cnt -gt 60 ]; then 54 if [ $cnt -gt 60 ]; then
55 echo -n " failed " 55 echo -n " failed "
56 break 56 break
57 fi 57 fi
58 sleep 1 58 sleep 1
59 echo -n "." 59 echo -n "."
60 done 60 done
61 else 61 else
62 echo -n " failed " 62 echo -n " failed "
63 fi 63 fi
64 echo "$name." 64 echo "$name."
65} 65}
66 66
67ejabberd_reload() 67ejabberd_reload()
68{ 68{
69 echo -n "Restarting $name: " 69 echo -n "Restarting $name: "
70 if ejabberd_status; then 70 if ejabberd_status; then
71 su -m $ejabberd_user -c "$EJABBERDCTL restart" 71 su $ejabberd_user -c "$EJABBERDCTL restart"
72 else 72 else
73 ejabberd_start 73 ejabberd_start
74 fi 74 fi
75 echo "$name." 75 echo "$name."
76} 76}
77 77
78load_rc_config $name 78load_rc_config $name
79run_rc_command "$1" 79run_rc_command "$1"

cvs diff -r1.1 -r1.2 pkgsrc/chat/ejabberd/files/smf/manifest.xml (expand / switch to unified diff)

--- pkgsrc/chat/ejabberd/files/smf/manifest.xml 2014/03/11 14:34:36 1.1
+++ pkgsrc/chat/ejabberd/files/smf/manifest.xml 2014/07/31 10:31:51 1.2
@@ -13,26 +13,29 @@ @@ -13,26 +13,29 @@
13 <dependency name='system-log' grouping='optional_all' restart_on='none' type='service'> 13 <dependency name='system-log' grouping='optional_all' restart_on='none' type='service'>
14 <service_fmri value='svc:/system/system-log' /> 14 <service_fmri value='svc:/system/system-log' />
15 </dependency> 15 </dependency>
16 <dependency name='config-files' grouping='require_any' restart_on='refresh' type='path'> 16 <dependency name='config-files' grouping='require_any' restart_on='refresh' type='path'>
17 <service_fmri value='file://localhost@PKG_SYSCONFDIR@/ejabberd.cfg' /> 17 <service_fmri value='file://localhost@PKG_SYSCONFDIR@/ejabberd.cfg' />
18 <service_fmri value='file://localhost@PKG_SYSCONFDIR@/ejabberctl.cfg' /> 18 <service_fmri value='file://localhost@PKG_SYSCONFDIR@/ejabberctl.cfg' />
19 <service_fmri value='file://localhost@PKG_SYSCONFDIR@/inetrc' /> 19 <service_fmri value='file://localhost@PKG_SYSCONFDIR@/inetrc' />
20 </dependency> 20 </dependency>
21 <dependency name='@SMF_NAME@-epmd' grouping='require_all' restart_on='none' type='service'> 21 <dependency name='@SMF_NAME@-epmd' grouping='require_all' restart_on='none' type='service'>
22 <service_fmri value='svc:/@SMF_PREFIX@/epmd' /> 22 <service_fmri value='svc:/@SMF_PREFIX@/epmd' />
23 </dependency> 23 </dependency>
24 <method_context working_directory='@EJABBERD_DB@'> 24 <method_context working_directory='@EJABBERD_DB@'>
25 <method_credential user='@EJABBERD_USER@' group='@EJABBERD_GROUP@' /> 25 <method_credential user='@EJABBERD_USER@' group='@EJABBERD_GROUP@' />
 26 <method_environment>
 27 <envvar name='HOME' value='@EJABBERD_DB@' />
 28 </method_environment>
26 </method_context> 29 </method_context>
27 <exec_method name='start' type='method' exec='@PREFIX@/sbin/ejabberdctl start' timeout_seconds='120' /> 30 <exec_method name='start' type='method' exec='@PREFIX@/sbin/ejabberdctl start' timeout_seconds='120' />
28 <exec_method name='stop' type='method' exec='@PREFIX@/sbin/ejabberdctl stop' timeout_seconds='60' /> 31 <exec_method name='stop' type='method' exec='@PREFIX@/sbin/ejabberdctl stop' timeout_seconds='60' />
29 <property_group name='startd' type='framework'> 32 <property_group name='startd' type='framework'>
30 <propval name='ignore_error' type='astring' value='core,signal' /> 33 <propval name='ignore_error' type='astring' value='core,signal' />
31 </property_group> 34 </property_group>
32 <stability value='Unstable' /> 35 <stability value='Unstable' />
33 <template> 36 <template>
34 <common_name> 37 <common_name>
35 <loctext xml:lang='C'>ejabberd - the Erlang Jabber/XMPP daemon</loctext> 38 <loctext xml:lang='C'>ejabberd - the Erlang Jabber/XMPP daemon</loctext>
36 </common_name> 39 </common_name>
37 </template> 40 </template>
38 </service> 41 </service>