Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 May 2000 17:38:14 +0400 (MSD)
From:      Kostya Lukin <lukin@sapa.ivcme.elektra.ru>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/18602: Update port: net/jabber-transport
Message-ID:  <200005161338.RAA46766@sapa.ivcme.elektra.ru>

next in thread | raw e-mail | index | archive | help

>Number:         18602
>Category:       ports
>Synopsis:       Update port: net/jabber-transport
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue May 16 06:50:01 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     Kostya Lukin
>Release:        FreeBSD 3.3-RELEASE i386
>Organization:
IVC Mosenergo
>Environment:

Should be processed together with textproc/libxode, net/libjabber
and net/libetherx updates.

>Description:

0.9 - 1.0 version patch.

files/jserver.sh, pkg/INSTALL and pkg/DEINSTALL added.

>How-To-Repeat:

	

>Fix:

diff -ruN jabber-transport.bak/Makefile jabber-transport/Makefile
--- jabber-transport.bak/Makefile	Mon May  1 07:25:13 2000
+++ jabber-transport/Makefile	Tue May 16 15:56:39 2000
@@ -6,14 +6,20 @@
 #
 
 PORTNAME=	jabber-transport
-PORTVERSION=	0.9
+PORTVERSION=	1.0
 CATEGORIES=	net
-MASTER_SITES=	http://download.jabber.org/dists/0.9/final/
+MASTER_SITES=	http://download.jabber.org/dists/1.0/
 
 MAINTAINER=	lukin@okbmei.msk.su
 
-LIB_DEPENDS=	etherx.0:${PORTSDIR}/net/libetherx
+LIB_DEPENDS=	etherx.1:${PORTSDIR}/net/libetherx
 
 USE_LIBTOOL=	yes
+
+rc=${PREFIX}/etc/rc.d
+
+post-install:
+	@PREFIX=${PREFIX} ${PERL5} ${PKGDIR}/INSTALL ${PKGNAME} POST-INSTALL
+	@${INSTALL_SCRIPT} ${FILESDIR}/jserver.sh ${rc}
 
 .include <bsd.port.mk>
diff -ruN jabber-transport.bak/files/jserver.sh jabber-transport/files/jserver.sh
--- jabber-transport.bak/files/jserver.sh	Thu Jan  1 03:00:00 1970
+++ jabber-transport/files/jserver.sh	Mon May 15 20:42:21 2000
@@ -0,0 +1,27 @@
+#! /bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/jserver\.sh\$"); then
+    echo "$0: Cannot determine the PREFIX" >&2
+    exit 1
+fi
+user=jserver
+rundir=/tmp
+out=${rundir}/jserver.out
+
+export PATH=/bin:/usr/bin:${PREFIX}/bin
+umask 077
+
+test -x ${PREFIX}/bin/jserver || exit 1
+echo -n " jserver"
+cd ${rundir} || exit
+
+arg=${1:-start}
+case $arg in
+start)
+    su -f -m ${user} -c \
+	"jserver" \
+	>>${out} 2>&1 &;;
+
+stop)
+    killall jserver;;
+esac
diff -ruN jabber-transport.bak/files/md5 jabber-transport/files/md5
--- jabber-transport.bak/files/md5	Mon May  1 07:25:18 2000
+++ jabber-transport/files/md5	Wed May 10 18:17:47 2000
@@ -1 +1 @@
-MD5 (jabber-transport-0.9.tar.gz) = dd38ad2b2641ed40ebd45a03a6ce1ffc
+MD5 (jabber-transport-1.0.tar.gz) = 5f901c1dee7bf433b0409d4996f744c4
diff -ruN jabber-transport.bak/patches/patch-aa jabber-transport/patches/patch-aa
--- jabber-transport.bak/patches/patch-aa	Mon May  1 07:25:18 2000
+++ jabber-transport/patches/patch-aa	Wed May 10 18:24:05 2000
@@ -1,17 +1,22 @@
---- src/jserver.xml.in.orig	Mon Mar 20 11:01:32 2000
-+++ src/jserver.xml.in	Mon Apr 10 16:39:16 2000
-@@ -24,16 +24,16 @@
- The session log, make sure the folder exists!
- 
+--- src/jserver.xml.in.orig	Mon May  1 11:30:00 2000
++++ src/jserver.xml.in	Wed May 10 18:22:14 2000
+@@ -37,12 +37,12 @@
    <log>
