|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
#!/bin/bash
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
#
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# Use of this source code is governed by a BSD-style license that can be
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# found in the LICENSE file.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# Let the wrapped binary know that it has been run through the wrapper.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
export CHROME_WRAPPER="`readlink -f "$0"`"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
HERE="`dirname "$CHROME_WRAPPER"`"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# We include some xdg utilities next to the binary, and we want to prefer them
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# over the system versions when we know the system versions are very old. We
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# detect whether the system xdg utilities are sufficiently new to be likely to
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# work for us by looking for xdg-settings. If we find it, we leave $PATH alone,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# so that the system xdg utilities (including any distro patches) will be used.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
if ! which xdg-settings &> /dev/null; then
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# Old xdg utilities. Prepend $HERE to $PATH to use ours instead.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
export PATH="$HERE:$PATH"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# Use system xdg utilities. But first create mimeapps.list if it doesn't
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# exist; some systems have bugs in xdg-mime that make it fail without it.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
xdg_app_dir="${XDG_DATA_HOME:-$HOME/.local/share/applications}"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
mkdir -p "$xdg_app_dir"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
[ -f "$xdg_app_dir/mimeapps.list" ] || touch "$xdg_app_dir/mimeapps.list"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
fi
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# Always use our versions of ffmpeg libs.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# This also makes RPMs find the compatibly-named library symlinks.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
if [[ -n "$LD_LIBRARY_PATH" ]]; then
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
LD_LIBRARY_PATH="$HERE:$HERE/lib:$LD_LIBRARY_PATH"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
LD_LIBRARY_PATH="$HERE:$HERE/lib"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
fi
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
export LD_LIBRARY_PATH
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
export CHROME_VERSION_EXTRA="Built from source for @@BUILD_TARGET@@"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
# We don't want bug-buddy intercepting our crashes. http://crbug.com/24120
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
export GNOME_DISABLE_CRASH_DIALOG=SET_BY_GOOGLE_CHROME
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
693308c |
# Allow users to override command-line options and prefer user defined
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
693308c |
# CHROMIUM_USER_FLAGS from env over system wide CHROMIUM_FLAGS
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
693308c |
[[ -f /etc/chromium/chromium.conf ]] && . /etc/chromium/chromium.conf
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
693308c |
CHROMIUM_FLAGS=${CHROMIUM_USER_FLAGS:-$CHROMIUM_FLAGS}
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
693308c |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
CHROMIUM_DISTRO_FLAGS=" --enable-plugins \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
--enable-extensions \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
--enable-user-scripts \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
--enable-printing \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
278c627 |
--enable-gpu-rasterization \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
--enable-sync \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
--auto-ssl-client-auth @@EXTRA_FLAGS@@"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
f66ad85 |
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
81c4d30 |
# Sanitize std{in,out,err} because they'll be shared with untrusted child
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
81c4d30 |
# processes (http://crbug.com/376567).
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
81c4d30 |
exec < /dev/null
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
81c4d30 |
exec > >(exec cat)
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
81c4d30 |
exec 2> >(exec cat >&2)
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
81c4d30 |
|
|
![](https://seccdn.libravatar.org/avatar/238a9a2d5b52f1b4d56b0c72d18e7b3c311a81ac7a0546894037bc6d82828b5c?s=16&d=retro) |
693308c |
exec -a "$0" "$HERE/@@CHROMIUM_BROWSER_CHANNEL@@" $CHROMIUM_FLAGS $CHROMIUM_DISTRO_FLAGS "$@"
|