#!/bin/bash
#
# __copy1__
# __copy2__
#
# used to setup defaults for gnome desktop
#
libdir=__LIB__
gdir="/desktop/gnome"

GROUP=`getent passwd $LOGNAME | cut -d':' -f4`

# (FUNCTIONS)


installfile()
{
	local source="$1"
	local target="$2"
	local dir=`dirname "$target"`
	local mdir=
	local path=

	[ -f "$source" ] || {
		echo " error, source file '$source' not found"
		return 1
	}
	[ -f "$target" ] || {
		for mdir in `echo $dir | tr '/' ' '`
		do
			path="$path/$mdir"
			[ -d "$path" ] || {
				echo " creating dir '$path'"
				mkdir $path			|| return $?
				chown -R $LOGNAME:$GROUP $path	|| return $?
			}
		done
		echo " installing '$target'"
		cp -a "$source" "$target"	|| return $?
		chown $LOGNAME:$GROUP "$target"	|| return $?
	}
	return 0
}


gset()
{
	gconftool-2 --set "$@"
}


# (MAIN)

# sanity checks
#
for dir in $HOME/.gconf $HOME/.gconf/desktop
do
	[ -d $dir ] || {
		mkdir $dir
		chown $LOGNAME:$GROUP $dir
	}
done

# keyboard setup
#
#	layouts: usa, italiana, svizzera, svizzera francese
#
gset $gdir/peripherals/keyboard/kbd/layouts --type list --list-type string \
	"[us,it,ch,ch	fr]"
#
# 	options: toggle con doppio alt, toggle con alt+shift
#
gset $gdir/peripherals/keyboard/kbd/options --type list --list-type string \
	"[grp	grp:alts_toggle,grp	grp:alt_shift_toggle]"

exit 0