+ 
+     <!-- replace with <error>syslog</error> to log to syslog instead, remove to log to STDERR -->
+-    <error>@prefix@/var/log/jserver.error</error>
++    <error>/var/log/jserver.error</error>
+ 
 -    <session>@prefix@/var/log/jserver.log</session>
 +    <session>/var/log/jserver.log</session>
+ 
      <!-- This will log some basic tracking information about every packet of data (TONS!)
 -      <packet>@prefix@/var/log/jserver_packet.log</packet>
 +      <packet>/var/log/jserver_packet.log</packet>
      -->
-   </log>
  
+   </log>
+@@ -50,7 +50,7 @@
  
  Data is stored on the filesystem for each user, make sure the folder exists!
  
diff -ruN jabber-transport.bak/pkg/DEINSTALL jabber-transport/pkg/DEINSTALL
--- jabber-transport.bak/pkg/DEINSTALL	Thu Jan  1 03:00:00 1970
+++ jabber-transport/pkg/DEINSTALL	Mon May 15 19:45:22 2000
@@ -0,0 +1,71 @@
+#! /bin/sh
+
+ask() {
+    local question default answer
+
+    question=$1
+    default=$2
+    if [ -z "${PACKAGE_BUILDING}" ]; then
+	read -p "${question} [${default}]? " answer
+    fi
+    if [ x${answer} = x ]; then
+	answer=${default}
+    fi
+    echo ${answer}
+}
+
+yesno() {
+    local dflt question answer
+
+    question=$1
+    dflt=$2
+    while :; do
+	answer=$(ask "${question}" "${dflt}")
+	case "${answer}" in
+	[Yy]*)		return 0;;
+	[Nn]*)		return 1;;
+	esac
+	echo "Please answer yes or no."
+    done
+}
+
+delete_account() {
+    local u g home
+
+    u=$1
+    g=$2
+    if yesno "Do you want me to remove group \"${g}\"" y; then
+	pw groupdel -n ${g}
+	echo "Done."
+    fi
+    if yesno "Do you want me to remove user \"${u}\"" y; then
+	eval home=~${u}
+	pw userdel -n ${u}
+	echo "Done."
+	if [ -d "${home}" ]; then
+	    echo "Please remember to remove the home directory \"${home}\" as"
+	    echo "well as the mirrored files."
+	fi
+    fi
+}
+
+if [ x$2 != xDEINSTALL ]; then
+    exit
+fi
+
+export PATH=/bin:/usr/bin:/usr/sbin
+
+user=jserver
+group=jserver
+
+if ps -axc | grep -q jserver; then
+    if yesno "There are some jserver processes running.  Shall I kill them" y
+    then
+	killall jserver
+	sleep 2
+    else
+	echo "OK ... I hope you know what you are doing."
+    fi
+fi
+
+delete_account ${user} ${group}
diff -ruN jabber-transport.bak/pkg/INSTALL jabber-transport/pkg/INSTALL
--- jabber-transport.bak/pkg/INSTALL	Thu Jan  1 03:00:00 1970
+++ jabber-transport/pkg/INSTALL	Tue May 16 15:49:16 2000
@@ -0,0 +1,146 @@
+#! /bin/sh
+
+chmods_done=" "
+
+ask() {
+    local question default answer
+
+    question=$1
+    default=$2
+    if [ -z "${PACKAGE_BUILDING}" ]; then
+	read -p "${question} [${default}]? " answer
+    fi
+    if [ x${answer} = x ]; then
+	answer=${default}
+    fi
+    echo ${answer}
+}
+
+yesno() {
+    local dflt question answer
+
+    question=$1
+    dflt=$2
+    while :; do
+	answer=$(ask "${question}" "${dflt}")
+	case "${answer}" in
+	[Yy]*)		return 0;;
+	[Nn]*)		return 1;;
+	esac
+	echo "Please answer yes or no."
+    done
+}
+
+make_account() {
+    local u g gcos homeopt home
+
+    u=$1
+    g=$2
+    gcos=$3
+    homeopt=${4:+"-d $4"}
+
+    if pw group show "${g}" >/dev/null 2>&1; then
+	echo "You already have a group \"${g}\", so I will use it."
+    else
+	echo "You need a group \"${g}\"."
+	if which -s pw && yesno "Would you like me to create it" y; then
+	    pw groupadd ${g} || exit
+	    echo "Done."
+	else
+	    echo "Please create it, and try again."
+	    if ! grep -q "^${u}:" /etc/passwd; then
+		echo "While you're at it, please create a user \"${u}\" too,"
+		echo "with a default group of \"${g}\"."
+	    fi
+	    exit 1
+	fi
+    fi
+    
+    if pw user show "${u}" >/dev/null 2>&1; then
+	echo "You already have a user \"${u}\", so I will use it."
+    else
+	echo "You need a user \"${u}\"."
+	if which -s pw && yesno "Would you like me to create it" y; then
+	    pw useradd ${u} -g ${g} -h - ${homeopt} \
+		-s /nonexistent -c "${gcos}" || exit
+	    echo "Done."
+	else
+	    echo "Please create it, and try again."
+	    exit 1
+	fi
+    fi
+
+    if [ x"$homeopt" = x ]; then
+	eval home=~${u}
+	if [ ! -d "${home}" ]; then
+	    if yesno \
+		"Would you like me to create ${u}'s home directory (${home})" y
+	    then
+		(umask 77 && \
+		    mkdir -p ${home}) || exit
+		chown -R ${u}:${g} ${home} || exit
+	    else
+		echo "Please create it, and try again."
+		exit 1
+	    fi
+	fi
+    fi
+}
+
+case $2 in
+
+POST-INSTALL)
+    if which -s pw && which -s lockf; then
+	:
+    else
+	cat <<EOF
+
+This system looks like a pre-2.2 version of FreeBSD.  I see that it
+is missing the "lockf" and/or "pw" utilities.  I need these utilities.
+Please get them and install them, and try again.  You can get the
+sources from:
+
+  ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/usr.bin/lockf.tar.gz
+  ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/usr.sbin/pw.tar.gz
+
+EOF
+	exit 1
+    fi
+
+    user=jserver
+    group=jserver
+    spooldir="/var/jspool"
+    etcdir=${PREFIX}/etc
+
+    echo ""
+    make_account ${user} ${group} "Jabber Daemon" "/nonexistent"
+
+    echo "Fixing ownerships and modes in \"${spooldir}\"."
+    chown -R ${user}:${group} ${spooldir}
+    chmod -R go= ${spooldir}
+
+    echo "Fixing config files ownerships and modes."
+    chown root:${group} ${etcdir}/jserver.xml ${etcdir}/jserver.xml.default
+    chmod 640 ${etcdir}/jserver.xml ${etcdir}/jserver.xml.default
+
+    if [ ! -f /var/log/jserver.log ]; then
+	echo "Creating \"/var/log/jserver.log\"."
+	cp /dev/null /var/log/jserver.log
+    fi
+
+    if [ ! -f /var/log/jserver.error ]; then
+	echo "Creating \"/var/log/jserver.error\"."
+	cp /dev/null /var/log/jserver.error
+    fi
+
+    if [ ! -f /var/log/jserver_packet.log ]; then
+	echo "Creating \"/var/log/jserver_packet.log\"."
+	cp /dev/null /var/log/jserver_packet.log
+    fi
+
+    echo "Fixing log files ownerships and modes."
+    chown ${user}:${group} /var/log/jserver.log /var/log/jserver.error /var/log/jserver_packet.log
+    chmod 600 /var/log/jserver.log /var/log/jserver.error /var/log/jserver_packet.log
+
+    ;;
+esac
diff -ruN jabber-transport.bak/pkg/PLIST jabber-transport/pkg/PLIST
--- jabber-transport.bak/pkg/PLIST	Mon May  1 07:25:19 2000
+++ jabber-transport/pkg/PLIST	Mon May 15 20:04:48 2000
@@ -1,6 +1,6 @@
 bin/jserver
 etc/jserver.xml.default
-lib/jabber/mod_auth_sha1.so
+etc/rc.d/jserver.sh
 lib/jabber/mod_echo.so
 lib/jabber/mod_time.so
 lib/jabber/mod_version.so

>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200005161338.RAA46766>