#!/bin/sh

set -e

umask 022

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

unset MOZILLA_FIVE_HOME || :

## added /usr/lib : don't load your local library (e.g. OpenOffice's mozilla libraries)
LD_LIBRARY_PATH=/usr/lib:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH

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

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

# check old
rm -rf ${LIBDIR}/chrome/overlayinfo
ln -sf ${VARDIR}/chrome/overlayinfo ${LIBDIR}/chrome/overlayinfo
rm -rf ${LIBDIR}/chrome/installed-chrome.txt
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

# clean vardir
rm -rf ${VARDIR}/chrome/overlayinfo/*
rm -f  ${VARDIR}/chrome/*.rdf
rm -f  ${VARDIR}/components/*.dat
rm -f  ${VARDIR}/component.reg

# clean libdir
rm -f ${LIBDIR}/chrome/*.rdf
rm -f ${LIBDIR}/components/*.dat

# gen
export PATH=$LIBDIR:$PATH
regxpcom >/dev/null 2>/dev/null || true
regchrome >/dev/null 2>/dev/null || true

# 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/

# done
echo done.
