Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 Apr 2004 22:57:18 +0200 (CEST)
From:      Thierry Thomas <thierry@pompo.net>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/65589: New port: www/mozex, external programs integration into Mozilla.
Message-ID:  <20040415205718.DBA7322B939@ws90bj.pompo.net>
Resent-Message-ID: <200404152100.i3FL0Usp015694@freefall.freebsd.org>

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

>Number:         65589
>Category:       ports
>Synopsis:       New port: www/mozex, external programs integration into Mozilla.
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Apr 15 14:00:30 PDT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Thierry Thomas
>Release:        FreeBSD 5.2.1-RELEASE i386
>Organization:
Kabbale Eros
>Environment:
System: FreeBSD ws90bj.pompo.net 5.2.1-RELEASE FreeBSD 5.2.1-RELEASE #0: Thu Feb 26 22:14:29 CET 2004 thierry@ws90bj.pompo.net:/usr/obj/usr/src/sys/WS90BJ-040102 i386


	
>Description:
	This PR supersedes PR ports/63236 (fix deinstallation problems).

	Mozex lets you call external programs from Mozilla, e.g. you can
	call an external mailer on mailto: links.

	This extension can be installed for Mozilla and for Firefox
	=> there are a master- and a slave ports.

	The files Makefile.xpi and pkg-install.xpi have been designed to
	install any .xpi extension (hopefully).

	Note: this is a "binary" (XUL) port (the source is only available in
	CVS) but it should be cross-platform.

	Remark: waiting for an update of mozilla.

>How-To-Repeat:
	N/A.

>Fix:
	Please execute the following shar file:

