#!/sbin/runscript
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-src/rc-scripts/init.d/consolefont,v 1.26 2004/10/21 19:05:52 vapier Exp $

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

start() {
	if is_uml_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'`" -o \
		     -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
