Adding debian version 2.0~a1-1.
[live-boot-grml.git] / scripts / live-bottom / 19keyboard
1 #!/bin/sh
2
3 #set -e
4
5 # initramfs-tools header
6
7 PREREQ=""
8
9 prereqs()
10 {
11         echo "${PREREQ}"
12 }
13
14 case "${1}" in
15         prereqs)
16                 prereqs
17                 exit 0
18                 ;;
19 esac
20
21 # live-boot header
22
23 if [ -n "${NOCONSOLEKEYBOARD}" ]
24 then
25         exit 0
26 fi
27
28 . /scripts/live-functions
29
30 log_begin_msg "Setting up console keyboard"
31
32 # live-boot script
33
34 kbd=
35 cslayout=
36 csvariant=
37 csmodel=
38
39 # commandline
40 if [ -n "${KBD}" ]
41 then
42         kbd="${KBD}"
43 else
44         kbd=us
45 fi
46
47 really_export kbd
48
49 if [ -n "${KLAYOUT}" ]
50 then
51         cslayout="${KLAYOUT}"
52 fi
53
54 if [ -n "${KVARIANT}" ]
55 then
56         csvariant="${KVARIANT}"
57 fi
58
59 if [ -n "${KMODEL}" ]
60 then
61         csmodel="${KMODEL}"
62 fi
63
64 if [ -x /root/bin/setupcon ]
65 then
66         if [ -f /root/etc/default/keyboard ]
67         then
68                 # squeeze
69                 KEYBOARD_FILE="/etc/default/keyboard"
70         elif [ -f /root/etc/default/console-setup ]
71         then
72                 # lenny
73                 KEYBOARD_FILE="/etc/default/console-setup"
74         fi
75
76         if [ -n "/root${KEYBOARD_FILE}" ]
77         then
78                 if [ "${cslayout}" ]
79                 then
80                         chroot /root sed -i "s/^XKBLAYOUT=.*/XKBLAYOUT=\"${cslayout}\"/" \
81                         ${KEYBOARD_FILE}
82
83                         if [ "${csvariant}" ]
84                         then
85                                 chroot /root sed -i "s/^XKBVARIANT=.*/XKBVARIANT=\"${csvariant}\"/" \
86                                 ${KEYBOARD_FILE}
87                         else
88                                 live-preseed /root console-setup/variantcode '' false
89                         fi
90
91                         if [ "${csmodel}" ]
92                         then
93                                 chroot /root sed -i "s/^XKBMODEL=.*/XKBMODEL=\"${csmodel}\"/" \
94                                 ${KEYBOARD_FILE}
95                         else
96                                 live-preseed /root console-setup/modelcode '' false
97                         fi
98                 else
99                         live-preseed /root console-setup/layoutcode '' false
100                         live-preseed /root console-setup/variantcode '' false
101                         live-preseed /root console-setup/modelcode '' false
102                 fi
103
104                 live-preseed /root console-setup/optionscode '' false
105                 live-preseed /root console-setup/codesetcode '' false
106
107                 if [ -f /root/etc/init.d/usplash ]
108                 then
109                         sed -i 's/CONSOLE_SCREEN=$/CONSOLE_SCREEN=setupcon/; t END; b; : END; n; b END' /root/etc/init.d/usplash
110                 elif [ -f /root/etc/init/usplash.conf ]
111                 then
112                         sed -i '/^post-stop script/a\
113     setupcon' /root/etc/init/usplash.conf
114                 fi
115         fi
116 elif [ -e /root/usr/sbin/install-keymap ]
117 then
118         chroot /root /usr/sbin/install-keymap ${kbd}
119         live-preseed /root debian-installer/keymap "${kbd}"
120         live-preseed /root kbd-chooser/method "${kbd}"
121 fi
122
123 log_end_msg