[PATCH] www/firefox: new mozilla.sh and package script
Jose M Rodriguez (freebsd)
josemi at freebsd.jazztel.es
Tue Jan 4 12:06:18 PST 2005
>Submitter-Id: current-users
>Originator: Jose M Rodriguez (freebsd)
>Organization: Redes JM
>Confidential: no
>Synopsis: [PATCH] www/firefox: new mozilla.sh and package script
>Severity: non-critical
>Priority: low
>Category: ports
>Class: change-request
>Release: FreeBSD 5.3-STABLE i386
>Environment:
System: FreeBSD orion.redesjm.local 5.3-STABLE FreeBSD 5.3-STABLE #0: Tue Jan 4 07:32:56 CET
>Description:
fresh patch to firefox with my latest changes
- new firefox launch script
to be merged upstream
- move browser-pluggins support to pkg scripts
- move java pluggin support to pkg scripts
- move outer scripts support (${prefix}/bin) to pkg scripts
- merge Gnome External URI helper patch from mozilla
- add support for MOZ_PIS scripts
S50cleanhome
clean $HOME profile after firefox reinstall
S90dsp.sh
support for artsdsp (KDE)
- add prefs to make open external links in new-tab as mozilla
(firefox default is in same tab/window)
NOTE: I drop mozilla-urihelper. seems that gconf is predominant,
so you may use gconf-editor or control center to define which
apps are use for external protocol
The keys are under:
<Desktop><gnome><url-handlers>
Added file(s):
- files/moz_pis_S50cleanhome
- files/moz_pis_S90dsp.sh
- files/patch-uriloader_exthandler_unix_nsGNOMERegistry.cpp
Port maintainer (gnome at FreeBSD.org) is cc'd.
Generated with FreeBSD Port Tools 0.63
>How-To-Repeat:
>Fix:
--- firefox-1.0_8,1.patch begins here ---
diff -ruN --exclude=CVS /usr/HEAD/ports/www/firefox/Makefile /junk/wk/www/firefox/Makefile
--- /usr/HEAD/ports/www/firefox/Makefile Mon Jan 3 00:27:54 2005
+++ /junk/wk/www/firefox/Makefile Tue Jan 4 20:43:34 2005
@@ -7,7 +7,7 @@
PORTNAME= firefox
PORTVERSION= 1.0
-PORTREVISION= 7
+PORTREVISION= 8
PORTEPOCH= 1
CATEGORIES= www
MASTER_SITES= ${MASTER_SITE_MOZILLA}
@@ -61,12 +61,19 @@
${LOCALBASE}/jdk1.4.1/jre/plugin/${ARCH}/ns610/libjavaplugin_oji.so \
${LOCALBASE}/diablo-jdk1.3.1/jre/plugin/${ARCH}/ns600/libjavaplugin_oji.so \
${LOCALBASE}/jdk1.3.1/jre/plugin/${ARCH}/ns600/libjavaplugin_oji.so
+MOZ_PIS_SCRIPTS= S50cleanhome
+SCRIPTS_DIR= ${FAKEDIR}/lib/${FIREFOX}-${FF_VER}
+MOZ_PIS_DIR= ${SCRIPTS_DIR}/init.d
+FIREFOX_EXTERNAL_PROTOCOLS?= mailto news nntp snews
+SYSTEM_PREFS= ${FAKEDIR}/lib/${FIREFOX}-${FF_VER}/defaults/pref/firefox.js
OPTIONS= DEBUG "Build a debugging image" off \
LOGGING "Enable additional log messages" off \
OPTIMIZED_CFLAGS "Enable some additional optimizations" off \
XFT "Enable support for anti-aliased fonts" on \
- SMB "Enable smb:// URI support using gnomevfs" off
+ SMB "Enable smb:// URI support using gnomevfs" off \
+ ARTSDSP "Add support for KDE arts (artsdsp)" on \
+ NEWTAB "Open external links in a new tab" on
.include <bsd.port.pre.mk>
@@ -97,6 +104,10 @@
CONFIGURE_ENV+= WITH_SMB=yes
.endif # defined(WITH_SMB)
+.if !defined(WITHOUT_ARTSDSP)
+MOZ_PIS_SCRIPTS+= S90dsp.sh
+.endif # !defined(WITHOUT_ARTSDSP)
+
CPPFLAGS+= -I${X11BASE}/include -I${LOCALBASE}/include
CFLAGS+= ${PTHREAD_CFLAGS}
LDFLAGS+= -L${X11BASE}/lib
@@ -131,12 +142,23 @@
<${FILESDIR}/firefox.desktop.in >${WRKDIR}/firefox.desktop
post-patch:
- @${SED} -e 's|%%MOZDIR%%|${PREFIX}/lib/${FIREFOX}|g ; \
+ @${SED} -e 's|%%MOZILLA%%|${FIREFOX}|g ; \
s|%%PREFIX%%|${PREFIX}|g ; \
+ s|%%EXTRA_SCRIPTS%%|${EXTRA_SCRIPTS}|g ; \
+ s|%%JPI_LIST%%|${JPI_LIST}|g ; \
s|%%X11BASE%%|${X11BASE}|g' \
< ${MASTERDIR}/pkg-install.in > ${PKGINSTALL}
- @${SED} -e 's|%%MOZDIR%%|${PREFIX}/lib/${FIREFOX}|g' \
+ @${SED} -e 's|%%MOZILLA%%|${FIREFOX}|g ; \
+ s|%%EXTRA_SCRIPTS%%|${EXTRA_SCRIPTS}|g ; \
+ s|%%PREFIX%%|${PREFIX}|g ; \
+ s|%%X11BASE%%|${X11BASE}|g' \
< ${MASTERDIR}/pkg-deinstall.in > ${PKGDEINSTALL}
+.for ii in ${EXTRA_SCRIPTS}
+ @${SED} -e 's|%%MOZILLA%%|${FIREFOX}|g ; \
+ s|%%PREFIX%%|${PREFIX}|g ; \
+ s|%%X11BASE%%|${X11BASE}|g' \
+ < ${FILESDIR}/${ii} > ${WRKDIR}/${ii}
+.endfor
@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' \
${WRKSRC}/build/unix/run-mozilla.sh
@${REINPLACE_CMD} -e 's|-lc_r|${PTHREAD_LIBS}|g ; \
@@ -169,17 +191,28 @@
@${RM} -rf ${FAKEDIR} ${PLIST}
@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} \
Makefile ${MAKE_ARGS} install
+ @${MKDIR} ${SCRIPTS_DIR}
+ @${MKDIR} ${MOZ_PIS_DIR}
${ECHO_CMD} 'share/gnome/pixmaps/${FIREFOX_ICON}' >> ${PLIST}
${ECHO_CMD} 'share/gnome/applications/firefox.desktop' >> ${PLIST}
${REINPLACE_CMD} -e 's|${FAKEDIR}|${PREFIX}|g; \
- s|${FIREFOX}-${FF_VER}|${FIREFOX}|' \
+ s|${FIREFOX}-${FF_VER}|${FIREFOX}|g' \
${FAKEDIR}/bin/firefox \
${FAKEDIR}/bin/firefox-config
- for i in ${EXTRA_SCRIPTS}; do \
- ${ECHO_CMD} bin/$${i} >> ${PLIST}; \
- done
- ${ECHO_CMD} bin/firefox >> ${PLIST}
- ${ECHO_CMD} bin/firefox-config >> ${PLIST}
+ ${INSTALL_SCRIPT} ${FAKEDIR}/bin/firefox ${SCRIPTS_DIR}
+ ${INSTALL_SCRIPT} ${FAKEDIR}/bin/firefox-config ${SCRIPTS_DIR}
+.for ii in ${EXTRA_SCRIPTS}
+ ${INSTALL_SCRIPT} ${WRKDIR}/${ii} ${SCRIPTS_DIR}
+.endfor
+.for ii in ${MOZ_PIS_SCRIPTS}
+ ${INSTALL_SCRIPT} ${FILESDIR}/moz_pis_${ii} ${MOZ_PIS_DIR}/${ii}
+.endfor
+.if !defined(WITHOUT_NEWTAB)
+ ${ECHO_CMD} >> ${SYSTEM_PREFS}
+ ${ECHO_CMD} "// Open external links in new tab" >> ${SYSTEM_PREFS}
+ ${ECHO_CMD} "pref(\"browser.link.open_external\", 3);" \
+ >> ${SYSTEM_PREFS}
+.endif # !defined(WITHOUT_NEWTAB)
cd ${FAKEDIR}/lib/${FIREFOX}-${FF_VER} && ${FIND} -s * -type f -o -type l | \
${SED} -e 's|^|lib/${FIREFOX}/|' >> ${PLIST} \
&& ${FIND} -d * -type d | \
@@ -196,27 +229,10 @@
&& ${FIND} -d * -type d | \
${SED} -e 's|^|@dirrm include/${FIREFOX}/|' >> ${PLIST}
${ECHO_CMD} @dirrm include/${FIREFOX} >> ${PLIST}
- ${ECHO_CMD} lib/browser_plugins/.${PORTNAME}.keep >> ${PLIST}
- ${ECHO_CMD} "@unexec ${RMDIR} %D/lib/browser_plugins 2>/dev/null || ${TRUE}" >> ${PLIST}
do-install:
${MKDIR} ${PREFIX}/lib/${FIREFOX}
${CHMOD} 755 ${PREFIX}/lib/${FIREFOX}
- ${INSTALL_SCRIPT} ${FAKEDIR}/bin/firefox ${PREFIX}/bin
- ${INSTALL_SCRIPT} ${FAKEDIR}/bin/firefox-config ${PREFIX}/bin
- if [ ! -d ${PREFIX}/lib/browser_plugins ]; then \
- ${MKDIR} ${PREFIX}/lib/browser_plugins ; \
- fi
- ${TOUCH} -f ${PREFIX}/lib/browser_plugins/.${PORTNAME}.keep
- if [ ! -L ${PREFIX}/lib/browser_plugins/libjavaplugin_oji.so ]; then \
- for jpi in ${JPI_LIST}; do \
- if [ -f $${jpi} ]; then \
- ${LN} -sf $${jpi} \
- ${PREFIX}/lib/browser_plugins/libjavaplugin_oji.so ; \
- break; \
- fi; \
- done; \
- fi
for pcfile in ${PKGCONFIG_FILES}; do \
${INSTALL_DATA} ${FAKEDIR}/lib/pkgconfig/$${pcfile}.pc \
${PREFIX}/libdata/pkgconfig/$${pcfile}.pc ; \
@@ -233,9 +249,6 @@
.if !defined(PACKAGE_BUILDING)
@${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
.endif
-.for i in ${EXTRA_SCRIPTS}
- ${INSTALL_SCRIPT} ${FILESDIR}/${i} ${PREFIX}/bin
-.endfor
${INSTALL_DATA} ${FIREFOX_ICON_SRC} ${PREFIX}/share/gnome/pixmaps/${FIREFOX_ICON}
${INSTALL_DATA} ${WRKDIR}/firefox.desktop ${PREFIX}/share/gnome/applications
${INSTALL_DATA} ${WRKSRC}/other-licenses/branding/firefox/default.xpm \
diff -ruN --exclude=CVS /usr/HEAD/ports/www/firefox/files/firefox.desktop.in /junk/wk/www/firefox/files/firefox.desktop.in
--- /usr/HEAD/ports/www/firefox/files/firefox.desktop.in Mon Dec 13 01:04:25 2004
+++ /junk/wk/www/firefox/files/firefox.desktop.in Mon Jan 3 23:49:54 2005
@@ -1,9 +1,191 @@
[Desktop Entry]
-Name=Firefox
-Comment=Firefox Web Browser
+Encoding=UTF-8
+Name=Firefox Web Browser
+Name[am]=
+Name[ar]=
+Name[az]=Firefox Veb SÉyyahı
+Name[be]=
+Name[bg]=ÐнÑеÑÐ½ÐµÑ Ð±ÑаÑзÑÑ Firefox
+Name[bn]=
+Name[bs]=Firefox web preglednik
+Name[ca]=Navegador web Firefox
+Name[cs]=ProhlÞeÄ WWW Firefox
+Name[cy]=Y Porwr Gwe Firefox
+Name[da]=Firefox - internetsurfning
+Name[de]=Firefox Webbrowser
+Name[el]=ΠεÏιηγηÏÎ®Ï ÎιαδικÏÏοÏ
Firefox
+Name[en_CA]=Firefox Web Browser
+Name[en_GB]=Firefox Web Browser
+Name[es]=Navegador Web Firefox
+Name[et]=Firefox veebibrauser
+Name[eu]=Firefox web arakatzailea
+Name[fi]=Firefox, WWW-selain
+Name[fr]=Navigateur Web Firefox
+Name[ga]=Brabhsálaà LÃn Firefox
+Name[gu]=àªàªªà«àª«àª¨à« વà«
બ બà«àª°àª¾àªàªàª°
+Name[he]=×פ××¤× Firefox
+Name[hi]=
+Name[hr]=Firefox Web preglednik
+Name[hu]=Firefox webböngészÅ
+Name[id]=Web Browser Firefox
+Name[it]=Browser web Firefox
+Name[ja]=Firefox ã¦ã§ãã»ãã©ã¦ã¶
+Name[ko]=Firefox ì¹ ë¸ë¼ì°ì
+Name[li]=Firefox Web Browser
+Name[lt]=Firefox web narÅ¡yklÄ
+Name[mk]=Firefox веб пÑелиÑÑÑваÑ
+Name[ml]=à´à´ªàµà´ªà´¿à´«à´¾à´¨à´¿ à´µàµà´¬àµà´¬àµ à´¬àµà´°àµà´¸âà´°àµ
+Name[mn]=Firefox веб Ñ
Ó©ÑÓ©Ñ
+Name[ms]=Pelungsur Web Firefox
+Name[nb]=Firefox nettleser
+Name[nl]=Firefox Webbrowser
+Name[nn]=Firefox nettlesar
+Name[no]=Firefox nettleser
+Name[pa]=à¨à¨ªà©à¨«à¨¾à¨¨à© ਵà©à©±à¨¬ ਬਰਾà¨à¨à¨¼à¨°
+Name[pl]=PrzeglÄ
darka WWW Firefox
+Name[pt]=Navegador Web Firefox
+Name[pt_BR]=Navegador Web Firefox
+Name[ro]=Navigatorul Firefox
+Name[ru]=Ðеб-бÑаÑÐ·ÐµÑ Firefox
+Name[sk]=
+Name[sl]=Spletni brskalnik Firefox
+Name[sq]=Firefox - Shfletuesi Web
+Name[sr]=
+Name[sr at Latn]=Veb ÄitaÄ Spoznaja
+Name[sv]=Webbläsaren Firefox
+Name[ta]=à®à®ªà®¿à®ªà®©à®¿ வல௠à®à®²à®¾à®µà®¿
+Name[tk]=Firefox Web Ahtarçisi
+Name[tr]=Firefox Web Tarayıcı
+Name[uk]=ÐеÑеглÑÐ´Ð°Ñ web Firefox
+Name[vi]=Trình Duyá»t Web Firefox
+Name[wa]=Betchteu waibe epiphany
+Name[zh_CN]=Firefox Web æµè§å¨
+Name[zh_TW]=Firefox 網é ç覽å¨
+GenericName=Web Browser
+GenericName[ar]=Ù
تصÙÙØ Ø§ÙاÙترÙت
+GenericName[az]=Veb SÉyyahı
+GenericName[be]=ÐандÑоÑнÑк па павÑÑÑнÑнÑ
+GenericName[bg]=ÐÑаÑзÑÑ
+GenericName[bn]=à¦à§à§à¦¬ বà§à¦°à¦¾à¦à¦à¦¾à¦°
+GenericName[bs]=Web preglednik
+GenericName[ca]=Navegador web
+GenericName[cs]=ProhlÞeÄ WWW
+GenericName[cy]=Porwr Gwe
+GenericName[da]=Internetsurfning
+GenericName[de]=Webbrowser
+GenericName[el]=ΠεÏιηγηÏÎ®Ï ÎÏÏοÏελίδÏν
+GenericName[en_CA]=Web Browser
+GenericName[en_GB]=Web Browser
+GenericName[es]=Navegador web
+GenericName[et]=Veebilehitseja
+GenericName[eu]=Web arakatzailea
+GenericName[fi]=WWW-selain
+GenericName[fr]=Navigateur Web Firefox
+GenericName[ga]=Brabhsálaà LÃn
+GenericName[gu]=વà«àª¬ બà«àª°àª¾àªàªàª°
+GenericName[he]=×פ××¤× ××× ××¨× ×
+GenericName[hi]=वà¥à¤¬ बà¥à¤°à¤¾à¤à¤à¤¼à¤°
+GenericName[hr]=Web preglednik
+GenericName[hu]=WebböngészÅ
+GenericName[id]=Browser Web
+GenericName[it]=Browser web
+GenericName[ja]=GNOME ã¦ã§ãã»ãã©ã¦ã¶
+GenericName[ko]=ì¹ ë¸ë¼ì°ì
+GenericName[li]=Wèb Browser
+GenericName[lt]=Web narÅ¡yklÄ
+GenericName[mk]=Ðеб пÑелиÑÑÑваÑ
+GenericName[mn]=Ðеб Ñ
Ó©ÑÓ©Ñ
+GenericName[ms]=Pelungsur Web
+GenericName[nb]=Nettleser
+GenericName[nl]=Web-browser
+GenericName[nn]=Nettlesar
+GenericName[no]=Nettleser
+GenericName[pa]=ਵà©à¨¬ ਬਰਾà¨à¨à¨¼
+GenericName[pl]=PrzeglÄ
darka WWW
+GenericName[pt]=Navegador Web
+GenericName[pt_BR]=Navegador Web
+GenericName[ro]=Navigator Internet
+GenericName[ru]=Ðеб-бÑаÑзеÑ
+GenericName[sk]=WWW prehliadaÄ
+GenericName[sl]=Spletni brskalnik
+GenericName[sq]=Shfletuesi Web
+GenericName[sr]=Ðеб ÑиÑаÑ
+GenericName[sr at Latn]=Veb ÄitaÄ
+GenericName[sv]=Webbläsare
+GenericName[ta]=வல௠à®à®²à®¾à®µà®¿
+GenericName[th]=à¹à¸§à¹à¸à¸à¸£à¸²à¸§à¹à¸à¸à¸£à¹
+GenericName[tk]=Web Ahtarçysy
+GenericName[tr]=Web Tarayıcı
+GenericName[uk]=ÐеÑеглÑÐ´Ð°Ñ web-ÑÑоÑÑнок
+GenericName[vi]=Trình duyá»t Web
+GenericName[wa]=Betchteu waibe
+GenericName[zh_CN]=Web æµè§å¨
+GenericName[zh_TW]=網é ç覽å¨
+Comment=Browse the web
+Comment[ar]=تصÙØ Ø§ÙاÙترÙت
+Comment[az]=Vebi gÉzin
+Comment[be]=ÐандÑаваÑÑ Ð¿Ð° павÑÑÑнÑнÑ
+Comment[bg]=СÑÑÑиÑане в инÑеÑнеÑ
+Comment[bn]=à¦à§à§à¦¬ বà§à¦°à¦¾à¦à¦ à¦à¦°à§à¦¨
+Comment[bs]=Pregledaj na internetu
+Comment[ca]=Navegueu per la web
+Comment[cs]=ProhlÞet WWW
+Comment[cy]=Pori'r we
+Comment[da]=Surf på internettet
+Comment[de]=Im Web surfen
+Comment[el]=ΠεÏιήγηÏη ÏÏον ÏαγκÏÏμιο ιÏÏÏ
+Comment[en_CA]=Browse the web
+Comment[en_GB]=Browse the web
+Comment[es]=Navegar por la web
+Comment[et]=Sirvi veebi
+Comment[eu]=Arakatu web-a
+Comment[fi]=Selaa WWW:tä
+Comment[fr]=Naviguer sur Internet
+Comment[ga]=Brabhsáil an LÃon
+Comment[gu]=વà«àª¬àª®àª¾àª શà«àª§à«
+Comment[he]=×××ש ×רשת
+Comment[hi]=वà¥à¤¬ बà¥à¤°à¤¾à¤à¤à¤¼ à¤à¤°à¥à¤
+Comment[hr]=Pregledaj Web
+Comment[hu]=A világháló böngészése
+Comment[id]=Jelajah web
+Comment[it]=Esplora il web
+Comment[ja]=ã¦ã§ããé²è¦§ãã¾ã
+Comment[ko]=ì¹ì ëì ë¤ëëë¤
+Comment[li]=Blajere op internet
+Comment[lt]=Naršyti internete
+Comment[mk]=ÐÑелиÑÑÑваÑÑе на веб
+Comment[ml]=വലà´àµà´àµà´àµà´àµ തിരയàµà´
+Comment[mn]=Ðеб бÑоÑзе Ñ
ийÑ
+Comment[ms]=Layari web
+Comment[nb]=Surf på nettet
+Comment[nl]=Websurfen
+Comment[nn]=Surf på nettet
+Comment[no]=Surf på nettet
+Comment[pa]=ਵà©à¨¬ ਬਰਾà¨à¨à¨¼
+Comment[pl]=PrzeglÄ
danie stron WWW
+Comment[pt]=Navegar na web
+Comment[pt_BR]=Navegar na web
+Comment[ro]=Navigare Internet
+Comment[ru]=Ðеб-бÑаÑзеÑ
+Comment[sk]=Prehliadať internet
+Comment[sl]=Brskaj po spletu
+Comment[sq]=Eksploro web-in
+Comment[sr]=ÐÑÐµÐ³Ð»ÐµÐ´Ð°Ñ Ð²ÐµÐ±
+Comment[sr at Latn]=Pregledaj veb
+Comment[sv]=Surfa på nätet
+Comment[ta]=வலà¯à®¯à®¿à®²à¯ à®à®²à®¾à®µà¯
+Comment[th]=à¹à¸à¹à¸à¸²à¸à¹à¸§à¹à¸à¸à¸£à¸²à¸§à¹à¸à¸à¸£à¹ Firefox
+Comment[tk]=Webi Ahtar
+Comment[tr]=Web'e Gözat
+Comment[uk]=ÐÑогÑама пеÑеглÑÐ´Ñ web-ÑÑоÑÑнок
+Comment[vi]=Duyá»t web
+Comment[wa]=Naivyî avå les waibes
+Comment[zh_CN]=æµè§ Web
+Comment[zh_TW]=ç覽網é
Exec=firefox %U
Icon=@FIREFOX_ICON@
+StartupNotify=false
Terminal=false
Type=Application
Categories=Application;Network;
-Encoding=UTF-8
+MimeType=text/html;text/xml;application/xhtml+xml;
diff -ruN --exclude=CVS /usr/HEAD/ports/www/firefox/files/moz_pis_S50cleanhome /junk/wk/www/firefox/files/moz_pis_S50cleanhome
--- /usr/HEAD/ports/www/firefox/files/moz_pis_S50cleanhome Thu Jan 1 01:00:00 1970
+++ /junk/wk/www/firefox/files/moz_pis_S50cleanhome Tue Jan 4 19:21:09 2005
@@ -0,0 +1,37 @@
+#!/bin/sh
+#
+
+# S50cleanhome
+# a script to polite ${HOME}/${MOZ_PIS_USER_DIR}
+
+# We run in our own subshell
+
+# First, verify protocol
+[ "$1" != "start" ] && exit 1
+[ -z "${MOZ_PIS_API}" -o ${MOZ_PIS_API} -ne 2 ] && exit 1
+[ -z "${MOZ_PIS_MOZBINDIR}" -o ! -d "${MOZ_PIS_MOZBINDIR}" ] && exit 1
+[ -z "${HOME}" -o ! -d "${HOME}" ] && exit 1
+[ -z "${MOZ_PIS_USER_DIR}" -o ! -d "${HOME}/${MOZ_PIS_USER_DIR}" ] && exit 1
+
+# Try to polite ${HOME}/${MOZ_PIS_USER_DIR}
+
+# This must be really needed?
+# rm -f "${$HOME}/${MOZ_PIS_USER_DIR}/pluginreg.dat"
+
+# Try to polite profile dirs
+if [ -f "${HOME}/${MOZ_PIS_USER_DIR}/profiles.ini" ]; then
+ sed -e '/Path=/! d' -e "s,Path=,${HOME}/${MOZ_PIS_USER_DIR}/," \
+ "${HOME}/${MOZ_PIS_USER_DIR}/profiles.ini" \
+ | while read dir
+ do
+ [ ! -d "${dir}" ] && continue
+ # at last, debian do this, we do for new builds
+ # rm -f "${dir}/XUL.mfast"
+ # make reclaculate compreg.dat, xpti.dat for new builds
+ # also, encripted resources must not survive (new keys)
+ [ "${dir}/compreg.dat" -ot "${MOZ_PIS_MOZBINDIR}/components.ini" ] &&
+ rm -f "${dir}/compatibility.ini" "${dir}/XUL.mfast" \
+ "${dir}/history.dat" "${dir}/formhistory.dat" \
+ "${dir}/signons.txt"
+ done
+fi
diff -ruN --exclude=CVS /usr/HEAD/ports/www/firefox/files/moz_pis_S90dsp.sh /junk/wk/www/firefox/files/moz_pis_S90dsp.sh
--- /usr/HEAD/ports/www/firefox/files/moz_pis_S90dsp.sh Thu Jan 1 01:00:00 1970
+++ /junk/wk/www/firefox/files/moz_pis_S90dsp.sh Tue Jan 4 00:06:23 2005
@@ -0,0 +1,33 @@
+#!/bin/sh
+#
+
+# S90dsp.sh
+# dsp aids for mozilla
+# WARN, this is sourced in the main mozilla.sh script. Be carefull
+
+# esd support seems to be built-in in mozilla now
+# support only arts
+
+if [ -x "${run_moz}" ]; then
+ case "${MOZILLA_DSP}" in
+ [Aa][Rr][Tt][Ss] | artsdsp)
+ MOZILLA_DSP="artsdsp"
+ ;;
+ [Nn][Oo][Nn][Ee])
+ MOZILLA_DSP=""
+ ;;
+ *) # auto
+ if [ -n "${KDE_FULL_SESSION}" ]; then
+ MOZILLA_DSP="artsdsp"
+ else
+ MOZILLA_DSP=""
+ fi
+ ;;
+ esac
+ [ -n "${MOZILLA_DSP}" ] && MOZILLA_DSP=`which "${MOZILLA_DSP}"` &&
+ run_moz="${MOZILLA_DSP} ${run_moz}"
+fi
+
+if [ -n "${debuggin}" ]; then
+ echo "dsp: ${run_moz}"
+fi
diff -ruN --exclude=CVS /usr/HEAD/ports/www/firefox/files/patch-browser_app_mozilla.in /junk/wk/www/firefox/files/patch-browser_app_mozilla.in
--- /usr/HEAD/ports/www/firefox/files/patch-browser_app_mozilla.in Wed Dec 29 04:25:23 2004
+++ /junk/wk/www/firefox/files/patch-browser_app_mozilla.in Tue Jan 4 16:44:11 2005
@@ -1,56 +1,496 @@
---- browser/app/mozilla.in.orig Tue Oct 26 05:26:11 2004
-+++ browser/app/mozilla.in Mon Dec 27 19:15:52 2004
-@@ -110,6 +110,7 @@
- # Check default compile-time libdir
- if [ -x "$moz_libdir/run-mozilla.sh" ]; then
- dist_bin="$moz_libdir"
-+ run_moz="$dist_bin/run-mozilla.sh"
- else
- echo "Cannot find mozilla runtime directory. Exiting."
+--- browser/app/mozilla.in.orig Tue Oct 26 11:26:11 2004
++++ browser/app/mozilla.in Tue Jan 4 16:38:44 2005
+@@ -16,64 +16,96 @@
+ # Reserved.
+ #
+
+-## $Id: mozilla.in,v 1.3.4.9 2004/10/26 09:26:11 bryner%brianryner.com Exp $
+-##
+-## Usage:
+-##
+-## $ mozilla [args]
+-##
+-## This script is meant to run the mozilla-bin binary from either
+-## mozilla/xpfe/bootstrap or mozilla/dist/bin.
+-##
+-## The script will setup all the environment voodoo needed to make
+-## the mozilla-bin binary to work.
+-##
+-
++# $from: mozilla.in,v 1.3.4.9 2004/10/26 09:26:11 bryner%brianryner.com Exp $
++# Usage:
++#
++# $ mozilla [args]
++#
++# The script will setup all the environment voodoo needed to make
++# the mozilla-bin binary to work.
++#
++
++#
++# MOZ_PIS, "Mozilla Plugable Init Scripts"
++# MOZ_PIS_ is the name space used
++# These variables and there meaning are specified in
++# mozilla/xpfe/bootstrap/init.d/README
+ moz_pis_startstop_scripts()
+ {
+- MOZ_USER_DIR="%MOZ_USER_DIR%"
+- # MOZ_PIS_ is the name space for "Mozilla Plugable Init Scripts"
+- # These variables and there meaning are specified in
+- # mozilla/xpfe/bootstrap/init.d/README
+- MOZ_PIS_API=2
+- MOZ_PIS_MOZBINDIR="${dist_bin}"
+- MOZ_PIS_SESSION_PID="$$"
+- MOZ_PIS_USER_DIR="${MOZ_USER_DIR}"
+- export MOZ_PIS_API MOZ_PIS_MOZBINDIR MOZ_PIS_SESSION_PID MOZ_PIS_USER_DIR
+-
+- case "${1}" in
+- "start")
+- for curr_pis in "${dist_bin}/init.d"/S* "${HOME}/${MOZ_USER_DIR}/init.d"/S* ; do
+- if [ -x "${curr_pis}" ] ; then
+- case "${curr_pis}" in
+- *.sh) . "${curr_pis}" ;;
+- *) "${curr_pis}" "start" ;;
+- esac
+- fi
+- done
+- ;;
+- "stop")
+- for curr_pis in "${HOME}/${MOZ_USER_DIR}/init.d"/K* "${dist_bin}/init.d"/K* ; do
+- if [ -x "${curr_pis}" ] ; then
+- case "${curr_pis}" in
+- *.sh) . "${curr_pis}" ;;
+- *) "${curr_pis}" "stop" ;;
+- esac
+- fi
+- done
+- ;;
+- *)
+- echo 1>&2 "$0: Internal error in moz_pis_startstop_scripts."
+- exit 1
+- ;;
+- esac
++ MOZ_PIS_API=2
++ MOZ_PIS_MOZBINDIR="${dist_bin}"
++ MOZ_PIS_SESSION_PID="$$"
++ MOZ_PIS_USER_DIR="${MOZ_USER_DIR}"
++ export MOZ_PIS_API MOZ_PIS_MOZBINDIR MOZ_PIS_SESSION_PID MOZ_PIS_USER_DIR
++
++ case "${1}" in
++ "start")
++ for curr_pis in "${MOZ_PIS_MOZBINDIR}/init.d"/S* \
++ "${HOME}/${MOZ_PIS_USER_DIR}/init.d"/S*; do
++ if [ -x "${curr_pis}" ]; then
++ case "${curr_pis}" in
++ *.sh)
++ . "${curr_pis}"
++ ;;
++ *)
++ ${curr_pis} "start"
++ ;;
++ esac
++ fi
++ done
++ ;;
++ "stop")
++ for curr_pis in "${MOZ_PIS_MOZBINDIR}/init.d"/K* \
++ "${HOME}/${MOZ_PIS_USER_DIR}/init.d"/K*; do
++ if [ -x "${curr_pis}" ]; then
++ case "${curr_pis}" in
++ *.sh)
++ . "${curr_pis}"
++ ;;
++ *)
++ ${curr_pis} "stop"
++ ;;
++ esac
++ fi
++ done
++ ;;
++ *)
++ echo "$0: Internal error in moz_pis_startstop_scripts." 1>&2
++ exit 1
++ ;;
++ esac
+ }
+
+-#uncomment for debugging
++# uncomment for debugging
+ #set -x
+
+-moz_libdir=%MOZAPPDIR%
+-MRE_HOME=%MREDIR%
++#
++# variables
++#
++#location="new-tab"
++#MOZILLA_UILOCALE="en-US"
++#MOZILLA_UIREGION="US"
++
++#
++# working definitions
++#
++MOZ_USER_DIR="%MOZ_USER_DIR%"
++moz_libdir="%MOZAPPDIR%"
++MRE_HOME="%MREDIR%"
++
++debugging= # set the debugging level
++use_openFile="yes" # use openFile() for file/dir
++here=`pwd`
++
++if [ ! -d "${MRE_HOME}" ]; then
++ # use moz_libdir as MRE_HOME
++ MRE_HOME="${moz_libdir}"
++fi
++export MRE_HOME
++
++if [ "$OSTYPE" = "beos" ]; then
++ mimeset -F "$MOZILLA_BIN"
++fi
+
+ # Use run-mozilla.sh in the current dir if it exists
+ # If not, then start resolving symlinks until we find run-mozilla.sh
+@@ -82,149 +114,223 @@
+ curdir=`dirname "$progname"`
+ progbase=`basename "$progname"`
+ run_moz="$curdir/run-mozilla.sh"
+-if test -x "$run_moz"; then
+- dist_bin="$curdir"
+- found=1
++if [ -x "$run_moz" ]; then
++ dist_bin="$curdir"
++ found=1
+ else
+- here=`/bin/pwd`
+- while [ -h "$progname" ]; do
+- bn=`basename "$progname"`
+- cd `dirname "$progname"`
+- progname=`/bin/ls -l "$bn" | sed -e 's/^.* -> //' `
+- if [ ! -x "$progname" ]; then
+- break
+- fi
+- curdir=`dirname "$progname"`
+- run_moz="$curdir/run-mozilla.sh"
+- if [ -x "$run_moz" ]; then
+- cd "$curdir"
+- dist_bin=`pwd`
+- run_moz="$dist_bin/run-mozilla.sh"
+- found=1
+- break
+- fi
+- done
+- cd "$here"
++ while [ -h "${progname}" ]; do
++ bn=`basename "${progname}"`
++ cd `dirname "${progname}"`
++ progname=`ls -l "${bn}" | sed -e 's/^.* -> //'`
++ if [ ! -x "$progname" ]; then
++ break
++ fi
++ curdir=`dirname "${progname}"`
++ run_moz="${curdir}/run-mozilla.sh"
++ if [ -x "${run_moz}" ]; then
++ cd "$curdir"
++ dist_bin=`pwd`
++ run_moz="${dist_bin}/run-mozilla.sh"
++ found=1
++ break
++ fi
++ done
++ cd "${here}"
+ fi
+ if [ $found = 0 ]; then
+- # Check default compile-time libdir
+- if [ -x "$moz_libdir/run-mozilla.sh" ]; then
+- dist_bin="$moz_libdir"
+- else
+- echo "Cannot find mozilla runtime directory. Exiting."
++ # Check default compile-time libdir
++ if [ -x "${moz_libdir}/run-mozilla.sh" ]; then
++ dist_bin="$moz_libdir"
++ run_moz="${dist_bin}/run-mozilla.sh"
++ else
++ echo "$0: Cannot find mozilla runtime directory. Exiting." 1>&2
++ exit 1
++ fi
++fi
++MOZILLA_BIN="${progbase}-bin"
++
++# test for binary apps in ${dist_bin}
++if [ -x "${dist_bin}/mozilla-xremote-client" ]; then
++ MOZ_CLIENT_PROGRAM="${dist_bin}/mozilla-xremote-client -a ${progbase}"
++elif [ -x "${dist_bin}/${progbase}-bin" ]; then
++ MOZ_CLIENT_PROGRAM="${MOZILLA_BIN} -remote -a ${progbase}"
++else
++ echo "$0: Cannot find mozilla binary executable. Exiting." 1>&2
++ exit 1
++fi
++if [ -x "${dist_bin}/${MOZILLA_BIN}" ]; then
++ MOZILLA_BIN="${dist_bin}/${progbase}-bin"
++else
++ echo "$0: Cannot find mozilla binary executable. Exiting." 1>&2
exit 1
-@@ -160,11 +161,11 @@
- _optLast="${i}"
- done #last arg
+- fi
+ fi
+
+-script_args=""
+-moreargs=""
+-debugging=0
+-MOZILLA_BIN="${progbase}-bin"
++# guest a default remote command
++_remote_cmd="xfeDoCommand(openBrowser)"
+-# The following is to check for a currently running instance.
+-# This is taken almost verbatim from the Mozilla RPM package's launch script.
+-MOZ_CLIENT_PROGRAM="$dist_bin/mozilla-xremote-client"
+-check_running() {
+- "${run_moz}" "$MOZ_CLIENT_PROGRAM" -a "${progbase}" 'ping()' 2>/dev/null >/dev/null
+- RETURN_VAL=$?
+- if [ $RETURN_VAL -eq 0 ]; then
+- echo 1
+- return 1
++# test for a running copy of firefox
++ALREADY_RUNNING= # null
++if [ -n "${DISPLAY}" ]; then
++ if [ -n "${debugging}" ]; then
++ echo "${run_moz} ${MOZ_CLIENT_PROGRAM} ping()"
++ ${run_moz} ${MOZ_CLIENT_PROGRAM} 'ping()' && ALREADY_RUNNING="yes"
+ else
+- echo 0
+- return 0
++ ${run_moz} ${MOZ_CLIENT_PROGRAM} 'ping()' >/dev/null 2>&1 &&
++ ALREADY_RUNNING="yes"
+ fi
+-}
+-
+-if [ "$OSTYPE" = "beos" ]; then
+- mimeset -F "$MOZILLA_BIN"
++elif [ -n "${debugging}" ]; then
++ echo "$0: WARN, no DISPLAY environment" 1>&2
+ fi
+
+-ALREADY_RUNNING=`check_running`
+-
+-################################################################ Parse Arguments
+-# If there's a command line argument but it doesn't begin with a -
+-# it's probably a url. Try to send it to a running instance.
+-_USE_EXIST=0
+-_optOne="$1"
+-case "${_optOne}" in
+- -*)
+- ;;
++#parse options
++script_args= # null
++moreargs= # null
++target= # null
++while [ $# -gt 0 ]
++do
++ if [ -n "${target}" ]; then
++ # well, this can't be the target if not last
++ moreargs="${moreargs} ${target}"
++ target= # null
++ fi
++ case "$1" in
++ -p | --pure | -pure)
++ MOZILLA_BIN="${MOZILLA_BIN}.pure"
++ shift
++ ;;
++ -g | --debug)
++ script_args="${script_args} -g"
++ debugging=1
++ shift
++ ;;
++ -d | --debugger)
++ if [ -n "$2" ]; then
++ script_args="${script_args} -d $2"
++ shift 2
++ else
++ "$0: ERROR, -d needs an argument. Exiting" 1>&2
++ exit 1
++ fi
++ ;;
++ -UILocale)
++ if [ -n "$2" ]; then
++ uilocale="$2"
++ shift 2
++ else
++ echo "$0: ERROR, -UILocale needs an argument. Exiting" 1>&2
++ exit 1
++ fi
++ ;;
++ -UIRegion)
++ if [ -n "$2" ]; then
++ uiregion="$2"
++ shift 2
++ else
++ echo "$0: ERROR, -UIRegion needs an argument. Exiting" 1>&2
++ exit 1
++ fi
++ ;;
++ -browser)
++ _remote_cmd="xfeDoCommand(openBrowser)"
++ moreargs="${moreargs} $1"
++ shift
++ ;;
++ -mail)
++ _remote_cmd="xfeDoCommand(openInbox)"
++ moreargs="${moreargs} $1"
++ shift
++ ;;
++ -compose)
++ _remote_cmd="xfeDoCommand(composeMessage)"
++ moreargs="${moreargs} $1"
++ shift
++ ;;
++ -chat | -edit | -webcal)
++ # don't use remote for this
++ ALREADY_RUNNING= # null
++ moreargs="${moreargs} $1"
++ shift
++ ;;
++ -*)
++ moreargs="${moreargs} $1"
++ shift
++ ;;
+ *)
+- _USE_EXIST=1
+- ;;
+-esac
+-
+-_optLast=
+-for i in "$@"; do
+- _optLast="${i}"
+-done #last arg
+-
-if [ `expr "${_optLast}" : '.*:/.*'` -eq 0 -a \( -f "${_optLast}" -o -d "${_optLast}" \) ]; then
-+if [ `expr X"${_optLast}" : 'X.*:/.*'` -eq 0 -a \( -f "${_optLast}" -o -d "${_optLast}" \) ]; then
- # Last argument seems to be a local file/directory
- # Check, if it is absolutely specified (ie. /home/foo/file vs. ./file)
- # If it is just "relatively" (./file) specified, make it absolutely
+- # Last argument seems to be a local file/directory
+- # Check, if it is absolutely specified (ie. /home/foo/file vs. ./file)
+- # If it is just "relatively" (./file) specified, make it absolutely
- [ `expr "${_optLast}" : '/.*'` -eq 0 ] && _optLast="file://`pwd`/${_optLast}"
-+ [ `expr -- "${_optLast}" : '/.*'` -eq 0 ] && _optLast="file://`pwd`/${_optLast}"
+-fi
+-################################################################ Parse Arguments
+-
+-########################################################################### Main
+-if [ $ALREADY_RUNNING -eq 1 ]; then
+- # There's an instance already running. Use it.
+- # Any command line args passed in?
+- if [ $# -gt 0 ]; then
+- # There were "some" command line args.
+- if [ ${_USE_EXIST} -eq 1 ]; then
+- # We should use an existing instance, as _USE_EXIST=$_USE_EXIST=-1
+- _remote_cmd="openURL(${_optLast})"
+- "${run_moz}" "$MOZ_CLIENT_PROGRAM" -a "${progbase}" "${_remote_cmd}"
+- unset _remote_cmd
+- exit $?
+- fi
++ target="$1"
++ shift
++ ;;
++ esac
++done
++
++# process target
++if [ -n "${target}" ]; then
++ if [ `expr "${target}" : '.*:.*'` -eq 0 ]; then
++ if [ `expr "${target}" : '/.*'` -eq 0 ]; then
++ target="${here}/${target}"
++ fi
++ if [ -r "${target}" -o -d "${target}" ]; then
++ [ -n "${use_openFile}" ] || target="file://${target}"
+ else
+- # No command line args. Open new window/tab
+- #exec "${run_moz}" "$MOZ_CLIENT_PROGRAM" -a "${progbase}" "xfeDoCommand(openBrowser)"
+- "${run_moz}" "$MOZ_CLIENT_PROGRAM" -a "${progbase}" "xfeDoCommand(openBrowser)"
+- exit $?
++ echo "$0: WARN, target: ${target} not an URI/file/dir" 1>&2
++ ALREADY_RUNNING= # null
+ fi
++ else
++ # an former URI, don't use openFile
++ use_openFile= # null
++ fi
fi
- ################################################################ Parse Arguments
+-# Default action - no running instance or _USE_EXIST (${_USE_EXIST}) ! -eq 1
+-########################################################################### Main
-@@ -207,12 +208,31 @@
- script_args="$script_args -d $2"
- shift 2
- ;;
-+ -UILocale)
-+ moreargs="$moreargs -UILocale $2"
-+ _done_locale="YES"
-+ shift 2
-+ ;;
-+ -UIRegion)
-+ if [ -n "${_done_locale}" ]; then
-+ moreargs="$moreargs -UIRegion $2"
-+ fi
-+ shift 2
-+ ;;
- *)
- moreargs="$moreargs \"$1\""
- shift 1
- ;;
- esac
- done
-+
-+if [ ! -n "${_done_locale}" -a -n "${MOZILLA_UILOCALE}" ]; then
-+ if [ -n "${MOZILLA_UIREGION}" ]; then
-+ moreargs="-UIRegion ${MOZILLA_UIREGION} $moreargs"
+-while [ $# -gt 0 ]
+-do
+- case "$1" in
+- -p | --pure | -pure)
+- MOZILLA_BIN="${MOZILLA_BIN}.pure"
+- shift
+- ;;
+- -g | --debug)
+- script_args="$script_args -g"
+- debugging=1
+- shift
+- ;;
+- -d | --debugger)
+- script_args="$script_args -d $2"
+- shift 2
+- ;;
+- *)
+- moreargs="$moreargs \"$1\""
+- shift 1
+- ;;
+- esac
+-done
++# try remote protocol if running
++if [ -n "${ALREADY_RUNNING}" ]; then
++ if [ -n "${target}" ]; then
++ if [ -n "${use_openFile}" ]; then
++ _remote_cmd="openFile(${target})"
++ elif [ -n "${location}" ]; then
++ _remote_cmd="openURL(${target},${location})"
++ else
++ _remote_cmd="openURL(${target})"
++ fi
++ fi
++ # FIXME problems with freedesktop StartupNotify
++ if [ -n "${debugging}" ]; then
++ echo "${run_moz} ${script_args} ${MOZ_CLIENT_PROGRAM} ${_remote_cmd}"
++ fi
++ ${run_moz} ${script_args} ${MOZ_CLIENT_PROGRAM} ${_remote_cmd} && exit 0
++fi
++
++# fallback to direct invocation
++
++# UILocale, UIRegion
++if [ -z "${uilocale}" -a -n "${MOZILLA_UILOCALE}" ]; then
++ uilocale="${MOZILLA_UILOCALE}"
++fi
++if [ -z "${uiregion}" -a -n "${MOZILLA_UIREGION}" ]; then
++ uiregion="${MOZILLA_UIREGION}"
++fi
++if [ -n "${uiregion}" -a -z "${uilocale}" ]; then
++ uilocale="en-US"
++fi
++if [ -n "${moz_uilocale}" ]; then
++ if [ -n "${moz_uiregion}" ]; then
++ moreargs="-UIRegion ${moz_uiregion} ${more_args}"
+ fi
-+ moreargs="-UILocale ${MOZILLA_UILOCALE} $moreargs"
++ moreargs="-UILocale ${moz_uilocale} ${more_args}"
+fi
-+unset _done_locale
- export MRE_HOME
- eval "set -- $moreargs"
+-export MRE_HOME
+-eval "set -- $moreargs"
++# real invocation
++if [ -n "${target}" ]; then
++ eval "set -- ${moreargs} \"${target}\""
++else
++ eval "set -- ${moreargs}"
++fi
+
+ ## Start addon scripts
+ moz_pis_startstop_scripts "start"
+
+-if [ $debugging = 1 ]
+-then
+- echo $dist_bin/run-mozilla.sh $script_args $dist_bin/$MOZILLA_BIN "$@"
++if [ -n "${debugging}" ]; then
++ echo "${run_moz} ${script_args} ${MOZILLA_BIN} $@"
+ fi
+-"$dist_bin/run-mozilla.sh" $script_args "$dist_bin/$MOZILLA_BIN" "$@"
++${run_moz} ${script_args} ${MOZILLA_BIN} "$@"
+ exitcode=$?
+
+ ## Stop addon scripts
diff -ruN --exclude=CVS /usr/HEAD/ports/www/firefox/files/patch-uriloader_exthandler_unix_nsGNOMERegistry.cpp /junk/wk/www/firefox/files/patch-uriloader_exthandler_unix_nsGNOMERegistry.cpp
--- /usr/HEAD/ports/www/firefox/files/patch-uriloader_exthandler_unix_nsGNOMERegistry.cpp Thu Jan 1 01:00:00 1970
+++ /junk/wk/www/firefox/files/patch-uriloader_exthandler_unix_nsGNOMERegistry.cpp Tue Jan 4 16:44:46 2005
@@ -0,0 +1,29 @@
+--- uriloader/exthandler/unix/nsGNOMERegistry.cpp.orig Fri Dec 24 04:30:00 2004
++++ uriloader/exthandler/unix/nsGNOMERegistry.cpp Fri Dec 24 04:34:05 2004
+@@ -143,7 +143,7 @@
+ PR_END_MACRO
+
+ // Attempt to open libgconf
+- gconfLib = LoadVersionedLibrary("gconf-2", ".4");
++ gconfLib = PR_LoadLibrary("libgconf-2.so");
+ ENSURE_LIB(gconfLib);
+
+ GET_LIB_FUNCTION(gconf, gconf_client_get_default);
+@@ -151,7 +151,7 @@
+ GET_LIB_FUNCTION(gconf, gconf_client_get_bool);
+
+ // Attempt to open libgnome
+- gnomeLib = LoadVersionedLibrary("gnome-2", ".0");
++ gnomeLib = PR_LoadLibrary("libgnome-2.so");
+ ENSURE_LIB(gnomeLib);
+
+ GET_LIB_FUNCTION(gnome, gnome_url_show);
+@@ -160,7 +160,7 @@
+ GET_LIB_FUNCTION(gnome, gnome_program_get);
+
+ // Attempt to open libgnomevfs
+- vfsLib = LoadVersionedLibrary("gnomevfs-2", ".0");
++ vfsLib = PR_LoadLibrary("libgnomevfs-2.so");
+ ENSURE_LIB(vfsLib);
+
+ GET_LIB_FUNCTION(vfs, gnome_vfs_mime_type_from_name);
diff -ruN --exclude=CVS /usr/HEAD/ports/www/firefox/pkg-deinstall.in /junk/wk/www/firefox/pkg-deinstall.in
--- /usr/HEAD/ports/www/firefox/pkg-deinstall.in Thu Oct 28 23:37:53 2004
+++ /junk/wk/www/firefox/pkg-deinstall.in Tue Jan 4 20:23:50 2005
@@ -9,10 +9,12 @@
umask 022
PATH=/bin:/usr/bin
+prefix="${PKG_PREFIX:-%%PREFIX%%}"
+
[ "x$1" = "x" ] && exit 1
[ "x$2" != "xDEINSTALL" ] && exit 0
-MOZDIR=%%MOZDIR%%
+MOZDIR="${prefix}/lib/%%MOZILLA%%"
rm -rf ${MOZDIR}/chrome/overlayinfo
rm -f ${MOZDIR}/chrome/*.rdf
@@ -20,6 +22,50 @@
rm -f ${MOZDIR}/components.ini
rm -f ${MOZDIR}/defaults.ini
rm -f ${MOZDIR}/components/*.dat
+# this make drop global installed extensions
rm -rf ${MOZDIR}/extensions
+# support for outer scripts
+extra_scripts="%%EXTRA_SCRIPTS%%"
+for script in ${extra_scripts} %%MOZILLA%% firefox firefox-config; do
+ rm -f "${prefix}/bin/${script}"
+done
+for mozdir in ${prefix}/lib/firefox* %%X11BASE%%/lib/firefox*; do
+ if [ -d "${mozdir}" -a "${mozdir}" != "${MOZDIR}" -a \
+ -x "${mozdir}/run-mozilla.sh" -a \
+ -x "${mozdir}/firefox" ]; then
+ for prog in %%MOZILLA%% firefox-config ${extra_scripts}; do
+ if [ -x "${mozdir}/${prog}" ]; then
+ install -m 555 ${mozdir}/${prog} ${prefix}/bin
+ fi
+ done
+ install -m 555 ${mozdir}/firefox ${prefix}/bin
+ fi
+done
+
+# support for shared browser-plugins directory (X11BASE)
+PLUGINDIR="%%X11BASE%%/lib/browser-plugins"
+# this is what we do now
+# But may be better use MOZLIB after tr / _
+KEEPFILE="${PLUGINDIR}/.%%MOZILLA%%.keep"
+# sure someone can work a clever way to do this
+rm -f "${KEEPFILE}"
+for file in ${PLUGINDIR}/.*.keep; do
+ if [ -f "${file}" ]; then
+ break
+ fi
+ rm -rf "${PLUGINDIR}"
+ break
+done
+
+# alternate way to register browser-plugins
+# PLUGINDIR="%%X11BASE%%/lib/browser-plugins"
+# if [ -r "${PLUGINDIR}/.keepme" ]; then
+# if grep -hqv "${MOZDIR}" "${KEEPFILE}" > "${KEEPFILE}-%%MOZILLA%%"; then
+# mv "${KEEPFILE}-%%MOZILLA%%" "${KEEPFILE}"
+# else
+# rm -rf "${PLUGINDIR}"
+# fi
+# fi
+
exit 0
diff -ruN --exclude=CVS /usr/HEAD/ports/www/firefox/pkg-install.in /junk/wk/www/firefox/pkg-install.in
--- /usr/HEAD/ports/www/firefox/pkg-install.in Sat Dec 4 10:47:27 2004
+++ /junk/wk/www/firefox/pkg-install.in Tue Jan 4 20:23:33 2005
@@ -9,13 +9,15 @@
umask 022
PATH=/bin:/usr/bin:/usr/local/bin
+prefix="${PKG_PERFIX:-%%PREFIX%%}"
+
[ "x$1" = "x" ] && exit 1
[ "x$2" != "xPOST-INSTALL" ] && exit 0
-MOZDIR=%%MOZDIR%%
-REGXPCOM=${MOZDIR}/regxpcom
-REGCHROME=${MOZDIR}/regchrome
-FIREFOX=${MOZDIR}/firefox-bin
+MOZDIR="${prefix}/lib/%%MOZILLA%%"
+REGXPCOM="${MOZDIR}/regxpcom"
+REGCHROME="${MOZDIR}/regchrome"
+FIREFOX="${MOZDIR}/firefox-bin"
echo "===> Building Chrome's registry..."
rm -rf ${MOZDIR}/chrome/overlayinfo
@@ -29,8 +31,43 @@
./run-mozilla.sh ${REGCHROME} || true
./run-mozilla.sh ${FIREFOX} -register > /dev/null 2>&1
-if [ ! -d %%PREFIX%%/lib/browser_plugins ]; then
- mkdir -p %%PREFIX%%/lib/browser_plugins
+# support for shared browser-plugins directory (X11BASE)
+PLUGINDIR="%%X11BASE%%/lib/browser-plugins"
+# this is what we do now
+# But may be better use MOZLIB after tr / _
+KEEPFILE="${PLUGINDIR}/.%%MOZILLA%%.keep"
+mkdir -p "${PLUGINDIR}"
+touch "${KEEPFILE}"
+
+# an alternate way to register browser-plugins
+# PLUGINDIR="%%X11BASE%%/lib/browser-plugins"
+# KEEPFILE="${PLUGINDIR}/.keepme"
+# mkdir -p "${PLUGINDIR}"
+# touch "${KEEPFILE}"
+# grep -hqv "${MOZDIR}" "${KEEPFILE}" > "${KEEPFILE}-%%MOZILLA%%"
+# echo "${MOZDIR}" >> "${KEEPFILE}-%%MOZILLA%%"
+# mv "${KEEPFILE}-%%MOZILLA%%" "${KEEPFILE}"
+
+# java plugin
+# FIXME, this must be done from plugins pkg_install
+jpidst="${PLUGINDIR}/libjavaplugin_oji.so"
+if [ ! -L "${jpidst}" ]; then
+ rm -f "${jpidst}"
+ jpilist="%%JPI_LIST%%"
+ for jpi in ${jpilist}; do
+ if [ -r "${jpi}" ]; then
+ ln -s "${jpi}" "${jpidst}"
+ break
+ fi
+ done
fi
+
+# install outer scripts
+extra_scripts="%%EXTRA_SCRIPTS%%"
+for script in %%MOZILLA%% firefox firefox-config ${extra_scripts}; do
+ if [ -x "${MOZDIR}/${script}" ]; then
+ install -m 555 ${MOZDIR}/${script} ${prefix}/bin
+ fi
+done
exit 0
--- firefox-1.0_8,1.patch ends here ---
More information about the freebsd-gnome
mailing list