--- mozex.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:
#
#	www/mozex
#	www/mozex/files
#	www/mozex/files/installed-chrome.txt
#	www/mozex/Makefile.xpi
#	www/mozex/Makefile
#	www/mozex/pkg-install.xpi
#	www/mozex/distinfo
#	www/mozex/pkg-descr
#	www/mozex/pkg-message
#	www/mozex/pkg-plist
#	www/mozex-firefox
#	www/mozex-firefox/Makefile
#
echo c - www/mozex
mkdir -p www/mozex > /dev/null 2>&1
echo c - www/mozex/files
mkdir -p www/mozex/files > /dev/null 2>&1
echo x - www/mozex/files/installed-chrome.txt
sed 's/^X//' >www/mozex/files/installed-chrome.txt << 'END-of-www/mozex/files/installed-chrome.txt'
Xcontent,install,url,jar:resource:/chrome/mozex.jar!/content/mozex/
END-of-www/mozex/files/installed-chrome.txt
echo x - www/mozex/Makefile.xpi
sed 's/^X//' >www/mozex/Makefile.xpi << 'END-of-www/mozex/Makefile.xpi'
X# Date created:			  Sun Oct 26, 2003
X# Whom:				  Thierry Thomas (<thierry@pompo.net>)
X#
X# $FreeBSD$
X#
X
XEXTRACT_SUFX=   .xpi
X
XBUILD_DEPENDS+=	${MOZDIR}/regchrome:${PORTSDIR}/www/${MOZPORT}
XRUN_DEPENDS+=	${MOZDIR}:${PORTSDIR}/www/${MOZPORT}
X
XNO_BUILD=	yes
XUSE_ZIP=	yes
X
XPKGINSTALL=	${PORTSDIR}/www/mozex/pkg-install.xpi
XPKGDEINSTALL=	${PKGINSTALL}
X
X.if !defined(WITH_FIREFOX)
X# "Regular" mozillas
X. if exists(${X11BASE}/lib)
XMOZDIR!=	${FIND} ${X11BASE}/lib -name mozilla-bin -exec dirname {} \; | ${HEAD} -n 1
X. else
XMOZDIR=
X. endif
X. if empty(MOZDIR)
XMOZPORT=	mozilla
XMOZDIR=		${X11BASE}/lib/${MOZPORT}
X. else
XMOZPORT!=	${BASENAME} ${MOZDIR}
X. endif
XMOZLDIR=	lib/${MOZPORT}
X.else
X# Firefox
XPKGNAMESUFFIX=	-firefox
X. if exists(${X11BASE}/lib})
XMOZDIR!=	${FIND} ${X11BASE}/lib -name firefox-bin -exec dirname {} \; | ${HEAD} -n 1
X. else
XMOZDIR=
X. endif
X. if empty(MOZDIR)
XMOZVER=		mozilla-1.6	# Warning! chase this when upgrading firefox.
X. else
XMOZVER!=	${BASENAME} ${MOZDIR}
X. endif
XMOZPORT=	firefox
XMOZLDIR=	lib/firefox/lib/${MOZVER}
X.endif
X.if empty(MOZDIR)
XMOZDIR=		${X11BASE}/${MOZLDIR}
X.endif
X
XPLIST_SUB=	MOZDIR=${MOZLDIR}
X
Xpre-install:
X.if ${PREFIX} != ${X11BASE}
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "${PREFIX} invalid - must be installed under ${X11BASE}."
X	@${ECHO_MSG} ""
X	@${FALSE}
X.else
X	@${CP} ${FILESDIR}/installed-chrome.txt ${MOZDIR}/${PORTNAME}-installed-chrome.txt
X.endif
X
Xpost-install:
X	@${ECHO_CMD} ${MOZLDIR}/${PORTNAME}-installed-chrome.txt >> ${TMPPLIST}
X	@${CAT} ${MOZDIR}/${PORTNAME}-installed-chrome.txt	\
X		>> ${MOZDIR}/chrome/installed-chrome.txt
X	@${ECHO_CMD} "@exec ${CAT} ${MOZDIR}/${PORTNAME}-installed-chrome.txt \
X		>> ${MOZDIR}/chrome/installed-chrome.txt" >> ${TMPPLIST}
X	@${SETENV} PKG_PREFIX=${PREFIX}	\
X	${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
X.if exists(${PKGMESSAGE})
X	@${CAT} ${PKGMESSAGE}
X.endif
END-of-www/mozex/Makefile.xpi
echo x - www/mozex/Makefile
sed 's/^X//' >www/mozex/Makefile << 'END-of-www/mozex/Makefile'
X# Ports collection makefile for:  mozex
X# Date created:			  Sun Oct 26, 2003
X# Whom:				  Thierry Thomas (<thierry@pompo.net>)
X#
X# $FreeBSD$
X#
X
XPORTNAME?=	mozex
XPORTVERSION=	1.07
XCATEGORIES=	www mail news ftp
XMASTER_SITES=	http://mozex.mozdev.org/
X
XMAINTAINER?=	ports@FreeBSD.org
XCOMMENT?=	Mozex allows Mozilla's users to use external programs for mail, news, etc.
X
XUSE_X_PREFIX=	yes	# Cannot be included after <bsd.port.pre.mk>.
X
X.include <bsd.port.pre.mk>
X.include "${PORTSDIR}/www/mozex/Makefile.xpi"
X
Xdo-install:
X	@${INSTALL_DATA} ${WRKDIR}/mozex.jar ${MOZDIR}/chrome
X
X.include <bsd.port.post.mk>
END-of-www/mozex/Makefile
echo x - www/mozex/pkg-install.xpi
sed 's/^X//' >www/mozex/pkg-install.xpi << 'END-of-www/mozex/pkg-install.xpi'
X#!/bin/sh
X#
X# $FreeBSD$
X#
X# Date created:			  Mon Oct 27, 2003
X# Whom:				  Thierry Thomas (<thierry@pompo.net>)
X# Register the extension $1 in the chrome registry.
X
Xumask 022
XPATH=/bin:/usr/bin
X
X[ "x$1" = "x" ] && exit 1
X[ "x$2" = "xPRE-INSTALL" ] && exit 0
X[ "x$2" = "xDEINSTALL" ] && exit 0
X
XPREFIX=${PKG_PREFIX:-/usr/X11R6}
X
X# If this is an extension for firefox, PKGNAMESUFFIX has been set
XPKG_NAME=${1%%-[0-9._]*}
XPKG_ROOT=$(echo $PKG_NAME | sed 's/-firefox$//')
Xif [ $PKG_NAME = $PKG_ROOT ]; then
XMOZBIN=mozilla-bin
Xelse
XMOZBIN=firefox-bin
Xfi
X
XMOZDIR=`find $PREFIX/lib -name $MOZBIN -exec dirname {} \; | head -n 1`
XREGXPCOM=$MOZDIR/regxpcom
XREGCHROME=$MOZDIR/regchrome
X
Xif [ "x$2" = "xPOST-DEINSTALL" ]; then
X	case $PKG_ROOT in
X		fr-mozilla-flp|fr-firefox-flp)
X			MODEXT="FR.jar fr-unix.jar"
X			;;
X
X		*)
X			MODEXT=$PKG_ROOT
X			;;
X	esac
X	# Removing definition of extension $MODEXT
X	for mod in $MODEXT; do
X		sed -i .bak -e "/$mod/d" $MOZDIR/chrome/installed-chrome.txt
X	done
Xfi
X
Xecho "===>  Re-building Chrome's registry..."
Xrm -rf $MOZDIR/chrome/overlayinfo
Xrm -f $MOZDIR/chrome/*.rdf
Xmkdir -p $MOZDIR/chrome/overlayinfo
Xrm -f $MOZDIR/component.reg
X
XLD_LIBRARY_PATH=$MOZDIR MOZILLA_FIVE_HOME=$MOZDIR $MOZDIR/regxpcom || true
XLD_LIBRARY_PATH=$MOZDIR MOZILLA_FIVE_HOME=$MOZDIR $MOZDIR/regchrome || true
Xtouch $MOZDIR/chrome/user-skins.rdf $MOZDIR/chrome/user-locales.rdf
X
X[ "x$2" = "xPOST-INSTALL" ] || rm $MOZDIR/chrome/installed-chrome.txt.bak
X
Xexit 0
END-of-www/mozex/pkg-install.xpi
echo x - www/mozex/distinfo
sed 's/^X//' >www/mozex/distinfo << 'END-of-www/mozex/distinfo'
XMD5 (mozex-1.07.xpi) = 9383380b78ed69409c0880a99b07e297
XSIZE (mozex-1.07.xpi) = 17072
END-of-www/mozex/distinfo
echo x - www/mozex/pkg-descr
sed 's/^X//' >www/mozex/pkg-descr << 'END-of-www/mozex/pkg-descr'
XMozex is an extension to Mozilla or Firefox which allows the user to use
Xexternal programs for these actions:
X
X    * view page source
X    * edit content of textareas (possibly utilizing a spell-checker in the
X      text editor)
X    * handle mailto, news, telnet and FTP links
X    * download files
X
XWWW: http://mozex.mozdev.org/index.html
END-of-www/mozex/pkg-descr
echo x - www/mozex/pkg-message
sed 's/^X//' >www/mozex/pkg-message << 'END-of-www/mozex/pkg-message'
X**************************************************************************
XMozex has been installed. If Mozilla is running, restart it.
XA new "mozex" entry is present in page context menu (right click somewhere
Xon the page), and you have to edit preferences (for every profile).
X
XTo set up your external programs, please follow the instructions on
X<http://mozex.mozdev.org/arguments.html>.
X**************************************************************************
END-of-www/mozex/pkg-message
echo x - www/mozex/pkg-plist
sed 's/^X//' >www/mozex/pkg-plist << 'END-of-www/mozex/pkg-plist'
X%%MOZDIR%%/chrome/mozex.jar
X%%MOZDIR%%/chrome/overlayinfo/browser/content/overlays.rdf
END-of-www/mozex/pkg-plist
echo c - www/mozex-firefox
mkdir -p www/mozex-firefox > /dev/null 2>&1
echo x - www/mozex-firefox/Makefile
sed 's/^X//' >www/mozex-firefox/Makefile << 'END-of-www/mozex-firefox/Makefile'
X# Ports collection makefile for:  mozex-firefox
X# Date created:			  Tue Oct 28, 2003
X# Whom:				  Thierry Thomas (<thierry@pompo.net>)
X#
X# $FreeBSD$
X#
X
XPORTNAME=	mozex
X#PKGNAMESUFFIX set to -firefox in ../mozex/Makefile.xpi
X
XMAINTAINER=	ports@FreeBSD.org
XCOMMENT=	Mozex allows Firefox's users to use external programs for mail, news, etc.
X
XMASTERDIR=	${.CURDIR}/../mozex
X
XWITH_FIREFOX=	yes
X
X.include "${MASTERDIR}/Makefile"
END-of-www/mozex-firefox/Makefile
exit
--- mozex.shar ends here ---

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



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