Die Installation von LINUX mit dem Slinky-Installer des RULE-Projektes läuft derzeit mit der US-Keymap des zur Installation verwendeten Kernels ab. Folgende Schritte sind nötig, um während der Installation eine andere Keymap zu verwenden:
Hinweis: alle Pfade sind relativ zum slinky-development-Verzeichnis. Am besten eine Shell-Variable zB. SLINKY=slinky-devel-directory anlegen.
cd $SLINKY/filesystem/sbin ln -s ../bin/busybox loadkmap
loadkeys map-file (suche de-latin1-nodeadkeys.map[.gz], dort befinden sich viele vordefinierte Mapfiles) busybox dumpkmap >neue_binary_kmapAuf diese Weise habe ich de.map und fr.map erzeugt.
echo "Loading keymaps" cd /etc/i18n ls | grep -n '.' echo "Enter number for language to select" echo -n "or RETURN for default us keymap" read num keymap=`ls | grep -n '.' | grep "^${num}:" | cut -d: -f2` if [ -r /etc/i18n/${keymap} ] then /sbin/loadkmap < /etc/i18n/${keymap} echo "keymap <${keymap}> loaded" | tee -a ${install_log} echo "You can try your keys now, continue with RETURN" read x else echo "Unknown keymap <${keymap}>, using default" | tee -a ${install_log} fi cd /
Erklärung: ls | grep -n '.' macht eine alphabetisch geordnete Liste aller Files in /etc/i18n und stellt jedem Namen eine laufende Nummer voran. Anhand dieser Zahl kann man die gewünschte Keymap wählen. Es sollte so funktionieren, dass der Code nicht von der Anzahl der Keymaps abhängig ist. (Wie ich jetzt aber sehe, muss mindestens ein mapfile vorhanden sein, damit das Script sinnvoll ist.)
Nun mit $SLINKY/makedisk.sh eine neue Boot-Disk erstellen und ausprobieren. Der Code ist eh zu Beginn der Installation, es wird da noch nichts am Zielsystem verändert.