]> git.pld-linux.org Git - packages/firefox.git/blob - mozilla-firefox.sh
- update to 3.0.3 (fixes problem with saved passwords)
[packages/firefox.git] / mozilla-firefox.sh
1 #!/bin/sh
2 # based on script by (c) vip at linux.pl, wolf at pld-linux.org
3
4 LIBDIR="@LIBDIR@/mozilla-firefox"
5
6 MOZARGS=
7 MOZLOCALE="$(/usr/bin/locale | grep "^LC_MESSAGES=" | \
8                 sed -e "s|LC_MESSAGES=||g" -e "s|\"||g" )"
9 for MOZLANG in $(echo $LANGUAGE | tr ":" " ") $MOZLOCALE; do
10         eval MOZLANG="$(echo $MOZLANG | sed -e "s|_\([^.]*\).*|-\1|g")"
11
12         if [ -f $LIBDIR/chrome/$MOZLANG.jar ]; then
13                 MOZARGS="-UILocale $MOZLANG"
14                 break
15         fi
16 done
17
18 if [ -z "$MOZARGS" ]; then
19         # try harder
20         for MOZLANG in $(echo $LANGUAGE | tr ":" " ") $MOZLOCALE; do
21                 eval MOZLANG="$(echo $MOZLANG | sed -e "s|_.*||g")"
22
23                 LANGFILE=$(echo $LIBDIR/chrome/${MOZLANG}*.jar \
24                                 | sed 's/\s.*//g' )
25                 if [ -f "$LANGFILE" ]; then
26                         MOZLANG=$(basename "$LANGFILE" | sed 's/\.jar//')
27                         MOZARGS="-UILocale $MOZLANG"
28                         break
29                 fi
30         done
31 fi
32
33 # compreg.dat and/or chrome.rdf will screw things up if it's from an
34 # older version.  http://bugs.gentoo.org/show_bug.cgi?id=63999
35 for f in ~/{.,.mozilla/}firefox/*/{compreg.dat,chrome.rdf,XUL.mfasl}; do
36         if [[ -f ${f} && ${f} -ot /usr/bin/mozilla-firefox ]]; then
37                 echo "Removing ${f} leftover from older firefox"
38                 rm -f "${f}"
39         fi
40 done
41
42 if [ -n "$MOZARGS" ]; then
43         FIREFOX="$LIBDIR/firefox $MOZARGS"
44 else
45         FIREFOX="$LIBDIR/firefox"
46 fi
47
48 if [ "$1" == "-remote" ]; then
49         exec $FIREFOX "$@"
50 else
51         PING=`$FIREFOX -remote 'ping()' 2>&1 >/dev/null`
52         if [ -n "$PING" ]; then
53                 if [ -f "`pwd`/$1" ]; then
54                         exec $FIREFOX "file://`pwd`/$1"
55                 else
56                         exec $FIREFOX "$@"
57                 fi
58         else
59                 if [ -z "$1" ]; then
60                         exec $FIREFOX -remote 'xfeDoCommand(openBrowser)'
61                 elif [ "$1" == "-mail" ]; then
62                         exec $FIREFOX -remote 'xfeDoCommand(openInbox)'
63                 elif [ "$1" == "-compose" ]; then
64                         exec $FIREFOX -remote 'xfeDoCommand(composeMessage)'
65                 else
66                         if [ -f "`pwd`/$1" ]; then
67                                 URL="file://`pwd`/$1"
68                         else
69                                 URL="$1"
70                         fi
71                         grep browser.tabs.opentabfor.middleclick ~/.mozilla/firefox/*/prefs.js | grep false > /dev/null
72                         if [ $? -ne 0 ]; then
73                                 exec $FIREFOX -new-tab "$URL"
74                         else
75                                 exec $FIREFOX -new-window "$URL"
76                         fi
77                 fi
78         fi
79 fi
This page took 0.048366 seconds and 3 git commands to generate.