From 4269d82b0c45fa0193cf28b0bcacae574204b8fa Mon Sep 17 00:00:00 2001 From: Tobias Powalowski Date: Mon, 19 Nov 2007 18:39:23 +0100 Subject: [PATCH] ' added km script' --- scripts/km | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100755 scripts/km diff --git a/scripts/km b/scripts/km new file mode 100755 index 000000000..b3046d9cb --- /dev/null +++ b/scripts/km @@ -0,0 +1,66 @@ +#!/bin/sh +# $Id: km,v 1.6 2007/09/23 08:23:54 tpowa Exp $ + +ANSWER="/tmp/.km" +PATH=$PATH:/tmp/bin:/tmp/usr/bin:/tmp/sbin:/tmp/usr/sbin + +BASEDIR="/usr/share/kbd" + +domenu() +{ + menutype=$1 ; shift + text=$1 ; shift + height=$1 ; shift + width=$1 ; shift + mheight=$1 ; shift + + dialog --cancel-label "Skip" --$menutype "$text" $height $width $mheight $* +} + +if [ ! -d $BASEDIR/keymaps ]; then + echo "Cannot load keymaps, as none were found in $BASEDIR/keymaps" >&2 + exit 1 +else + echo "Scanning for keymaps..." + KEYMAPS= + for i in `find $BASEDIR/keymaps -follow -name "*.gz" | sed 's|^.*/||g' | sort`; do + KEYMAPS="$KEYMAPS $i -" + done + domenu menu "Select A Keymap" 22 60 16 $KEYMAPS 2>$ANSWER + keymap=`cat $ANSWER` + echo $keymap > /tmp/.keymap +fi + +if [ ! -d $BASEDIR/consolefonts ]; then + echo "Cannot load consolefonts, as none were found in $BASEDIR/consolefonts" >&2 +else + echo "Scanning for fonts..." + FONTS= + # skip .cp.gz and partialfonts files for now see bug #6112, #6111 + for i in `find $BASEDIR/consolefonts -maxdepth 1 ! -name '*.cp.gz' -name "*.gz" | sed 's|^.*/||g' | sort`; do + FONTS="$FONTS $i -" + done + domenu menu "Select A Console Font" 22 60 16 $FONTS 2>$ANSWER + font=`cat $ANSWER` + echo $font > /tmp/.font +fi + +if [ "$keymap" ]; then + echo "Loading keymap: $keymap" + loadkeys -q $BASEDIR/keymaps/$keymap +fi + +if [ "$font" ]; then + echo "Loading font: $font" + for i in `seq 1 4`; do + if [ -d /dev/vc ]; then + setfont $BASEDIR/consolefonts/$font -C /dev/vc/${i} + else + setfont $BASEDIR/consolefonts/$font -C /dev/tty${i} + fi + done +fi + +clear +exit 0 +