Bug 81994 - [NEW PORT] net/jabber-pyicq-transport: Python ICQ-Transport for Jabber
Summary: [NEW PORT] net/jabber-pyicq-transport: Python ICQ-Transport for Jabber
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-06-07 14:30 UTC by Renato Botelho
Modified: 2005-06-07 16:18 UTC (History)
0 users

See Also:


Attachments
jabber-pyicq-transport-0.6.shar (15.22 KB, text/plain)
2005-06-07 14:30 UTC, Renato Botelho
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Renato Botelho 2005-06-07 14:30:24 UTC
Python ICQ-Transport for Jabber.

The purpose of this transport is to provide a way for users to be logged into
ICQ via their Jabber account. It is implemented in Python, using the Twisted
framework. This project is just getting off the ground, and so it does not have
quite the functionality of other transports yet. That will come in time.

WWW: http://pyicq-t.blathersource.org/

Generated with FreeBSD Port Tools 0.63
Comment 1 Pav Lucistnik freebsd_committer freebsd_triage 2005-06-07 15:53:39 UTC
Would it make sense to not install all those .svn subversion files?
I bet they're quite useless for end user, and they clutter plist
awfully.

-- 
Pav Lucistnik <pav@oook.cz>
              <pav@FreeBSD.org>

The answer to the all-encompassing question on life, the universe
and everything: close windows and reboot.
Comment 2 Renato Botelho 2005-06-07 16:04:44 UTC
On Tue, Jun 07, 2005 at 04:53:39PM +0200, Pav Lucistnik wrote:
> Would it make sense to not install all those .svn subversion files?
> I bet they're quite useless for end user, and they clutter plist
> awfully.

You are right, so, here is a new shar file.

