#!/bin/sh

set -e

umask 022

echo -n "Updating mozilla chrome registry..."

unset MOZILLA_FIVE_HOME || :

# PATH
export PATH=/usr/lib/mozilla:$PATH

# added /usr/lib : don't load your local library
if [ $LD_LIBRARY_PATH ]
then
       LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib:${LD_LIBRARY_PATH}
else
       LD_LIBRARY_PATH=/usr/lib/mozilla-firefox:/usr/lib
fi

# fake home
FAKEHOME=$(mktemp -d /tmp/mozilla-browser-pkg.XXXXXX)
HOME=${FAKEHOME}
export HOME

/sbin/ldconfig

VARDIR=/var/lib/mozilla
LIBDIR=/usr/lib/mozilla
DATADIR=${VARDIR}/chrome.d

# cleaning VARDIR
rm -fr ${VARDIR}/chrome ${VARDIR}/components

# cleaning LIBDIR
rm -rf ${LIBDIR}/chrome/overlayinfo
rm -rf ${LIBDIR}/chrome/installed-chrome.txt
rm -f  ${LIBDIR}/chrome/*.rdf
rm -f  ${LIBDIR}/components/*.dat

# create VARDIR
install -d ${VARDIR}/chrome/overlayinfo
install -d ${VARDIR}/components

# create symlinks to LIBDIR
ln -sf ${VARDIR}/chrome/overlayinfo ${LIBDIR}/chrome/overlayinfo
ln -sf ${VARDIR}/chrome/installed-chrome.txt ${LIBDIR}/chrome/

# gen installed-chrome.txt
TMPFILE=`tempfile`
for f in `echo ${DATADIR}/* | sort`; do
    cat $f >> ${TMPFILE}
done

mv ${TMPFILE} ${VARDIR}/chrome/installed-chrome.txt
chmod 0644 ${VARDIR}/chrome/installed-chrome.txt

# gen
regxpcom >/dev/null  || echo "E: regxpcom was exited: $?"
regchrome >/dev/null || echo "E: regchrome was exited: $?"

# move and link
mv ${LIBDIR}/components/*.dat ${VARDIR}/components/ || true
ln -fs ${VARDIR}/components/*.dat ${LIBDIR}/components/ 

mv ${LIBDIR}/chrome/*.rdf ${VARDIR}/chrome/ || true
ln -fs ${VARDIR}/chrome/*.rdf ${LIBDIR}/chrome/

rm -fr ${FAKEHOME}

touch ${LIBDIR}/chrome/user-skins.rdf
touch ${LIBDIR}/chrome/user-locales.rdf

# done
echo done.
