#!/bin/sh
#
# GLib's GSettings XML schema files.
#
# Arguments:	$ACTION = [run/targets]
#		$TARGET = [post-install/pre-remove]
#		$PKGNAME
#		$VERSION
#		$UPDATE = [yes/no]
#
ACTION="$1"
TARGET="$2"
PKGNAME="$3"
VERSION="$4"
UPDATE="$5"

# The glib-compile-schemas binary program.
GSCHEMASCOMP="usr/bin/glib-compile-schemas"

# Where .schemas files go.
GLIB_SCHEMAS_DIR="usr/share/glib-2.0/schemas"

case "$ACTION" in
targets)
	echo "post-install post-remove pre-remove"
	;;
run)
	if [ ! -x "$GSCHEMASCOMP" ]; then
		exit 0
	fi

	case "$TARGET" in
	post-*)
		[ ! -d ${GLIB_SCHEMAS_DIR} ] && exit 0
		# Compile all GSettings schema files.
		echo -n "Refreshing GSettings database from "
		echo -n "${GLIB_SCHEMAS_DIR}... "
		${GSCHEMASCOMP} ${GLIB_SCHEMAS_DIR}
		if [ $? -eq 0 ]; then
			echo "done."
		else
			echo "failed!"
		fi
		;;
	pre-remove)
		if [ "${PKGNAME}" = "glib" ]; then
			rm -f ${GLIB_SCHEMAS_DIR}/*.compiled
			echo "Removed GSettings database file."
		fi
		;;
	esac
	;;
*)
	exit 1
	;;
esac

exit 0