source: chapter06/kbd.xml@ 2fa5f26

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since 2fa5f26 was 2fa5f26, checked in by Ken Moffat <ken@…>, 12 years ago

kbd-1.15.3 : another attempt at fixing it properly, tested in Pacific/Pago_Pago (and also /Kiritimati) with a little allowance for future TZs later than Pago_Pago.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9882 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 14.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../general.ent">
5 %general-entities;
6]>
7
8<!-- FIXME: upstream git has been persuaded by SuSe to build resizecons on x86_64,
9so the sed will need attention if that change is not removed before the next release -->
10
11<sect1 id="ch-system-kbd" role="wrap">
12 <?dbhtml filename="kbd.html"?>
13
14 <sect1info condition="script">
15 <productname>kbd</productname>
16 <productnumber>&kbd-version;</productnumber>
17 <address>&kbd-url;</address>
18 </sect1info>
19
20 <title>Kbd-&kbd-version;</title>
21
22 <indexterm zone="ch-system-kbd">
23 <primary sortas="a-Kbd">Kbd</primary>
24 </indexterm>
25
26 <sect2 role="package">
27 <title/>
28
29 <para>The Kbd package contains key-table files, console fonts, and keyboard
30 utilities.</para>
31
32 <segmentedlist>
33 <segtitle>&buildtime;</segtitle>
34 <segtitle>&diskspace;</segtitle>
35
36 <seglistitem>
37 <seg>&kbd-ch6-sbu;</seg>
38 <seg>&kbd-ch6-du;</seg>
39 </seglistitem>
40 </segmentedlist>
41
42 </sect2>
43
44 <sect2 role="installation">
45 <title>Installation of Kbd</title>
46
47 <para>The behaviour of <command>loadkeys</command> when run without a
48 filename was broken in this release. The following patch fixes this:</para>
49
50<screen><userinput remap="pre">patch -Np1 -i ../&kbd-fixes-patch;</userinput></screen>
51
52 <para>The behaviour of the Backspace and Delete keys is not consistent
53 across the keymaps in the Kbd package. The following patch fixes this
54 issue for i386 keymaps:</para>
55
56<screen><userinput remap="pre">patch -Np1 -i ../&kbd-backspace-patch;</userinput></screen>
57
58 <para>After patching, the Backspace key generates the character with code 127,
59 and the Delete key generates a well-known escape sequence.</para>
60
61 <para>Fix a bug in the Spanish message translations which prevents kbd from
62 building with gettext-&gettext-version;:</para>
63
64<screen><userinput remap="pre">sed -i '/guardado\ el/s/\(^.*en\ %\)\(.*\)/\14\$\2/' po/es.po</userinput></screen>
65
66 <para>Remove the redundant <command>resizecons</command> program (32-bit x86
67 only, needs the defunct svgalib, which predates linux-2.6 and is incompatible
68 with modern KMS, to provide the video mode files - for normal use
69 <command>setfont</command> sizes the console appropriately) and its manpage.</para>
70
71 <para>The shipped version of <filename>configure.ac</filename> is newer than
72 <filename>aclocal.m4</filename>, so autotools will be run by <command>make</command>
73 which will overwrite the change to <filename>configure</filename>. Alter the date
74 and time of <filename>configure.ac</filename> - this uses the system timezone, so we
75 pick a time that is sufficiently old in all timezones.</para>
76
77<screen><userinput remap="pre">sed -i 's/\(RESIZECONS_PROGS=\)yes/\1no/' configure &amp;&amp;
78sed -i 's/resizecons.8 //' man/man8/Makefile.in &amp;&amp;
79touch -d '2011-05-07 08:30' configure.ac</userinput></screen>
80
81 <para>Prepare Kbd for compilation:</para>
82
83<screen><userinput remap="configure">./configure --prefix=/usr --datadir=/lib/kbd</userinput></screen>
84
85 <variablelist>
86 <title>The meaning of the configure options:</title>
87
88 <varlistentry>
89 <term><parameter>--datadir=/lib/kbd</parameter></term>
90 <listitem>
91 <para>This option puts keyboard layout data in a directory that will
92 always be on the root partition instead of the default <filename
93 class="directory">/usr/share/kbd</filename>.</para>
94 </listitem>
95 </varlistentry>
96
97 </variablelist>
98
99 <para>Compile the package:</para>
100
101<screen><userinput remap="make">make</userinput></screen>
102
103 <para>This package does not come with a test suite.</para>
104
105 <para>Install the package:</para>
106
107<screen><userinput remap="install">make install</userinput></screen>
108
109 <note>
110 <para>For some languages (e.g., Belarusian) the Kbd package doesn't
111 provide a useful keymap where the stock <quote>by</quote> keymap assumes
112 the ISO-8859-5 encoding, and the CP1251 keymap is normally used. Users of
113 such languages have to download working keymaps separately.</para>
114 </note>
115
116 <para>Some of the scripts in the LFS-Bootscripts package depend on
117 <command>kbd_mode</command>, <command>loadkeys</command>,
118 <command>openvt</command>, and
119 <command>setfont</command>. As <filename class="directory">/usr</filename>
120 may not be available during the early stages of booting, those binaries
121 need to be on the root partition:</para>
122
123<screen><userinput remap="install">mv -v /usr/bin/{kbd_mode,loadkeys,openvt,setfont} /bin</userinput></screen>
124
125 <para>If desired, install the documentation:</para>
126
127<screen><userinput remap="install">mkdir -v /usr/share/doc/kbd-&kbd-version;
128cp -R -v doc/* \
129 /usr/share/doc/kbd-&kbd-version;</userinput></screen>
130
131 </sect2>
132
133 <sect2 id="contents-kbd" role="content">
134 <title>Contents of Kbd</title>
135
136 <segmentedlist>
137 <segtitle>Installed programs</segtitle>
138 <segtitle>Installed directory</segtitle>
139
140 <seglistitem>
141 <seg>chvt, deallocvt, dumpkeys, fgconsole, getkeycodes, kbd_mode,
142 kbdrate, loadkeys, loadunimap,
143 mapscrn, openvt, psfaddtable (link to psfxtable), psfgettable (link to
144 psfxtable), psfstriptable (link to psfxtable), psfxtable, <!--resizecons,-->
145 setfont, setkeycodes, setleds, setmetamode,
146 showconsolefont, showkey, unicode_start, and unicode_stop</seg>
147 <seg>/lib/kbd</seg>
148 </seglistitem>
149 </segmentedlist>
150
151 <variablelist>
152 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
153 <?dbfo list-presentation="list"?>
154 <?dbhtml list-presentation="table"?>
155
156 <varlistentry id="chvt">
157 <term><command>chvt</command></term>
158 <listitem>
159 <para>Changes the foreground virtual terminal</para>
160 <indexterm zone="ch-system-kbd chvt">
161 <primary sortas="b-chvt">chvt</primary>
162 </indexterm>
163 </listitem>
164 </varlistentry>
165
166 <varlistentry id="deallocvt">
167 <term><command>deallocvt</command></term>
168 <listitem>
169 <para>Deallocates unused virtual terminals</para>
170 <indexterm zone="ch-system-kbd deallocvt">
171 <primary sortas="b-deallocvt">deallocvt</primary>
172 </indexterm>
173 </listitem>
174 </varlistentry>
175
176 <varlistentry id="dumpkeys">
177 <term><command>dumpkeys</command></term>
178 <listitem>
179 <para>Dumps the keyboard translation tables</para>
180 <indexterm zone="ch-system-kbd dumpkeys">
181 <primary sortas="b-dumpkeys">dumpkeys</primary>
182 </indexterm>
183 </listitem>
184 </varlistentry>
185
186 <varlistentry id="fgconsole">
187 <term><command>fgconsole</command></term>
188 <listitem>
189 <para>Prints the number of the active virtual terminal</para>
190 <indexterm zone="ch-system-kbd fgconsole">
191 <primary sortas="b-fgconsole">fgconsole</primary>
192 </indexterm>
193 </listitem>
194 </varlistentry>
195
196 <varlistentry id="getkeycodes">
197 <term><command>getkeycodes</command></term>
198 <listitem>
199 <para>Prints the kernel scancode-to-keycode mapping table</para>
200 <indexterm zone="ch-system-kbd getkeycodes">
201 <primary sortas="b-getkeycodes">getkeycodes</primary>
202 </indexterm>
203 </listitem>
204 </varlistentry>
205
206 <varlistentry id="kbd_mode">
207 <term><command>kbd_mode</command></term>
208 <listitem>
209 <para>Reports or sets the keyboard mode</para>
210 <indexterm zone="ch-system-kbd kbd_mode">
211 <primary sortas="b-kbd_mode">kbd_mode</primary>
212 </indexterm>
213 </listitem>
214 </varlistentry>
215
216 <varlistentry id="kbdrate">
217 <term><command>kbdrate</command></term>
218 <listitem>
219 <para>Sets the keyboard repeat and delay rates</para>
220 <indexterm zone="ch-system-kbd kbdrate">
221 <primary sortas="b-kbdrate">kbdrate</primary>
222 </indexterm>
223 </listitem>
224 </varlistentry>
225
226 <varlistentry id="loadkeys">
227 <term><command>loadkeys</command></term>
228 <listitem>
229 <para>Loads the keyboard translation tables</para>
230 <indexterm zone="ch-system-kbd loadkeys">
231 <primary sortas="b-loadkeys">loadkeys</primary>
232 </indexterm>
233 </listitem>
234 </varlistentry>
235
236 <varlistentry id="loadunimap">
237 <term><command>loadunimap</command></term>
238 <listitem>
239 <para>Loads the kernel unicode-to-font mapping table</para>
240 <indexterm zone="ch-system-kbd loadunimap">
241 <primary sortas="b-loadunimap">loadunimap</primary>
242 </indexterm>
243 </listitem>
244 </varlistentry>
245
246 <varlistentry id="mapscrn">
247 <term><command>mapscrn</command></term>
248 <listitem>
249 <para>An obsolete program that used to load a user-defined output
250 character mapping table into the console driver; this is now done
251 by <command>setfont</command></para>
252 <indexterm zone="ch-system-kbd mapscrn">
253 <primary sortas="b-mapscrn">mapscrn</primary>
254 </indexterm>
255 </listitem>
256 </varlistentry>
257
258 <varlistentry id="openvt">
259 <term><command>openvt</command></term>
260 <listitem>
261 <para>Starts a program on a new virtual terminal (VT)</para>
262 <indexterm zone="ch-system-kbd openvt">
263 <primary sortas="b-openvt">openvt</primary>
264 </indexterm>
265 </listitem>
266 </varlistentry>
267
268 <varlistentry id="psfaddtable">
269 <term><command>psfaddtable</command></term>
270 <listitem>
271 <para>A link to <command>psfxtable</command></para>
272 <indexterm zone="ch-system-kbd psfaddtable">
273 <primary sortas="b-psfaddtable">psfaddtable</primary>
274 </indexterm>
275 </listitem>
276 </varlistentry>
277
278 <varlistentry id="psfgettable">
279 <term><command>psfgettable</command></term>
280 <listitem>
281 <para>A link to <command>psfxtable</command></para>
282 <indexterm zone="ch-system-kbd psfgettable">
283 <primary sortas="b-psfgettable">psfgettable</primary>
284 </indexterm>
285 </listitem>
286 </varlistentry>
287
288 <varlistentry id="psfstriptable">
289 <term><command>psfstriptable</command></term>
290 <listitem>
291 <para>A link to <command>psfxtable</command></para>
292 <indexterm zone="ch-system-kbd psfstriptable">
293 <primary sortas="b-psfstriptable">psfstriptable</primary>
294 </indexterm>
295 </listitem>
296 </varlistentry>
297
298 <varlistentry id="psfxtable">
299 <term><command>psfxtable</command></term>
300 <listitem>
301 <para>Handle Unicode character tables for console fonts</para>
302 <indexterm zone="ch-system-kbd psfxtable">
303 <primary sortas="b-psfxtable">psfxtable</primary>
304 </indexterm>
305 </listitem>
306 </varlistentry>
307
308 <!--<varlistentry id="resizecons">
309 <term><command>resizecons</command></term>
310 <listitem>
311 <para>Changes the kernel idea of the console size</para>
312 <indexterm zone="ch-system-kbd resizecons">
313 <primary sortas="b-resizecons">resizecons</primary>
314 </indexterm>
315 </listitem>
316 </varlistentry>-->
317
318 <varlistentry id="setfont">
319 <term><command>setfont</command></term>
320 <listitem>
321 <para>Changes the Enhanced Graphic Adapter (EGA) and Video Graphics
322 Array (VGA) fonts on the console</para>
323 <indexterm zone="ch-system-kbd setfont">
324 <primary sortas="b-setfont">setfont</primary>
325 </indexterm>
326 </listitem>
327 </varlistentry>
328
329 <varlistentry id="setkeycodes">
330 <term><command>setkeycodes</command></term>
331 <listitem>
332 <para>Loads kernel scancode-to-keycode mapping table entries; this is
333 useful if there are unusual keys on the keyboard</para>
334 <indexterm zone="ch-system-kbd setkeycodes">
335 <primary sortas="b-setkeycodes">setkeycodes</primary>
336 </indexterm>
337 </listitem>
338 </varlistentry>
339
340 <varlistentry id="setleds">
341 <term><command>setleds</command></term>
342 <listitem>
343 <para>Sets the keyboard flags and Light Emitting Diodes (LEDs)</para>
344 <indexterm zone="ch-system-kbd setleds">
345 <primary sortas="b-setleds">setleds</primary>
346 </indexterm>
347 </listitem>
348 </varlistentry>
349
350 <varlistentry id="setmetamode">
351 <term><command>setmetamode</command></term>
352 <listitem>
353 <para>Defines the keyboard meta-key handling</para>
354 <indexterm zone="ch-system-kbd setmetamode">
355 <primary sortas="b-setmetamode">setmetamode</primary>
356 </indexterm>
357 </listitem>
358 </varlistentry>
359
360 <varlistentry id="showconsolefont">
361 <term><command>showconsolefont</command></term>
362 <listitem>
363 <para>Shows the current EGA/VGA console screen font</para>
364 <indexterm zone="ch-system-kbd showconsolefont">
365 <primary sortas="b-showconsolefont">showconsolefont</primary>
366 </indexterm>
367 </listitem>
368 </varlistentry>
369
370 <varlistentry id="showkey">
371 <term><command>showkey</command></term>
372 <listitem>
373 <para>Reports the scancodes, keycodes, and ASCII codes of the keys
374 pressed on the keyboard</para>
375 <indexterm zone="ch-system-kbd showkey">
376 <primary sortas="b-showkey">showkey</primary>
377 </indexterm>
378 </listitem>
379 </varlistentry>
380
381 <varlistentry id="unicode_start">
382 <term><command>unicode_start</command></term>
383 <listitem>
384 <para>Puts the keyboard and console in UNICODE mode. Don't use this
385 program unless your keymap file is in the ISO-8859-1 encoding. For
386 other encodings, this utility produces incorrect results.</para>
387 <indexterm zone="ch-system-kbd unicode_start">
388 <primary sortas="b-unicode_start">unicode_start</primary>
389 </indexterm>
390 </listitem>
391 </varlistentry>
392
393 <varlistentry id="unicode_stop">
394 <term><command>unicode_stop</command></term>
395 <listitem>
396 <para>Reverts keyboard and console from UNICODE mode</para>
397 <indexterm zone="ch-system-kbd unicode_stop">
398 <primary sortas="b-unicode_stop">unicode_stop</primary>
399 </indexterm>
400 </listitem>
401 </varlistentry>
402
403 </variablelist>
404
405 </sect2>
406
407</sect1>
Note: See TracBrowser for help on using the repository browser.