Un jour en lançant mozilla depuis un shell, je me suis aperçu qu'il y
avait des erreurs, même si le programme semblait s'exécuter normalement.
Je me suis donc mis en tête de les corriger. Jusque là tout va bien mais
j'aimerais savoir si le script fonctionne sur d'autres configurations.
C'est pourquoi je le place ici -pas en P.J car je ne suis pas sûr que ce
soit accepté- avec suivi sur f.c.a.x11 vu que c'est une application
graphique :-). Merci d'avance de me dire s'il tourne chez vous.
ma config:
- Debian Etch
- java version 1.5.0_08
- mozilla 1.7.12
- kernel 2.6.16 recompilé
Mon fichier ~/.mozilla/.mozillarc:
# This file was generated by debconf automatically.
# And you can copy this file to ~/.mozillarc to override.
MOZILLA_DSP=esddsp
MOZILLA_LOCALE_AUTO=true
MOZILLA_OPENURL_TYPE=new-tab
le script mozilla-suite:
#!/bin/sh
# Modifie par Jack H.
#set -x
#
# The contents of this file are subject to the Netscape Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/NPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is Netscape
# Communications Corporation. Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
##
## Usage:
##
## $ mozilla
##
## This script is meant to run a mozilla program from the mozilla
## rpm installation.
##
## The script will setup all the environment voodoo needed to make
## mozilla work.
VERSION=suite
cmdname=`basename $0`
## don't leave any core files around
ulimit -c 0
##
## Variables
##
MOZ_DIST_BIN="/usr/lib/mozilla"
MOZ_PROGRAM="/usr/lib/mozilla/mozilla-bin"
MOZ_CLIENT_PROGRAM="/usr/lib/mozilla/mozilla-xremote-client -a mozilla"
##
## find /dev/dsp handler
##
if [ -f /etc/mozilla/mozillarc ]; then
. /etc/mozilla/mozillarc
fi
# override
# c'est un fichier pour mozilla, il va dans le dossier .mozilla
if [ -f $HOME/.mozilla/.mozillarc ]; then
. $HOME/.mozilla/.mozillarc
fi
# default
if [ -z "$MOZILLA_DSP" ]; then
MOZILLA_DSP="auto"
fi
if [ -z "$MOZILLA_LOCALE_AUTO" ]; then
MOZILLA_LOCALE_AUTO="true"
fi
if [ "$MOZILLA_DSP" = "auto" -a -e /dev/dsp ]; then
MOZILLA_DSP=""
P=`fuser /dev/dsp 2>&1 | sed -e 's#^/dev/dsp:##' `
if [ -n "$P" ]; then
if echo $P | xargs ps -p | grep esd >/dev/null 2>&1; then MOZILLA_DSP=esddsp;
elif echo $P | xargs ps -p | grep arts >/dev/null 2>&1; then MOZILLA_DSP=artsdsp;
elif echo $P | xargs ps -p | grep rplayd >/dev/null 2>&1; then MOZILLA_DSP=rplaydsp; fi
fi
elif [ "$MOZILLA_DSP" = "none" ];then
MOZILLA_DSP=""
fi
if type $MOZILLA_DSP > /dev/null 2>&1; then
# echo "Using $MOZILLA_DSP."
MOZ_PROGRAM="$MOZILLA_DSP $MOZ_PROGRAM"
fi
if [ -z "$MOZILLA_OPENURL_TYPE" ]; then
MOZILLA_OPENURL_TYPE=new-window
fi
##
## Set MOZILLA_FIVE_HOME
##
MOZILLA_FIVE_HOME="/usr/lib/mozilla"
export MOZILLA_FIVE_HOME
##
## Set LD_LIBRARY_PATH
##
if [ "$LD_LIBRARY_PATH" ]; then
LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib:/lib:$LD_LIBRARY_PATH
else
LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib:/lib
fi
export LD_LIBRARY_PATH
##
## Set FONTCONFIG_PATH for Xft/fontconfig
##
FONTCONFIG_PATH="/etc/fonts:${MOZILLA_FIVE_HOME}/res/Xft"
export FONTCONFIG_PATH
if [ -z "$XPSERVERLIST" ]; then
if [ -x /etc/init.d/xprint ]; then
XPSERVERLIST=$( /etc/init.d/xprint get_xpserverlist)
export XPSERVERLIST
# else
# echo -e "Warning: \$XPSERVERLIST not set and /etc/init.d/xprint not found;\nprinting will not work.\nPlease install the xprt-xprintorg package"
fi
fi
# Figure out if we need to ser LD_ASSUME_KERNEL for older versions of the JVM.
set_jvm_vars () {
if [ ! -L /usr/lib/mozilla/plugins/libjavaplugin_oji.so ]; then
return;
fi
if [ "$?" -ne "0" ]; then
JVM_LINK=/usr/lib/mozilla/plugins/${JVM_LINK}
fi
JVM_BASE=`basename $JVM_LINK`
JVM_DIR=`echo $JVM_LINK | sed -e s/$JVM_BASE//g`
JVM_COMMAND=$JVM_DIR/java
if [ ! -r $JVM_COMMAND ]; then
JVM_DIR=${JVM_DIR}../../../bin/
JVM_COMMAND=$JVM_DIR/java
# does the command exist?
if [ ! -r "$JVM_COMMAND" ]; then
return
fi
fi
# export this temporarily - it seems to work with old and new
# versions of the JVM.
#ca ne marche pas sur mon systeme--->on vire
#export LD_ASSUME_KERNEL=2.2.5
# get the version
JVM_VERSION=`$JVM_COMMAND -version 2>&1 | grep version | cut -f 3 -d " " | sed -e 's/\"//g'`
#unset LD_ASSUME_KERNEL
case "$JVM_VERSION" in
(1.3.0*)
# bad JVM
export LD_ASSUME_KERNEL=2.2.5
;;
esac
}
check_running () {
$MOZ_CLIENT_PROGRAM 'ping()' 2>/dev/null >/dev/null
RETURN_VAL=$?
if [ "$RETURN_VAL" -eq "2" ]; then
echo 0
return 0
else
echo 1
return 1
fi
}
open_mail () {
if [ "${ALREADY_RUNNING}" -eq "1" ]; then
opt=`echo $*| sed -e s/mailto:?/to=,/ -e s/body/attachment/ -e s/\&/,/`
exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openInbox,"$opt")" \
2>/dev/null >/dev/null
else
exec $MOZ_PROGRAM $LOCALE_ARGS $*
fi
}
open_compose () {
if [ "${ALREADY_RUNNING}" -eq "1" ]; then
opt="${*#*compose}"
exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(composeMessage,$opt)" \
2>/dev/null >/dev/null
else
exec $MOZ_PROGRAM $LOCALE_ARGS $*
fi
}
# OK, here's where all the real work gets done
# set our JVM vars
set_jvm_vars
# check to see if there's an already running instance or not
ALREADY_RUNNING=`check_running`
# get the locale that best suits to the $LANG variable
set_UILocale()
{
if [ -f /usr/lib/mozilla/chrome/$1.jar ] ; then
UILocale="-UILocale $1";
# echo selected UILocale: $1
else
unset UILocale;
fi
}
set_ContentLocale()
{
if [ -f /usr/lib/mozilla/chrome/$1.jar ] ; then
ContentLocale="-ContentLocale $1";
# echo selected ContentLocale: $1
else
unset ContentLocale;
fi
}
clean_xul()
{
# Clean up the XUL.mfasl unconditionally on launch, since we have the
# corner case of when firefox is running when upgraded. Need a
# better solution or upstream fix.
if [ -d "$HOME/.mozilla" ]; then
find $HOME/.mozilla -name XUL.mfasl -print \
| xargs --no-run-if-empty rm -f
fi
}
# If there is no command line argument at all then try to open a new
# window in an already running instance.
if [ "${ALREADY_RUNNING}" -eq "1" ] && [ -z "$1" ]; then
exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openBrowser)" 2>/dev/null >/dev/null
fi
# if there's no command line argument and there's not a running
# instance then just fire up a new copy of the browser
LOCALE_ARGS=""
if [ "$MOZILLA_LOCALE_AUTO" != "false" ]; then
get_locale
fi
if [ -z "$1" ]; then
clean_xul
exec $MOZ_PROGRAM $LOCALE_ARGS 2>/dev/null >/dev/null
fi
unset RETURN_VAL
# 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
opt="$1"
case "$opt" in
-mail)
open_mail ${1+"$@"}
;;
-compose)
open_compose ${1+"$@"}
;;
-*) ;;
*) USE_EXIST=1 ;;
esac
if [ "${USE_EXIST}" -eq "1" ] && [ "${ALREADY_RUNNING}" -eq "1" ]; then
# check to make sure that the command contains at least a :/ in it.
echo $opt | grep -e ':/' 2>/dev/null > /dev/null
RETURN_VAL=$?
if [ "$RETURN_VAL" -eq "1" ]; then
# if it doesn't begin with a '/' and it exists when the pwd is
# prepended to it then append the full path
echo $opt | grep -e '^/' 2>/dev/null > /dev/null
RETURN_VAL=$?
if [ "${RETURN_VAL}" -ne "0" ] && [ -e `pwd`/$opt ]; then
opt="`pwd`/$opt"
fi
exec $MOZ_CLIENT_PROGRAM "openurl($opt,$MOZILLA_OPENURL_TYPE)" 2>/dev/null >/dev/null
fi
# just pass it off if it looks like a url
exec $MOZ_CLIENT_PROGRAM "openurl($opt,$MOZILLA_OPENURL_TYPE)" 2>/dev/null >/dev/null
fi
clean_xul
exec $MOZ_PROGRAM $LOCALE_ARGS ${1+"$@"}
Désolé pour la longueur des lignes :-P
--
A+
Jack H.
"Oui je sais, mais je préfère le mettre au complet..."
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Encolpe Degoute
Bonjour,
Un jour en lançant mozilla depuis un shell, je me suis aperçu qu'il y avait des erreurs, même si le programme semblait s'exécuter normalement. Je me suis donc mis en tête de les corriger. Jusque là tout va bien mais j'aimerais savoir si le script fonctionne sur d'autres configurations. C'est pourquoi je le place ici -pas en P.J car je ne suis pas sûr que ce soit accepté- avec suivi sur f.c.a.x11 vu que c'est une application graphique :-).
fr.comp.infosystemes.www.navigateurs est le groupe désigné pour ce genre de chose... et à la rigueur fr.comp.os.unix pour ce qui conerne un script shell.
Suivi provisoire dans fr.comp.infosystemes.www.navigateurs
Merci d'avance de me dire s'il tourne chez vous.
Non, il creuse.
ma config: - Debian Etch - java version 1.5.0_08 - mozilla 1.7.12 - kernel 2.6.16 recompilé
Mon fichier ~/.mozilla/.mozillarc:
# This file was generated by debconf automatically. # And you can copy this file to ~/.mozillarc to override. MOZILLA_DSP=esddsp MOZILLA_LOCALE_AUTO=true MOZILLA_OPENURL_TYPE=new-tab
le script mozilla-suite:
#!/bin/sh # Modifie par Jack H. #set -x # # The contents of this file are subject to the Netscape Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/NPL/ # # Software distributed under the License is distributed on an "AS # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or # implied. See the License for the specific language governing # rights and limitations under the License. # # The Original Code is mozilla.org code. # # The Initial Developer of the Original Code is Netscape # Communications Corporation. Portions created by Netscape are # Copyright (C) 1998 Netscape Communications Corporation. All # Rights Reserved. # # Contributor(s): #
## ## Usage: ## ## $ mozilla ## ## This script is meant to run a mozilla program from the mozilla ## rpm installation. ## ## The script will setup all the environment voodoo needed to make ## mozilla work.
VERSION=suite
cmdname=`basename $0`
## don't leave any core files around ulimit -c 0
## ## Variables ## MOZ_DIST_BIN="/usr/lib/mozilla" MOZ_PROGRAM="/usr/lib/mozilla/mozilla-bin" MOZ_CLIENT_PROGRAM="/usr/lib/mozilla/mozilla-xremote-client -a mozilla"
## ## find /dev/dsp handler ## if [ -f /etc/mozilla/mozillarc ]; then . /etc/mozilla/mozillarc fi # override # c'est un fichier pour mozilla, il va dans le dossier .mozilla if [ -f $HOME/.mozilla/.mozillarc ]; then . $HOME/.mozilla/.mozillarc fi
# default if [ -z "$MOZILLA_DSP" ]; then MOZILLA_DSP="auto" fi if [ -z "$MOZILLA_LOCALE_AUTO" ]; then MOZILLA_LOCALE_AUTO="true" fi
if [ "$MOZILLA_DSP" = "auto" -a -e /dev/dsp ]; then MOZILLA_DSP="" P=`fuser /dev/dsp 2>&1 | sed -e 's#^/dev/dsp:##' ` if [ -n "$P" ]; then if echo $P | xargs ps -p | grep esd >/dev/null 2>&1; then MOZILLA_DSP=esddsp; elif echo $P | xargs ps -p | grep arts >/dev/null 2>&1; then MOZILLA_DSP=artsdsp; elif echo $P | xargs ps -p | grep rplayd >/dev/null 2>&1; then MOZILLA_DSP=rplaydsp; fi fi elif [ "$MOZILLA_DSP" = "none" ];then MOZILLA_DSP="" fi
if type $MOZILLA_DSP > /dev/null 2>&1; then # echo "Using $MOZILLA_DSP." MOZ_PROGRAM="$MOZILLA_DSP $MOZ_PROGRAM" fi
if [ -z "$MOZILLA_OPENURL_TYPE" ]; then MOZILLA_OPENURL_TYPE=new-window fi
## ## Set MOZILLA_FIVE_HOME ## MOZILLA_FIVE_HOME="/usr/lib/mozilla"
export MOZILLA_FIVE_HOME
## ## Set LD_LIBRARY_PATH ## if [ "$LD_LIBRARY_PATH" ]; then LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib:/lib:$LD_LIBRARY_PATH else LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib:/lib fi
export LD_LIBRARY_PATH
## ## Set FONTCONFIG_PATH for Xft/fontconfig ## FONTCONFIG_PATH="/etc/fonts:${MOZILLA_FIVE_HOME}/res/Xft" export FONTCONFIG_PATH
if [ -z "$XPSERVERLIST" ]; then if [ -x /etc/init.d/xprint ]; then XPSERVERLIST=$( /etc/init.d/xprint get_xpserverlist) export XPSERVERLIST # else # echo -e "Warning: $XPSERVERLIST not set and /etc/init.d/xprint not found;nprinting will not work.nPlease install the xprt-xprintorg package" fi fi
# Figure out if we need to ser LD_ASSUME_KERNEL for older versions of the JVM.
set_jvm_vars () {
if [ ! -L /usr/lib/mozilla/plugins/libjavaplugin_oji.so ]; then return; fi
if [ "$?" -ne "0" ]; then JVM_LINK=/usr/lib/mozilla/plugins/${JVM_LINK} fi
JVM_BASE=`basename $JVM_LINK` JVM_DIR=`echo $JVM_LINK | sed -e s/$JVM_BASE//g` JVM_COMMAND=$JVM_DIR/java if [ ! -r $JVM_COMMAND ]; then JVM_DIR=${JVM_DIR}../../../bin/ JVM_COMMAND=$JVM_DIR/java # does the command exist? if [ ! -r "$JVM_COMMAND" ]; then return fi fi
# export this temporarily - it seems to work with old and new # versions of the JVM. #ca ne marche pas sur mon systeme--->on vire #export LD_ASSUME_KERNEL=2.2.5
# get the version JVM_VERSION=`$JVM_COMMAND -version 2>&1 | grep version | cut -f 3 -d " " | sed -e 's/"//g'`
#unset LD_ASSUME_KERNEL
case "$JVM_VERSION" in (1.3.0*) # bad JVM export LD_ASSUME_KERNEL=2.2.5 ;; esac }
check_running () { $MOZ_CLIENT_PROGRAM 'ping()' 2>/dev/null >/dev/null RETURN_VAL=$? if [ "$RETURN_VAL" -eq "2" ]; then echo 0 return 0 else echo 1 return 1 fi }
open_mail () { if [ "${ALREADY_RUNNING}" -eq "1" ]; then opt=`echo $*| sed -e s/mailto:?/to=,/ -e s/body/attachment/ -e s/&/,/` exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openInbox,"$opt")" 2>/dev/null >/dev/null else exec $MOZ_PROGRAM $LOCALE_ARGS $* fi }
open_compose () { if [ "${ALREADY_RUNNING}" -eq "1" ]; then opt="${*#*compose}" exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(composeMessage,$opt)" 2>/dev/null >/dev/null else exec $MOZ_PROGRAM $LOCALE_ARGS $* fi }
# OK, here's where all the real work gets done
# set our JVM vars set_jvm_vars
# check to see if there's an already running instance or not ALREADY_RUNNING=`check_running`
# get the locale that best suits to the $LANG variable set_UILocale() { if [ -f /usr/lib/mozilla/chrome/$1.jar ] ; then UILocale="-UILocale $1"; # echo selected UILocale: $1 else unset UILocale; fi }
set_ContentLocale() { if [ -f /usr/lib/mozilla/chrome/$1.jar ] ; then ContentLocale="-ContentLocale $1"; # echo selected ContentLocale: $1 else unset ContentLocale; fi }
clean_xul() { # Clean up the XUL.mfasl unconditionally on launch, since we have the # corner case of when firefox is running when upgraded. Need a # better solution or upstream fix. if [ -d "$HOME/.mozilla" ]; then find $HOME/.mozilla -name XUL.mfasl -print | xargs --no-run-if-empty rm -f fi }
# If there is no command line argument at all then try to open a new # window in an already running instance. if [ "${ALREADY_RUNNING}" -eq "1" ] && [ -z "$1" ]; then exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openBrowser)" 2>/dev/null >/dev/null fi
# if there's no command line argument and there's not a running # instance then just fire up a new copy of the browser LOCALE_ARGS="" if [ "$MOZILLA_LOCALE_AUTO" != "false" ]; then get_locale fi
if [ -z "$1" ]; then clean_xul exec $MOZ_PROGRAM $LOCALE_ARGS 2>/dev/null >/dev/null fi
unset RETURN_VAL
# 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 opt="$1" case "$opt" in -mail) open_mail ${1+"$@"} ;; -compose) open_compose ${1+"$@"} ;; -*) ;; *) USE_EXIST=1 ;; esac
if [ "${USE_EXIST}" -eq "1" ] && [ "${ALREADY_RUNNING}" -eq "1" ]; then # check to make sure that the command contains at least a :/ in it. echo $opt | grep -e ':/' 2>/dev/null > /dev/null RETURN_VAL=$? if [ "$RETURN_VAL" -eq "1" ]; then # if it doesn't begin with a '/' and it exists when the pwd is # prepended to it then append the full path echo $opt | grep -e '^/' 2>/dev/null > /dev/null RETURN_VAL=$? if [ "${RETURN_VAL}" -ne "0" ] && [ -e `pwd`/$opt ]; then opt="`pwd`/$opt" fi exec $MOZ_CLIENT_PROGRAM "openurl($opt,$MOZILLA_OPENURL_TYPE)" 2>/dev/null >/dev/null fi # just pass it off if it looks like a url exec $MOZ_CLIENT_PROGRAM "openurl($opt,$MOZILLA_OPENURL_TYPE)" 2>/dev/null >/dev/null fi
clean_xul
exec $MOZ_PROGRAM $LOCALE_ARGS ${1+"$@"}
Désolé pour la longueur des lignes :-P
-- Encolpe DEGOUTE http://encolpe.degoute.free.fr/ Logiciels libres, hockey sur glace et autres activités cérébrales
Bonjour,
Un jour en lançant mozilla depuis un shell, je me suis aperçu qu'il y
avait des erreurs, même si le programme semblait s'exécuter normalement.
Je me suis donc mis en tête de les corriger. Jusque là tout va bien mais
j'aimerais savoir si le script fonctionne sur d'autres configurations.
C'est pourquoi je le place ici -pas en P.J car je ne suis pas sûr que ce
soit accepté- avec suivi sur f.c.a.x11 vu que c'est une application
graphique :-).
fr.comp.infosystemes.www.navigateurs est le groupe désigné pour ce genre
de chose... et à la rigueur fr.comp.os.unix pour ce qui conerne un
script shell.
Suivi provisoire dans fr.comp.infosystemes.www.navigateurs
Merci d'avance de me dire s'il tourne chez vous.
Non, il creuse.
ma config:
- Debian Etch
- java version 1.5.0_08
- mozilla 1.7.12
- kernel 2.6.16 recompilé
Mon fichier ~/.mozilla/.mozillarc:
# This file was generated by debconf automatically.
# And you can copy this file to ~/.mozillarc to override.
MOZILLA_DSP=esddsp
MOZILLA_LOCALE_AUTO=true
MOZILLA_OPENURL_TYPE=new-tab
le script mozilla-suite:
#!/bin/sh
# Modifie par Jack H.
#set -x
#
# The contents of this file are subject to the Netscape Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/NPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is Netscape
# Communications Corporation. Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
##
## Usage:
##
## $ mozilla
##
## This script is meant to run a mozilla program from the mozilla
## rpm installation.
##
## The script will setup all the environment voodoo needed to make
## mozilla work.
VERSION=suite
cmdname=`basename $0`
## don't leave any core files around
ulimit -c 0
##
## Variables
##
MOZ_DIST_BIN="/usr/lib/mozilla"
MOZ_PROGRAM="/usr/lib/mozilla/mozilla-bin"
MOZ_CLIENT_PROGRAM="/usr/lib/mozilla/mozilla-xremote-client -a mozilla"
##
## find /dev/dsp handler
##
if [ -f /etc/mozilla/mozillarc ]; then
. /etc/mozilla/mozillarc
fi
# override
# c'est un fichier pour mozilla, il va dans le dossier .mozilla
if [ -f $HOME/.mozilla/.mozillarc ]; then
. $HOME/.mozilla/.mozillarc
fi
# default
if [ -z "$MOZILLA_DSP" ]; then
MOZILLA_DSP="auto"
fi
if [ -z "$MOZILLA_LOCALE_AUTO" ]; then
MOZILLA_LOCALE_AUTO="true"
fi
if [ "$MOZILLA_DSP" = "auto" -a -e /dev/dsp ]; then
MOZILLA_DSP=""
P=`fuser /dev/dsp 2>&1 | sed -e 's#^/dev/dsp:##' `
if [ -n "$P" ]; then
if echo $P | xargs ps -p | grep esd >/dev/null 2>&1; then MOZILLA_DSP=esddsp;
elif echo $P | xargs ps -p | grep arts >/dev/null 2>&1; then MOZILLA_DSP=artsdsp;
elif echo $P | xargs ps -p | grep rplayd >/dev/null 2>&1; then MOZILLA_DSP=rplaydsp; fi
fi
elif [ "$MOZILLA_DSP" = "none" ];then
MOZILLA_DSP=""
fi
if type $MOZILLA_DSP > /dev/null 2>&1; then
# echo "Using $MOZILLA_DSP."
MOZ_PROGRAM="$MOZILLA_DSP $MOZ_PROGRAM"
fi
if [ -z "$MOZILLA_OPENURL_TYPE" ]; then
MOZILLA_OPENURL_TYPE=new-window
fi
##
## Set MOZILLA_FIVE_HOME
##
MOZILLA_FIVE_HOME="/usr/lib/mozilla"
export MOZILLA_FIVE_HOME
##
## Set LD_LIBRARY_PATH
##
if [ "$LD_LIBRARY_PATH" ]; then
LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib:/lib:$LD_LIBRARY_PATH
else
LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib:/lib
fi
export LD_LIBRARY_PATH
##
## Set FONTCONFIG_PATH for Xft/fontconfig
##
FONTCONFIG_PATH="/etc/fonts:${MOZILLA_FIVE_HOME}/res/Xft"
export FONTCONFIG_PATH
if [ -z "$XPSERVERLIST" ]; then
if [ -x /etc/init.d/xprint ]; then
XPSERVERLIST=$( /etc/init.d/xprint get_xpserverlist)
export XPSERVERLIST
# else
# echo -e "Warning: $XPSERVERLIST not set and /etc/init.d/xprint not found;nprinting will not work.nPlease install the xprt-xprintorg package"
fi
fi
# Figure out if we need to ser LD_ASSUME_KERNEL for older versions of the JVM.
set_jvm_vars () {
if [ ! -L /usr/lib/mozilla/plugins/libjavaplugin_oji.so ]; then
return;
fi
if [ "$?" -ne "0" ]; then
JVM_LINK=/usr/lib/mozilla/plugins/${JVM_LINK}
fi
JVM_BASE=`basename $JVM_LINK`
JVM_DIR=`echo $JVM_LINK | sed -e s/$JVM_BASE//g`
JVM_COMMAND=$JVM_DIR/java
if [ ! -r $JVM_COMMAND ]; then
JVM_DIR=${JVM_DIR}../../../bin/
JVM_COMMAND=$JVM_DIR/java
# does the command exist?
if [ ! -r "$JVM_COMMAND" ]; then
return
fi
fi
# export this temporarily - it seems to work with old and new
# versions of the JVM.
#ca ne marche pas sur mon systeme--->on vire
#export LD_ASSUME_KERNEL=2.2.5
# get the version
JVM_VERSION=`$JVM_COMMAND -version 2>&1 | grep version | cut -f 3 -d " " | sed -e 's/"//g'`
#unset LD_ASSUME_KERNEL
case "$JVM_VERSION" in
(1.3.0*)
# bad JVM
export LD_ASSUME_KERNEL=2.2.5
;;
esac
}
check_running () {
$MOZ_CLIENT_PROGRAM 'ping()' 2>/dev/null >/dev/null
RETURN_VAL=$?
if [ "$RETURN_VAL" -eq "2" ]; then
echo 0
return 0
else
echo 1
return 1
fi
}
open_mail () {
if [ "${ALREADY_RUNNING}" -eq "1" ]; then
opt=`echo $*| sed -e s/mailto:?/to=,/ -e s/body/attachment/ -e s/&/,/`
exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openInbox,"$opt")"
2>/dev/null >/dev/null
else
exec $MOZ_PROGRAM $LOCALE_ARGS $*
fi
}
open_compose () {
if [ "${ALREADY_RUNNING}" -eq "1" ]; then
opt="${*#*compose}"
exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(composeMessage,$opt)"
2>/dev/null >/dev/null
else
exec $MOZ_PROGRAM $LOCALE_ARGS $*
fi
}
# OK, here's where all the real work gets done
# set our JVM vars
set_jvm_vars
# check to see if there's an already running instance or not
ALREADY_RUNNING=`check_running`
# get the locale that best suits to the $LANG variable
set_UILocale()
{
if [ -f /usr/lib/mozilla/chrome/$1.jar ] ; then
UILocale="-UILocale $1";
# echo selected UILocale: $1
else
unset UILocale;
fi
}
set_ContentLocale()
{
if [ -f /usr/lib/mozilla/chrome/$1.jar ] ; then
ContentLocale="-ContentLocale $1";
# echo selected ContentLocale: $1
else
unset ContentLocale;
fi
}
clean_xul()
{
# Clean up the XUL.mfasl unconditionally on launch, since we have the
# corner case of when firefox is running when upgraded. Need a
# better solution or upstream fix.
if [ -d "$HOME/.mozilla" ]; then
find $HOME/.mozilla -name XUL.mfasl -print
| xargs --no-run-if-empty rm -f
fi
}
# If there is no command line argument at all then try to open a new
# window in an already running instance.
if [ "${ALREADY_RUNNING}" -eq "1" ] && [ -z "$1" ]; then
exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openBrowser)" 2>/dev/null >/dev/null
fi
# if there's no command line argument and there's not a running
# instance then just fire up a new copy of the browser
LOCALE_ARGS=""
if [ "$MOZILLA_LOCALE_AUTO" != "false" ]; then
get_locale
fi
if [ -z "$1" ]; then
clean_xul
exec $MOZ_PROGRAM $LOCALE_ARGS 2>/dev/null >/dev/null
fi
unset RETURN_VAL
# 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
opt="$1"
case "$opt" in
-mail)
open_mail ${1+"$@"}
;;
-compose)
open_compose ${1+"$@"}
;;
-*) ;;
*) USE_EXIST=1 ;;
esac
if [ "${USE_EXIST}" -eq "1" ] && [ "${ALREADY_RUNNING}" -eq "1" ]; then
# check to make sure that the command contains at least a :/ in it.
echo $opt | grep -e ':/' 2>/dev/null > /dev/null
RETURN_VAL=$?
if [ "$RETURN_VAL" -eq "1" ]; then
# if it doesn't begin with a '/' and it exists when the pwd is
# prepended to it then append the full path
echo $opt | grep -e '^/' 2>/dev/null > /dev/null
RETURN_VAL=$?
if [ "${RETURN_VAL}" -ne "0" ] && [ -e `pwd`/$opt ]; then
opt="`pwd`/$opt"
fi
exec $MOZ_CLIENT_PROGRAM "openurl($opt,$MOZILLA_OPENURL_TYPE)" 2>/dev/null >/dev/null
fi
# just pass it off if it looks like a url
exec $MOZ_CLIENT_PROGRAM "openurl($opt,$MOZILLA_OPENURL_TYPE)" 2>/dev/null >/dev/null
fi
clean_xul
exec $MOZ_PROGRAM $LOCALE_ARGS ${1+"$@"}
Désolé pour la longueur des lignes :-P
--
Encolpe DEGOUTE
http://encolpe.degoute.free.fr/
Logiciels libres, hockey sur glace et autres activités cérébrales
Un jour en lançant mozilla depuis un shell, je me suis aperçu qu'il y avait des erreurs, même si le programme semblait s'exécuter normalement. Je me suis donc mis en tête de les corriger. Jusque là tout va bien mais j'aimerais savoir si le script fonctionne sur d'autres configurations. C'est pourquoi je le place ici -pas en P.J car je ne suis pas sûr que ce soit accepté- avec suivi sur f.c.a.x11 vu que c'est une application graphique :-).
fr.comp.infosystemes.www.navigateurs est le groupe désigné pour ce genre de chose... et à la rigueur fr.comp.os.unix pour ce qui conerne un script shell.
Suivi provisoire dans fr.comp.infosystemes.www.navigateurs
Merci d'avance de me dire s'il tourne chez vous.
Non, il creuse.
ma config: - Debian Etch - java version 1.5.0_08 - mozilla 1.7.12 - kernel 2.6.16 recompilé
Mon fichier ~/.mozilla/.mozillarc:
# This file was generated by debconf automatically. # And you can copy this file to ~/.mozillarc to override. MOZILLA_DSP=esddsp MOZILLA_LOCALE_AUTO=true MOZILLA_OPENURL_TYPE=new-tab
le script mozilla-suite:
#!/bin/sh # Modifie par Jack H. #set -x # # The contents of this file are subject to the Netscape Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/NPL/ # # Software distributed under the License is distributed on an "AS # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or # implied. See the License for the specific language governing # rights and limitations under the License. # # The Original Code is mozilla.org code. # # The Initial Developer of the Original Code is Netscape # Communications Corporation. Portions created by Netscape are # Copyright (C) 1998 Netscape Communications Corporation. All # Rights Reserved. # # Contributor(s): #
## ## Usage: ## ## $ mozilla ## ## This script is meant to run a mozilla program from the mozilla ## rpm installation. ## ## The script will setup all the environment voodoo needed to make ## mozilla work.
VERSION=suite
cmdname=`basename $0`
## don't leave any core files around ulimit -c 0
## ## Variables ## MOZ_DIST_BIN="/usr/lib/mozilla" MOZ_PROGRAM="/usr/lib/mozilla/mozilla-bin" MOZ_CLIENT_PROGRAM="/usr/lib/mozilla/mozilla-xremote-client -a mozilla"
## ## find /dev/dsp handler ## if [ -f /etc/mozilla/mozillarc ]; then . /etc/mozilla/mozillarc fi # override # c'est un fichier pour mozilla, il va dans le dossier .mozilla if [ -f $HOME/.mozilla/.mozillarc ]; then . $HOME/.mozilla/.mozillarc fi
# default if [ -z "$MOZILLA_DSP" ]; then MOZILLA_DSP="auto" fi if [ -z "$MOZILLA_LOCALE_AUTO" ]; then MOZILLA_LOCALE_AUTO="true" fi
if [ "$MOZILLA_DSP" = "auto" -a -e /dev/dsp ]; then MOZILLA_DSP="" P=`fuser /dev/dsp 2>&1 | sed -e 's#^/dev/dsp:##' ` if [ -n "$P" ]; then if echo $P | xargs ps -p | grep esd >/dev/null 2>&1; then MOZILLA_DSP=esddsp; elif echo $P | xargs ps -p | grep arts >/dev/null 2>&1; then MOZILLA_DSP=artsdsp; elif echo $P | xargs ps -p | grep rplayd >/dev/null 2>&1; then MOZILLA_DSP=rplaydsp; fi fi elif [ "$MOZILLA_DSP" = "none" ];then MOZILLA_DSP="" fi
if type $MOZILLA_DSP > /dev/null 2>&1; then # echo "Using $MOZILLA_DSP." MOZ_PROGRAM="$MOZILLA_DSP $MOZ_PROGRAM" fi
if [ -z "$MOZILLA_OPENURL_TYPE" ]; then MOZILLA_OPENURL_TYPE=new-window fi
## ## Set MOZILLA_FIVE_HOME ## MOZILLA_FIVE_HOME="/usr/lib/mozilla"
export MOZILLA_FIVE_HOME
## ## Set LD_LIBRARY_PATH ## if [ "$LD_LIBRARY_PATH" ]; then LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib:/lib:$LD_LIBRARY_PATH else LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib:/lib fi
export LD_LIBRARY_PATH
## ## Set FONTCONFIG_PATH for Xft/fontconfig ## FONTCONFIG_PATH="/etc/fonts:${MOZILLA_FIVE_HOME}/res/Xft" export FONTCONFIG_PATH
if [ -z "$XPSERVERLIST" ]; then if [ -x /etc/init.d/xprint ]; then XPSERVERLIST=$( /etc/init.d/xprint get_xpserverlist) export XPSERVERLIST # else # echo -e "Warning: $XPSERVERLIST not set and /etc/init.d/xprint not found;nprinting will not work.nPlease install the xprt-xprintorg package" fi fi
# Figure out if we need to ser LD_ASSUME_KERNEL for older versions of the JVM.
set_jvm_vars () {
if [ ! -L /usr/lib/mozilla/plugins/libjavaplugin_oji.so ]; then return; fi
if [ "$?" -ne "0" ]; then JVM_LINK=/usr/lib/mozilla/plugins/${JVM_LINK} fi
JVM_BASE=`basename $JVM_LINK` JVM_DIR=`echo $JVM_LINK | sed -e s/$JVM_BASE//g` JVM_COMMAND=$JVM_DIR/java if [ ! -r $JVM_COMMAND ]; then JVM_DIR=${JVM_DIR}../../../bin/ JVM_COMMAND=$JVM_DIR/java # does the command exist? if [ ! -r "$JVM_COMMAND" ]; then return fi fi
# export this temporarily - it seems to work with old and new # versions of the JVM. #ca ne marche pas sur mon systeme--->on vire #export LD_ASSUME_KERNEL=2.2.5
# get the version JVM_VERSION=`$JVM_COMMAND -version 2>&1 | grep version | cut -f 3 -d " " | sed -e 's/"//g'`
#unset LD_ASSUME_KERNEL
case "$JVM_VERSION" in (1.3.0*) # bad JVM export LD_ASSUME_KERNEL=2.2.5 ;; esac }
check_running () { $MOZ_CLIENT_PROGRAM 'ping()' 2>/dev/null >/dev/null RETURN_VAL=$? if [ "$RETURN_VAL" -eq "2" ]; then echo 0 return 0 else echo 1 return 1 fi }
open_mail () { if [ "${ALREADY_RUNNING}" -eq "1" ]; then opt=`echo $*| sed -e s/mailto:?/to=,/ -e s/body/attachment/ -e s/&/,/` exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openInbox,"$opt")" 2>/dev/null >/dev/null else exec $MOZ_PROGRAM $LOCALE_ARGS $* fi }
open_compose () { if [ "${ALREADY_RUNNING}" -eq "1" ]; then opt="${*#*compose}" exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(composeMessage,$opt)" 2>/dev/null >/dev/null else exec $MOZ_PROGRAM $LOCALE_ARGS $* fi }
# OK, here's where all the real work gets done
# set our JVM vars set_jvm_vars
# check to see if there's an already running instance or not ALREADY_RUNNING=`check_running`
# get the locale that best suits to the $LANG variable set_UILocale() { if [ -f /usr/lib/mozilla/chrome/$1.jar ] ; then UILocale="-UILocale $1"; # echo selected UILocale: $1 else unset UILocale; fi }
set_ContentLocale() { if [ -f /usr/lib/mozilla/chrome/$1.jar ] ; then ContentLocale="-ContentLocale $1"; # echo selected ContentLocale: $1 else unset ContentLocale; fi }
clean_xul() { # Clean up the XUL.mfasl unconditionally on launch, since we have the # corner case of when firefox is running when upgraded. Need a # better solution or upstream fix. if [ -d "$HOME/.mozilla" ]; then find $HOME/.mozilla -name XUL.mfasl -print | xargs --no-run-if-empty rm -f fi }
# If there is no command line argument at all then try to open a new # window in an already running instance. if [ "${ALREADY_RUNNING}" -eq "1" ] && [ -z "$1" ]; then exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openBrowser)" 2>/dev/null >/dev/null fi
# if there's no command line argument and there's not a running # instance then just fire up a new copy of the browser LOCALE_ARGS="" if [ "$MOZILLA_LOCALE_AUTO" != "false" ]; then get_locale fi
if [ -z "$1" ]; then clean_xul exec $MOZ_PROGRAM $LOCALE_ARGS 2>/dev/null >/dev/null fi
unset RETURN_VAL
# 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 opt="$1" case "$opt" in -mail) open_mail ${1+"$@"} ;; -compose) open_compose ${1+"$@"} ;; -*) ;; *) USE_EXIST=1 ;; esac
if [ "${USE_EXIST}" -eq "1" ] && [ "${ALREADY_RUNNING}" -eq "1" ]; then # check to make sure that the command contains at least a :/ in it. echo $opt | grep -e ':/' 2>/dev/null > /dev/null RETURN_VAL=$? if [ "$RETURN_VAL" -eq "1" ]; then # if it doesn't begin with a '/' and it exists when the pwd is # prepended to it then append the full path echo $opt | grep -e '^/' 2>/dev/null > /dev/null RETURN_VAL=$? if [ "${RETURN_VAL}" -ne "0" ] && [ -e `pwd`/$opt ]; then opt="`pwd`/$opt" fi exec $MOZ_CLIENT_PROGRAM "openurl($opt,$MOZILLA_OPENURL_TYPE)" 2>/dev/null >/dev/null fi # just pass it off if it looks like a url exec $MOZ_CLIENT_PROGRAM "openurl($opt,$MOZILLA_OPENURL_TYPE)" 2>/dev/null >/dev/null fi
clean_xul
exec $MOZ_PROGRAM $LOCALE_ARGS ${1+"$@"}
Désolé pour la longueur des lignes :-P
-- Encolpe DEGOUTE http://encolpe.degoute.free.fr/ Logiciels libres, hockey sur glace et autres activités cérébrales