--- jabber-pyicq.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	./jabber-pyicq
#	./jabber-pyicq/files
#	./jabber-pyicq/files/patch-src_main.py
#	./jabber-pyicq/files/pkg-message.in
#	./jabber-pyicq/files/jabber-pyicq-transport.sh.in
#	./jabber-pyicq/Makefile
#	./jabber-pyicq/distinfo
#	./jabber-pyicq/pkg-descr
#	./jabber-pyicq/pkg-plist
#
echo c - ./jabber-pyicq
mkdir -p ./jabber-pyicq > /dev/null 2>&1
echo c - ./jabber-pyicq/files
mkdir -p ./jabber-pyicq/files > /dev/null 2>&1
echo x - ./jabber-pyicq/files/patch-src_main.py
sed 's/^X//' >./jabber-pyicq/files/patch-src_main.py << 'END-of-./jabber-pyicq/files/patch-src_main.py'
X--- src/main.py.orig	Tue Jun  7 09:54:58 2005
X+++ src/main.py	Tue Jun  7 09:56:26 2005
X@@ -1,3 +1,4 @@
X+#!%%PYTHON_CMD%%
X # Copyright 2004 James Bunton <james@delx.cjb.net>
X # Licensed for distribution under the GPL version 2, check COPYING for details
X 
X@@ -13,15 +14,9 @@
X 	print("You are using version %s of Python, at least 2.3 is required." % (sys.version[:3]))
X 	os._exit(0)
X 
X-name = "PyICQt"
X-exe = os.path.realpath(sys.executable)
X-if (exe.find("python") >= 0):
X-	print("Restarting with process name %s..." % (name))
X-	os.execv(exe, [name, sys.argv[0]]+sys.argv[1:])
X-
X import config
X import xmlconfig
X-conffile = "config.xml"
X+conffile = "%%PREFIX%%/etc/jabber-pyicq.xml"
X options = {}
X opts, args = getopt.getopt(sys.argv[1:], "c:o:dDl:h", ["config=", "option=", "debug", "Debug", "log=", "help"])
X for o, v in opts:
END-of-./jabber-pyicq/files/patch-src_main.py
echo x - ./jabber-pyicq/files/pkg-message.in
sed 's/^X//' >./jabber-pyicq/files/pkg-message.in << 'END-of-./jabber-pyicq/files/pkg-message.in'
X******************************************************************************
XRemember to edit %%PREFIX%%/etc/jabber-pyicq.xml to suit your needs.
X
X* The 'jid' setting should be what ID you want PyICQt to take on the network.
X* The 'mainServer' setting should be the IP address or DNS of the main Jabberd
X  server.
X* The 'secret' setting should match the secret specified for component
X  connections in your main Jabberd server.
X* The 'port' setting is the port that PyICQt is to connect to (more details on
X  this below.
X* You can also turn on debugging options, and customise some of the text that
X  is sent to the users in this file.
X
XIf you are using Jabberd2 then you shouldn't have to do much configuration.
XMake sure the 'mainServer' setting is the IP or DNS of your Jabber server, and
Xleave the 'port' setting alone. Double-check that the secret for legacy
Xcomponents in router.xml (for Jabberd2) is the same as the secret setting in
Xconfig.py. That should be all. You don't even need to restart Jabberd2.
X
XIf you are using Jabberd1.4.x,  it's a bit more complicated. Follow the setup
Xinstructions at http://pyicq-t.blathersource.org/install.php
X******************************************************************************
END-of-./jabber-pyicq/files/pkg-message.in
echo x - ./jabber-pyicq/files/jabber-pyicq-transport.sh.in
sed 's/^X//' >./jabber-pyicq/files/jabber-pyicq-transport.sh.in << 'END-of-./jabber-pyicq/files/jabber-pyicq-transport.sh.in'
X#!/bin/sh
X
X# Start or stop jabber-pyicq
X# $FreeBSD$
X
X# PROVIDE: jabber_pyicq
X# REQUIRE: DAEMON
X# BEFORE: LOGIN
X# KEYWORD: FreeBSD shutdown
X#
X# Define these jabber_pyicq_* variables in one of these files:
X#       /etc/rc.conf
X#       /etc/rc.conf.local
X#
X# DO NOT CHANGE THESE DEFAULT VALUES HERE
X#
Xjabber_pyicq_dir=${jabberd_pyicq_dir-"%%PREFIX%%/lib/jabber/pyicq"}
Xjabber_pyicq_piddir=${jabberd_pyicq_piddir-"/var/jabberd/pid"}
Xjabber_pyicq_enable=${jabberd_pyicq_enable-"NO"}
X
X
X. %%RC_SUBR%%
X
Xname="jabber_pyicq"
Xrcvar=`set_rcvar`
Xcommand_interpreter="%%PYTHON_CMD%%"
Xcommand="${jabber_pyicq_dir}/main.py"
Xcommand_args="&"
X
X#procname="${PYTHON} ${jabber_pyicq_dir}/main.py"
Xpidfile="${jabber_pyicq_piddir}/pyicq.pid"
X
Xload_rc_config $name
Xrun_rc_command "$1"
END-of-./jabber-pyicq/files/jabber-pyicq-transport.sh.in
echo x - ./jabber-pyicq/Makefile
sed 's/^X//' >./jabber-pyicq/Makefile << 'END-of-./jabber-pyicq/Makefile'
X# New ports collection makefile for:	Jabber Python ICQ Transport
X# Date created:				2005-06-07
X# Whom:					Renato Botelho <freebsd@galle.com.br>
X#
X# $FreeBSD$
X
XPORTNAME=	pyicq
XPORTVERSION=	0.6
XCATEGORIES=	net
XMASTER_SITES=	http://www.blathersource.org/download.php/pyicq-t/
XPKGNAMEPREFIX=	jabber-
XPKGNAMESUFFIX=	-transport
XDISTNAME=	${PORTNAME}-t-${PORTVERSION}
XDIST_SUBDIR=	jabber
X
XMAINTAINER=	martijn@pacno.net
XCOMMENT=	Python ICQ-Transport for Jabber
X
XRUN_DEPENDS=	${PYTHON_SITELIBDIR}/OpenSSL/__init__.py:${PORTSDIR}/security/py-openssl \
X		${PYTHON_SITELIBDIR}/twisted/__init__.py:${PORTSDIR}/devel/py-twisted
X
XNO_BUILD=	yes
XUSE_PYTHON=	yes
XUSE_REINPLACE=	yes
XUSE_RC_SUBR=	jabber-pyicq-transport.sh
X
XSUB_FILES=	pkg-message
XSUB_LIST=	PYTHON_CMD=${PYTHON_CMD}
X
XINST_DIR=	${PREFIX}/lib/jabber/${PORTNAME}
X
XPORTDOCS=	COPYING README TODO
X
Xpost-extract:
X	@${FIND} ${WRKSRC}/src -type d -name '.svn' | ${XARGS} ${RM} -rf
X
Xpost-patch:
X	@${REINPLACE_CMD} -e '/spooldir/s|\.|/var/spool/jabber|' \
X		-e '/pid/s|PyICQt.pid|/var/jabberd/pid/${PORTNAME}.pid|' \
X		-e '/<debugOn>/s|<debugOn>|<!--<debugOn>-->|' \
X		${WRKSRC}/config_example.xml
X	@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g; s|%%PYTHON_CMD%%|${PYTHON_CMD}|g' \
X		${WRKSRC}/src/main.py
X	@${RM} ${WRKSRC}/src/main.py.*
X	@${MV} ${WRKSRC}/src/config.py ${WRKSRC}/src/config.py.sample
X
Xdo-install:
X	${INSTALL} -d ${INST_DIR}
X	${CP} -pPR ${WRKSRC}/src/* ${INST_DIR}/
X	${CHMOD} 755 ${INST_DIR}/main.py
X	[ -f ${INST_DIR}/config.py ] || ${CP} ${INST_DIR}/config.py.sample ${INST_DIR}/config.py
X	${INSTALL_SCRIPT} -m 751 ${WRKDIR}/${PKGBASE}.sh ${PREFIX}/etc/rc.d/${PKGBASE}.sh
X	@${MKDIR} ${EXAMPLESDIR}/etc
X	${INSTALL_DATA} ${WRKSRC}/config_example.xml ${EXAMPLESDIR}/etc/jabber-pyicq.xml
X	[ -f ${PREFIX}/etc/jabber-pyicq.xml ] || ${CP} ${EXAMPLESDIR}/etc/jabber-pyicq.xml ${PREFIX}/etc/jabber-pyicq.xml
X.if !defined(NOPORTDOCS)
X.for portdoc in ${PORTDOCS}
X	@${MKDIR} ${DOCSDIR}
X	${INSTALL_DATA} ${WRKSRC}/${portdoc} ${DOCSDIR}/
X.endfor
X.endif
X
Xpost-install:
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.mk>
END-of-./jabber-pyicq/Makefile
echo x - ./jabber-pyicq/distinfo
sed 's/^X//' >./jabber-pyicq/distinfo << 'END-of-./jabber-pyicq/distinfo'
XMD5 (jabber/pyicq-t-0.6.tar.gz) = 5c6f8cd598465124d886f1c47f88c809
XSIZE (jabber/pyicq-t-0.6.tar.gz) = 140654
END-of-./jabber-pyicq/distinfo
echo x - ./jabber-pyicq/pkg-descr
sed 's/^X//' >./jabber-pyicq/pkg-descr << 'END-of-./jabber-pyicq/pkg-descr'
XPython ICQ-Transport for Jabber.
X
XThe purpose of this transport is to provide a way for users to be logged into
XICQ via their Jabber account. It is implemented in Python, using the Twisted
Xframework. This project is just getting off the ground, and so it does not have
Xquite the functionality of other transports yet. That will come in time.
X
XWWW: http://pyicq-t.blathersource.org/
END-of-./jabber-pyicq/pkg-descr
echo x - ./jabber-pyicq/pkg-plist
sed 's/^X//' >./jabber-pyicq/pkg-plist << 'END-of-./jabber-pyicq/pkg-plist'
X@comment $FreeBSD$
X@unexec if cmp -s %D/%%EXAMPLESDIR%%/etc/jabber-pyicq.xml %D/etc/jabber-pyicq.xml; then rm -f %D/etc/jabber-pyicq.xml; fi
X%%EXAMPLESDIR%%/etc/jabber-pyicq.xml
X@exec [ -f %D/etc/jabber-pyicq.xml ] || cp %B/%f %D/etc/jabber-pyicq.xml
X@unexec if cmp -s %D/lib/jabber/pyicq/config.py.sample %D/lib/jabber/pyicq/config.py; then rm -f %D/lib/jabber/pyicq/config.py; fi
Xlib/jabber/pyicq/config.py.sample
X@exec [ -f %D/lib/jabber/pyicq/config.py ] || cp %B/%f %D/lib/jabber/pyicq/config.py
Xlib/jabber/pyicq/debug.py
Xlib/jabber/pyicq/disco.py
Xlib/jabber/pyicq/jabw.py
Xlib/jabber/pyicq/lang.py
Xlib/jabber/pyicq/legacy/__init__.py
Xlib/jabber/pyicq/legacy/glue.py
Xlib/jabber/pyicq/legacy/icqt.py
Xlib/jabber/pyicq/main.py
Xlib/jabber/pyicq/misciq.py
Xlib/jabber/pyicq/register.py
Xlib/jabber/pyicq/session.py
Xlib/jabber/pyicq/stats.py
Xlib/jabber/pyicq/tlib/__init__.py
Xlib/jabber/pyicq/tlib/countrycodes.py
Xlib/jabber/pyicq/tlib/domish.py
Xlib/jabber/pyicq/tlib/jabber/__init__.py
Xlib/jabber/pyicq/tlib/jabber/client.py
Xlib/jabber/pyicq/tlib/jabber/component.py
Xlib/jabber/pyicq/tlib/jabber/jid.py
Xlib/jabber/pyicq/tlib/jabber/jstrports.py
Xlib/jabber/pyicq/tlib/langcodes.py
Xlib/jabber/pyicq/tlib/oscar.py
Xlib/jabber/pyicq/tlib/socks5.py
Xlib/jabber/pyicq/tlib/sockserror.py
Xlib/jabber/pyicq/tlib/xmlstream.py
Xlib/jabber/pyicq/utils.py
Xlib/jabber/pyicq/webadmin/__init__.py
Xlib/jabber/pyicq/webadmin/handler.py
Xlib/jabber/pyicq/xdb.py
Xlib/jabber/pyicq/xmlconfig.py
X@dirrm lib/jabber/pyicq/legacy
X@dirrm lib/jabber/pyicq/tlib/jabber
X@dirrm lib/jabber/pyicq/tlib
X@dirrm lib/jabber/pyicq/webadmin
X@dirrm lib/jabber/pyicq
X@unexec rmdir %D/lib/jabber 2>/dev/null || true
X@dirrm %%EXAMPLESDIR%%/etc
X@dirrm %%EXAMPLESDIR%%
END-of-./jabber-pyicq/pkg-plist
exit

--- jabber-pyicq.shar ends here ---

Thanks
-- 
Renato Botelho <freebsd at galle dot com dot br>
AIM: RBGargaBR | ICQ: 54596223
GnuPG Key: http://www.galle.com.br/~renato/pubkey.asc

	WARNING TO ALL PERSONNEL:

Firings will continue until morale improves.
Comment 3 Pav Lucistnik freebsd_committer freebsd_triage 2005-06-07 16:18:25 UTC
State Changed
From-To: open->closed

New port added, thank you!