#!/bin/sh

# Chromium launcher

# Authors:
#  Fabien Tassin <fta@sofaraway.org>
# License: GPLv2 or later

APPNAME=chromium
LIBDIR=/usr/lib/chromium
GDB=/usr/bin/gdb

# Let the Chromium aware MeeGo desktop environment.
# For system proxy setting integration.
GNOME_DESKTOP_SESSION_ID="this-is-deprecated"
export GNOME_DESKTOP_SESSION_ID

usage () {
  echo "$APPNAME [-h|--help] [-g|--debug] [options] [URL]"
  echo
  echo "        -g or --debug           Start within $GDB"
  echo "        -h or --help            This help screen"
}

# 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

# xdg-settings should in PATH
PATH=$PATH:$LIBDIR
export PATH

want_debug=0
while [ $# -gt 0 ]; do
  case "$1" in
    -h | --help | -help )
      usage
      exit 0 ;;
    -g | --debug )
      want_debug=1
      shift ;;
    -- ) # Stop option prcessing
      shift
      break ;;
    * )
      break ;;
  esac
done

# # Set plugin search path. Chromium will read mozilla's plugin 
# # search path. This is for platforms (handset, TV, etc..) where 
# # plugins are not copied/linked to the standard mozilla plugin
# # path due to reasons. PDF plugin is in the list though it is
# # not really supported by chromium on Linux.
# moz_plugin_path=$(find /usr/java/jre* \
#                   /usr/lib/flash-plugin \
#                   /opt/Adobe* /usr/Adobe* \
#                   -name "libnpjp2.so" -exec dirname {} \; -o \
#                   -name "libflashplayer.so" -exec dirname {} \; -o \
#                   -name "nppdf.so" -exec dirname {} \; 2>/dev/null | xargs echo)
# MOZ_PLUGIN_PATH=$MOZ_PLUGIN_PATH:${moz_plugin_path// /:}
# export MOZ_PLUGIN_PATH

# Setup the default profile if this is none
# Set the default theme as GTK+ with system window decoration
if [ ! -d ~/.config/chromium/Default ]; then
    mkdir -p ~/.config/chromium/Default
    cat <<EOF > ~/.config/chromium/Default/Preferences
{
   "browser": {
      "custom_chrome_frame": false
   },
   "extensions": {
      "theme": {
         "colors": {

         },
         "id": "",
         "images": {

         },
         "properties": {

         },
         "tints": {

         },
         "use_system": true
      }
   },
   "homepage": "http://meego.com/",
   "homepage_is_newtabpage": false,
   "session": {
      "restore_on_startup": 1
   },
   "webkit": {
      "webprefs": {
         "default_fixed_font_size": 13,
         "default_font_size": 16,
         "fixed_font_family": "Droid Sans Mono",
         "sansserif_font_family": "Droid Sans",
         "serif_font_family": "Droid Serif"
      }
   }
}
EOF
    # Set the default browser
    $LIBDIR/xdg-settings set default-web-browser chromium-browser.desktop
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 ${1+"$@"}" > $tmpfile
  echo "# Env:"
  echo "#     LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
  echo "$GDB $LIBDIR/$APPNAME -x $tmpfile"
  $GDB "$LIBDIR/$APPNAME" -x $tmpfile
  exit $?
else
#  exec $LIBDIR/$APPNAME "--start-maximized" "--no-first-run" "--enable-experimental-extension-apis" "$@"
  exec $LIBDIR/$APPNAME "--password-store=detect" "--enable-experimental-extension-apis" "--enable-plugins" "--enable-extensions" "--enable-user-scripts" "--enable-printing" "--enable-sync" "--auto-ssl-client-auth" "$@"
fi