#!/sbin/runscript
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

depend() {
	need localmount
	need keymaps    # sets up terminal encoding scheme
	after hotplug
}

start() {
	if is_uml_sys || is_xenU_sys ; then
		ebegin "Setting user font"
		eend 0
		return 0
	elif [[ -z ${CONSOLEFONT} ]] ; then
		ebegin "Using the default console font"
		eend 0
		return 0
	fi

	local x=
	local param=
	local sf_param=
	local retval=1

	# Get additional parameters
	if [[ -n ${CONSOLETRANSLATION} ]] ; then
		param="-m ${CONSOLETRANSLATION}"
	fi

	# Set the console font
	local errmsg=""
	ebegin "Setting user font"
	if [[ -x /bin/setfont ]] ; then
		# We patched setfont to have --tty support ...
		if [[ -n $(setfont --help 2>&1 | grep -e '--tty') || \
		      -n $(setfont --help 2>&1 | grep -e '-C') ]]
		then
			if [[ -n $(setfont --help 2>&1 | grep -e '--tty') ]] ; then
				sf_param="--tty="
			else
				sf_param="-C "
			fi
			local ttydev=
			[[ -d /dev/vc ]] \
				&& ttydev=/dev/vc/ \
				|| ttydev=/dev/tty

			for x in $(seq 1 "${RC_TTY_NUMBER}") ; do
				/bin/setfont ${CONSOLEFONT} ${param} \
					${sf_param}/${ttydev}${x} > /dev/null
				retval=$?
			done
		else
			/bin/setfont ${CONSOLEFONT} ${param} > /dev/null
			retval=$?
		fi
		errmsg="Failed to set user font"
	else
		retval=1
		errmsg="/bin/setfont not found"
	fi
	eend ${retval} "${errmsg}"
}


# vim:ts=4
