1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
#!/bin/sh
# Chromium launcher
# Authors:
# Fabien Tassin <fta@sofaraway.org>
# License: GPLv2 or later
APPNAME=chromium-browser
LIBDIR=/usr/lib/chromium-browser
GDB=/usr/bin/gdb
BUILD_DIST="@BUILD_DIST@"
usage () {
echo "$APPNAME [-h|--help] [-g|--debug] [--temp-profile] [options] [URL]"
echo
echo " -g or --debug Start within $GDB"
echo " -h or --help This help screen"
echo " --temp-profile Start with a new and temporary profile"
echo
echo " Other supported options are:"
MANWIDTH=80 man chromium-browser | sed -e '1,/OPTIONS/d; /ENVIRONMENT/,$d'
echo " See 'man chromium-browser' for more details"
}
if [ -f /etc/$APPNAME/default ] ; then
. /etc/$APPNAME/default
fi
# Prefer user defined CHROMIUM_USER_FLAGS (fron env) over system
# default CHROMIUM_FLAGS (from /etc/$APPNAME/default)
CHROMIUM_FLAGS=${CHROMIUM_USER_FLAGS:-"$CHROMIUM_FLAGS"}
# FFmpeg needs to know where its libs are located
if [ "Z$LD_LIBRARY_PATH" != Z ] ; then
LD_LIBRARY_PATH=$LIBDIR:$LD_LIBRARY_PATH
else
LD_LIBRARY_PATH=$LIBDIR
fi
export LD_LIBRARY_PATH
# For the Default Browser detection to work, we need to give access
# to xdg-settings if it's not present on the system (ensures that the system
# xdg-utils is recent enough). Also set CHROME_WRAPPER in case xdg-settings is
# not able to do anything useful
if [ ! -e /usr/bin/xdg-settings ] ; then
export PATH="$LIBDIR:$PATH"
fi
export CHROME_WRAPPER="`readlink -f "$0"`"
export CHROME_DESKTOP=$APPNAME.desktop
# lsb_release is slow so try to source the static file /etc/lsb-release
# instead, and fallback to lsb_release if we didn't get the information we need
if [ -e /etc/lsb-release ] ; then
. /etc/lsb-release
fi
DIST=${DISTRIB_ID:-"`lsb_release -si`"}
RELEASE=${DISTRIB_RELEASE:-"`lsb_release -sr`"}
# Set CHROME_VERSION_EXTRA visible in the About dialog and in about:version
if [ "$DIST $RELEASE" = "$BUILD_DIST" ] ; then
export CHROME_VERSION_EXTRA="$DIST $RELEASE"
else
export CHROME_VERSION_EXTRA="Built on $BUILD_DIST, running on $DIST $RELEASE"
fi
want_debug=0
want_temp_profile=0
while [ $# -gt 0 ]; do
case "$1" in
-h | --help | -help )
usage
exit 0 ;;
-g | --debug )
want_debug=1
shift ;;
--temp-profile )
want_temp_profile=1
shift ;;
-- ) # Stop option prcessing
shift
break ;;
* )
break ;;
esac
done
if [ $want_temp_profile -eq 1 ] ; then
TEMP_PROFILE=`mktemp -d`
CHROMIUM_FLAGS="$CHROMIUM_FLAGS --user-data-dir=$TEMP_PROFILE"
fi
if [ $want_debug -eq 1 ] ; then
if [ ! -x $GDB ] ; then
echo "Sorry, can't find usable $GDB. Please install it."
exit 1
fi
tmpfile=`mktemp /tmp/chromiumargs.XXXXXX` || { echo "Cannot create temporary file" >&2; exit 1; }
trap " [ -f \"$tmpfile\" ] && /bin/rm -f -- \"$tmpfile\"" 0 1 2 3 13 15
echo "set args $CHROMIUM_FLAGS ${1+"$@"}" > $tmpfile
echo "# Env:"
echo "# LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
echo "# PATH=$PATH"
echo "# GTK_PATH=$GTK_PATH"
echo "# CHROMIUM_USER_FLAGS=$CHROMIUM_USER_FLAGS"
echo "# CHROMIUM_FLAGS=$CHROMIUM_FLAGS"
echo "$GDB $LIBDIR/$APPNAME -x $tmpfile"
$GDB "$LIBDIR/$APPNAME" -x $tmpfile
if [ $want_temp_profile -eq 1 ] ; then
rm -rf $TEMP_PROFILE
fi
exit $?
else
if [ $want_temp_profile -eq 0 ] ; then
exec $LIBDIR/$APPNAME $CHROMIUM_FLAGS "$@"
else
# we can't exec here as we need to clean-up the temporary profile
$LIBDIR/$APPNAME $CHROMIUM_FLAGS "$@"
rm -rf $TEMP_PROFILE
fi
fi
|