#!/bin/sh
# Heavily based on the Slackware 13.1 SlackBuild
# http://dev.chromium.org/getting-involved/dev-channel
# Packager Andrea Sciucca ( gohanz at infinito.it)
# Thanks to H.Hanson script.
# http://www.slacky.eu
#
# Required: gconf, mozilla-firefox, orbit2
#
#
# Exit on most errors
set -e




CWD=`pwd`
TMP=${TMP:-/tmp/txz}
NAME=google-chrome
PKG=$TMP/package/$NAME
ARCH=${ARCH:-x86_64} # i386 or x86_64
BUILD=3sl


# Just in case:
case "$ARCH" in
  i?86) DEBARCH="i386" ; LIBDIRSUFFIX="" ; ARCH=i386 ;;
  x86_64) DEBARCH="amd64" ; LIBDIRSUFFIX="64" ;;
esac


SOURCE=http://dl.google.com/linux/direct/google-chrome-beta_current'_'$DEBARCH.deb

if [ ! -e google-chrome-beta_current'_'$DEBARCH.deb ]; then
wget -c $SOURCE
fi

# Get the real version, thanks to Fred Richards.
VERSION=$(ar p google-chrome-beta_current'_'$DEBARCH.deb control.tar.gz | tar zxO ./control | grep Version | awk '{print $2}' | cut -d- -f1)



if [ ! -d $TMP ]; then
 mkdir -p $TMP
fi
if [ ! -d $PKG ]; then
 mkdir -p $PKG
fi

cd $TMP
ar -x $CWD/google-chrome-beta_current'_'$DEBARCH.deb

echo -e "\E[0;32m+--------------------------------+\E[0;0m"
echo -e "\E[0;32m| Start SlackBuild Google-Chrome |\E[0;0m"
echo -e "\E[0;32m+--------------------------------+\E[0;0m"

cd $PKG
tar xf $TMP/data.tar.lzma

chmod 0755 $PKG # Put this back.
rm -rf etc/ # The cron job is debian/ubuntu only.

mkdir -p $PKG/usr/doc/$NAME-$VERSION/SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/slack-desc > $PKG/usr/doc/$NAME-$VERSION/SlackBuild/slack-desc
cat $CWD/$NAME.SlackBuild > $PKG/usr/doc/$NAME-$VERSION/SlackBuild/$NAME.SlackBuild

# Installing menu voice
( mkdir -p $PKG/usr/share/applications
cd $PKG/usr/share/applications
ln -s /opt/google/chrome/google-chrome.desktop . )

# Installing icons directory
cd $PKG/opt/google/chrome
for res in 16 22 24 32 48 64 128 256 ;do
  dir=${PKG}/usr/share/icons/hicolor/${res}x${res}/apps
  mkdir -p ${dir}
  install -m0644 product_logo_${res}.png \
                 ${dir}/${NAME}.png || exit 1 
done


# Fix default mandir
mkdir -p $PKG/usr/man/man1
mv $PKG/usr/share/man/man1/* $PKG/usr/man/man1
rm -r $PKG/usr/share/man

gzip -9 $PKG/usr/man/*/*


cat << EOF >> $PKG/install/doinst.sh
( cd usr/lib${LIBDIRSUFFIX} ; rm -rf libnss3.so.1d )
( cd usr/lib${LIBDIRSUFFIX} ; ln -sf seamonkey/libnss3.so libnss3.so.1d )
( cd usr/lib${LIBDIRSUFFIX} ; rm -rf libnssutil3.so.1d )
( cd usr/lib${LIBDIRSUFFIX} ; ln -sf seamonkey/libnssutil3.so libnssutil3.so.1d )
( cd usr/lib${LIBDIRSUFFIX} ; rm -rf libsmime3.so.1d )
( cd usr/lib${LIBDIRSUFFIX} ; ln -sf seamonkey/libsmime3.so libsmime3.so.1d )
( cd usr/lib${LIBDIRSUFFIX} ; rm -rf libssl3.so.1d )
( cd usr/lib${LIBDIRSUFFIX} ; ln -sf seamonkey/libssl3.so libssl3.so.1d )
( cd usr/lib${LIBDIRSUFFIX} ; rm -rf libplds4.so.0d )
( cd usr/lib${LIBDIRSUFFIX} ; ln -sf seamonkey/libplds4.so libplds4.so.0d )
( cd usr/lib${LIBDIRSUFFIX} ; rm -rf libplc4.so.0d )
( cd usr/lib${LIBDIRSUFFIX} ; ln -sf seamonkey/libplc4.so libplc4.so.0d )
( cd usr/lib${LIBDIRSUFFIX} ; rm -rf libnspr4.so.0d )
( cd usr/lib${LIBDIRSUFFIX} ; ln -sf seamonkey/libnspr4.so libnspr4.so.0d )
chmod 4755 opt/google/chrome/chrome-sandbox
EOF

	
	echo "if [ -x /usr/bin/update-mime-database ]; then
  /usr/bin/update-mime-database /usr/share/mime &> /dev/null
fi" >> $PKG/install/doinst.sh
	echo "" >> $PKG/install/doinst.sh
	echo "if [ -x /usr/bin/update-desktop-database ]; then
  /usr/bin/update-desktop-database 1> /dev/null 2> /dev/null
fi" >> $PKG/install/doinst.sh
	echo "" >> $PKG/install/doinst.sh
	echo "if [ -x /usr/bin/gtk-update-icon-cache ]; then
  /usr/bin/gtk-update-icon-cache  -f -q /usr/share/icons/hicolor 1> /dev/null 2> /dev/null
fi" >> $PKG/install/doinst.sh
	echo "" >> $PKG/install/doinst.sh



cd $PKG
chown -R root:root $PKG
if [ -x "$(which requiredbuilder)" ]; then
ADD=$(ls /var/log/packages/ | sed -ne 's/\(seamonkey-solibs\)-\([^-]\+-[^-]\+-[^-]\+\)/\1 >= \2/p') \
requiredbuilder -v -y -s $CWD $PKG
fi
makepkg -l y -c n $CWD/$NAME-$VERSION-$ARCH-$BUILD.txz

if [ "$1" = "--cleanup" ]; then
 rm -rf $TMP
fi
