commit: 049026977a24a9400ee416996e78496f6c79f0b3
Author: Christopher Fore <csfore <AT> posteo <DOT> net>
AuthorDate: Thu Apr 11 15:22:34 2024 +0000
Commit: Ben Kohler <bkohler <AT> gentoo <DOT> org>
CommitDate: Tue May 14 14:07:49 2024 +0000
URL: https://gitweb.gentoo.org/proj/livecd-tools.git/commit/?id=04902697
Add keymaps and Dracut module
This will individually package the keymaps folder found in genkernel to
allow for easier conversion to using the Distribution Kernel in the
official live media.
Also due to recent events with regards to Xz and potential concerns
about adding binary files, the following command will verify the
checksums of the keymaps to the ones found in genkernel:
diff <(sha256sum lib/keymaps/* | awk '{print $1}') \
<(sha256sum path/to/genkernel/defaults/keymaps/* | awk '{print $1}')
There should be no output and an exit code of 0.
Genkernel commit tested on: 361810b23acd9452218368acecc7cc5262f00c74
Signed-off-by: Christopher Fore <csfore <AT> posteo.net>
Closes: https://github.com/gentoo/livecd-tools/pull/1
Signed-off-by: Ben Kohler <bkohler <AT> gentoo.org>
dracut/90dokeymap/choose-keymap.sh | 69 +++++++++++++++++++++++++++++++++++++
dracut/90dokeymap/module-setup.sh | 14 ++++++++
dracut/90dokeymap/parse-cmdline.sh | 7 ++++
lib/keymaps/1.map | 1 +
lib/keymaps/10.map | 1 +
lib/keymaps/11.map | 1 +
lib/keymaps/12.map | 1 +
lib/keymaps/13.map | 1 +
lib/keymaps/14.map | 1 +
lib/keymaps/15.map | 1 +
lib/keymaps/16.map | 1 +
lib/keymaps/17.map | 1 +
lib/keymaps/18.map | 1 +
lib/keymaps/19.map | 1 +
lib/keymaps/2.map | 1 +
lib/keymaps/20.map | 1 +
lib/keymaps/21.map | 1 +
lib/keymaps/22.map | 1 +
lib/keymaps/23.map | 1 +
lib/keymaps/24.map | 1 +
lib/keymaps/25.map | 1 +
lib/keymaps/26.map | 1 +
lib/keymaps/27.map | 1 +
lib/keymaps/28.map | 1 +
lib/keymaps/29.map | 1 +
lib/keymaps/3.map | 1 +
lib/keymaps/30.map | 1 +
lib/keymaps/31.map | 1 +
lib/keymaps/32.map | 1 +
lib/keymaps/33.map | 1 +
lib/keymaps/34.map | 1 +
lib/keymaps/35.map | 1 +
lib/keymaps/36.map | 1 +
lib/keymaps/37.map | 1 +
lib/keymaps/38.map | 1 +
lib/keymaps/39.map | 1 +
lib/keymaps/4.map | 1 +
lib/keymaps/40.map | 1 +
lib/keymaps/41.map | 1 +
lib/keymaps/42.map | 1 +
lib/keymaps/43.map | 1 +
lib/keymaps/44.map | 1 +
lib/keymaps/5.map | 1 +
lib/keymaps/6.map | 1 +
lib/keymaps/7.map | 1 +
lib/keymaps/8.map | 1 +
lib/keymaps/9.map | 1 +
lib/keymaps/azerty.map | Bin 0 -> 2823 bytes
lib/keymaps/be.map | Bin 0 -> 2823 bytes
lib/keymaps/bepo.map | Bin 0 -> 2823 bytes
lib/keymaps/bg.map | Bin 0 -> 2823 bytes
lib/keymaps/br-a.map | Bin 0 -> 2823 bytes
lib/keymaps/br-l.map | Bin 0 -> 2823 bytes
lib/keymaps/by.map | Bin 0 -> 2823 bytes
lib/keymaps/cf.map | Bin 0 -> 2823 bytes
lib/keymaps/colemak.map | Bin 0 -> 2823 bytes
lib/keymaps/croat.map | Bin 0 -> 2823 bytes
lib/keymaps/cz.map | Bin 0 -> 2823 bytes
lib/keymaps/de.map | Bin 0 -> 2823 bytes
lib/keymaps/dk.map | Bin 0 -> 2823 bytes
lib/keymaps/dvorak.map | Bin 0 -> 2823 bytes
lib/keymaps/es.map | Bin 0 -> 2823 bytes
lib/keymaps/et.map | Bin 0 -> 2823 bytes
lib/keymaps/fi.map | Bin 0 -> 2823 bytes
lib/keymaps/fr.map | Bin 0 -> 2823 bytes
lib/keymaps/gr.map | Bin 0 -> 2823 bytes
lib/keymaps/hu.map | Bin 0 -> 2823 bytes
lib/keymaps/il.map | Bin 0 -> 2823 bytes
lib/keymaps/is.map | Bin 0 -> 2823 bytes
lib/keymaps/it.map | Bin 0 -> 2823 bytes
lib/keymaps/jp.map | Bin 0 -> 2823 bytes
lib/keymaps/keymapList | 10 ++++++
lib/keymaps/la.map | Bin 0 -> 2823 bytes
lib/keymaps/lt.map | Bin 0 -> 2823 bytes
lib/keymaps/mk.map | Bin 0 -> 2823 bytes
lib/keymaps/nl.map | Bin 0 -> 2823 bytes
lib/keymaps/no.map | Bin 0 -> 2823 bytes
lib/keymaps/pl.map | Bin 0 -> 2823 bytes
lib/keymaps/pt.map | Bin 0 -> 2823 bytes
lib/keymaps/ro.map | Bin 0 -> 2823 bytes
lib/keymaps/ru.map | Bin 0 -> 2823 bytes
lib/keymaps/se.map | Bin 0 -> 2823 bytes
lib/keymaps/sf.map | Bin 0 -> 2823 bytes
lib/keymaps/sg.map | Bin 0 -> 2823 bytes
lib/keymaps/sk-y.map | Bin 0 -> 2823 bytes
lib/keymaps/sk-z.map | Bin 0 -> 2823 bytes
lib/keymaps/slovene.map | Bin 0 -> 2823 bytes
lib/keymaps/trq.map | Bin 0 -> 2823 bytes
lib/keymaps/ua.map | Bin 0 -> 2823 bytes
lib/keymaps/uk.map | Bin 0 -> 2823 bytes
lib/keymaps/us.map | Bin 0 -> 2823 bytes
lib/keymaps/wangbe.map | Bin 0 -> 2823 bytes
92 files changed, 144 insertions(+)
diff --git a/dracut/90dokeymap/choose-keymap.sh
b/dracut/90dokeymap/choose-keymap.sh
new file mode 100644
index 0000000..34cb7d8
--- /dev/null
+++ b/dracut/90dokeymap/choose-keymap.sh
@@ -0,0 +1,69 @@
+#!/bin/sh
+
+chooseKeymap() {
+ if [ $dokeymap -eq 1 ]; then
+ cat "/lib/keymaps/keymapList"
+ read -t 10 -p '<< Load keymap (Enter for default): ' keymap
+ case ${keymap} in
+ 1|azerty) keymap=azerty ;;
+ 2|be) keymap=be ;;
+ 3|bepo) keymap=bepo ;;
+ 4|bg) keymap=bg ;;
+ 5|br-a) keymap=br-a ;;
+ 6|br-l) keymap=br-l ;;
+ 7|by) keymap=by ;;
+ 8|cf) keymap=cf ;;
+ 9|colemak) keymap=colemak ;;
+ 10|croat) keymap=croat ;;
+ 11|cz) keymap=cz ;;
+ 12|de) keymap=de ;;
+ 13|dk) keymap=dk ;;
+ 14|dvorak) keymap=dvorak ;;
+ 15|es) keymap=es ;;
+ 16|et) keymap=et ;;
+ 17|fi) keymap=fi ;;
+ 18|fr) keymap=fr ;;
+ 19|gr) keymap=gr ;;
+ 20|hu) keymap=hu ;;
+ 21|il) keymap=il ;;
+ 22|is) keymap=is ;;
+ 23|it) keymap=it ;;
+ 24|jp) keymap=jp ;;
+ 25|la) keymap=la ;;
+ 26|lt) keymap=lt ;;
+ 27|mk) keymap=mk ;;
+ 28|nl) keymap=nl ;;
+ 29|no) keymap=no ;;
+ 30|pl) keymap=pl ;;
+ 31|pt) keymap=pt ;;
+ 32|ro) keymap=ro ;;
+ 33|ru) keymap=ru ;;
+ 34|se) keymap=se ;;
+ 35|sf|ch*) keymap=sf ;;
+ 36|sg) keymap=sg ;;
+ 37|sk-y) keymap=sk-y ;;
+ 38|sk-z) keymap=sk-z ;;
+ 39|slovene) keymap=slovene ;;
+ 40|trf) keymap=trf ;;
+ 41|ua) keymap=ua ;;
+ 42|uk) keymap=uk ;;
+ 43|us) keymap=us ;;
+ 44|wangbe) keymap=wangbe ;;
+ esac
+ if [ -e /lib/keymaps/${keymap}.map ]; then
+ info "Loading the keymap..."
+ busybox loadkmap < /lib/keymaps/${keymap}.map
+ mkdir -p /etc/sysconfig
+ echo "XKEYBOARD=${keymap}" > /etc/sysconfig/keyboard
+ elif [ -z "${keymap}" ]
+ then
+ info "Keeping default keymap"
+ else
+ info "Sorry, but keymap '${keymap}' is invalid!"
+ unset keymap
+ chooseKeymap
+ fi
+ fi
+}
+
+chooseKeymap
diff --git a/dracut/90dokeymap/module-setup.sh
b/dracut/90dokeymap/module-setup.sh
new file mode 100644
index 0000000..ee123df
--- /dev/null
+++ b/dracut/90dokeymap/module-setup.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+check() {
+ return 0
+}
+
+depends() {
+ return 0
+}
+
+install() {
+ inst_hook cmdline 90 "$moddir/parse-cmdline.sh"
+ inst_hook pre-mount 90 "$moddir/choose-keymap.sh"
+}
diff --git a/dracut/90dokeymap/parse-cmdline.sh
b/dracut/90dokeymap/parse-cmdline.sh
new file mode 100644
index 0000000..aadc8a5
--- /dev/null
+++ b/dracut/90dokeymap/parse-cmdline.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+for cmd in $(getcmdline); do
+ if [ $cmd = "dokeymap" ]; then
+ dokeymap=1
+ fi
+done
diff --git a/lib/keymaps/1.map b/lib/keymaps/1.map
new file mode 120000
index 0000000..8c0f732
--- /dev/null
+++ b/lib/keymaps/1.map
@@ -0,0 +1 @@
+azerty.map
\ No newline at end of file
diff --git a/lib/keymaps/10.map b/lib/keymaps/10.map
new file mode 120000
index 0000000..0da9af3
--- /dev/null
+++ b/lib/keymaps/10.map
@@ -0,0 +1 @@
+croat.map
\ No newline at end of file
diff --git a/lib/keymaps/11.map b/lib/keymaps/11.map
new file mode 120000
index 0000000..cc77cf9
--- /dev/null
+++ b/lib/keymaps/11.map
@@ -0,0 +1 @@
+cz.map
\ No newline at end of file
diff --git a/lib/keymaps/12.map b/lib/keymaps/12.map
new file mode 120000
index 0000000..9f72389
--- /dev/null
+++ b/lib/keymaps/12.map
@@ -0,0 +1 @@
+de.map
\ No newline at end of file
diff --git a/lib/keymaps/13.map b/lib/keymaps/13.map
new file mode 120000
index 0000000..bceb1bd
--- /dev/null
+++ b/lib/keymaps/13.map
@@ -0,0 +1 @@
+dk.map
\ No newline at end of file
diff --git a/lib/keymaps/14.map b/lib/keymaps/14.map
new file mode 120000
index 0000000..451cc56
--- /dev/null
+++ b/lib/keymaps/14.map
@@ -0,0 +1 @@
+dvorak.map
\ No newline at end of file
diff --git a/lib/keymaps/15.map b/lib/keymaps/15.map
new file mode 120000
index 0000000..168fab9
--- /dev/null
+++ b/lib/keymaps/15.map
@@ -0,0 +1 @@
+es.map
\ No newline at end of file
diff --git a/lib/keymaps/16.map b/lib/keymaps/16.map
new file mode 120000
index 0000000..3d123bb
--- /dev/null
+++ b/lib/keymaps/16.map
@@ -0,0 +1 @@
+et.map
\ No newline at end of file
diff --git a/lib/keymaps/17.map b/lib/keymaps/17.map
new file mode 120000
index 0000000..066af66
--- /dev/null
+++ b/lib/keymaps/17.map
@@ -0,0 +1 @@
+fi.map
\ No newline at end of file
diff --git a/lib/keymaps/18.map b/lib/keymaps/18.map
new file mode 120000
index 0000000..80c93fe
--- /dev/null
+++ b/lib/keymaps/18.map
@@ -0,0 +1 @@
+fr.map
\ No newline at end of file
diff --git a/lib/keymaps/19.map b/lib/keymaps/19.map
new file mode 120000
index 0000000..8a051ab
--- /dev/null
+++ b/lib/keymaps/19.map
@@ -0,0 +1 @@
+gr.map
\ No newline at end of file
diff --git a/lib/keymaps/2.map b/lib/keymaps/2.map
new file mode 120000
index 0000000..88b0b00
--- /dev/null
+++ b/lib/keymaps/2.map
@@ -0,0 +1 @@
+be.map
\ No newline at end of file
diff --git a/lib/keymaps/20.map b/lib/keymaps/20.map
new file mode 120000
index 0000000..9474d62
--- /dev/null
+++ b/lib/keymaps/20.map
@@ -0,0 +1 @@
+hu.map
\ No newline at end of file
diff --git a/lib/keymaps/21.map b/lib/keymaps/21.map
new file mode 120000
index 0000000..d590003
--- /dev/null
+++ b/lib/keymaps/21.map
@@ -0,0 +1 @@
+il.map
\ No newline at end of file
diff --git a/lib/keymaps/22.map b/lib/keymaps/22.map
new file mode 120000
index 0000000..7727bac
--- /dev/null
+++ b/lib/keymaps/22.map
@@ -0,0 +1 @@
+is.map
\ No newline at end of file
diff --git a/lib/keymaps/23.map b/lib/keymaps/23.map
new file mode 120000
index 0000000..d678e48
--- /dev/null
+++ b/lib/keymaps/23.map
@@ -0,0 +1 @@
+it.map
\ No newline at end of file
diff --git a/lib/keymaps/24.map b/lib/keymaps/24.map
new file mode 120000
index 0000000..60e7d65
--- /dev/null
+++ b/lib/keymaps/24.map
@@ -0,0 +1 @@
+jp.map
\ No newline at end of file
diff --git a/lib/keymaps/25.map b/lib/keymaps/25.map
new file mode 120000
index 0000000..d1a9079
--- /dev/null
+++ b/lib/keymaps/25.map
@@ -0,0 +1 @@
+la.map
\ No newline at end of file
diff --git a/lib/keymaps/26.map b/lib/keymaps/26.map
new file mode 120000
index 0000000..fbb0b72
--- /dev/null
+++ b/lib/keymaps/26.map
@@ -0,0 +1 @@
+lt.map
\ No newline at end of file
diff --git a/lib/keymaps/27.map b/lib/keymaps/27.map
new file mode 120000
index 0000000..f2533fb
--- /dev/null
+++ b/lib/keymaps/27.map
@@ -0,0 +1 @@
+mk.map
\ No newline at end of file
diff --git a/lib/keymaps/28.map b/lib/keymaps/28.map
new file mode 120000
index 0000000..2761f4d
--- /dev/null
+++ b/lib/keymaps/28.map
@@ -0,0 +1 @@
+nl.map
\ No newline at end of file
diff --git a/lib/keymaps/29.map b/lib/keymaps/29.map
new file mode 120000
index 0000000..b035af9
--- /dev/null
+++ b/lib/keymaps/29.map
@@ -0,0 +1 @@
+no.map
\ No newline at end of file
diff --git a/lib/keymaps/3.map b/lib/keymaps/3.map
new file mode 120000
index 0000000..b9efb65
--- /dev/null
+++ b/lib/keymaps/3.map
@@ -0,0 +1 @@
+bepo.map
\ No newline at end of file
diff --git a/lib/keymaps/30.map b/lib/keymaps/30.map
new file mode 120000
index 0000000..fbd6e21
--- /dev/null
+++ b/lib/keymaps/30.map
@@ -0,0 +1 @@
+pl.map
\ No newline at end of file
diff --git a/lib/keymaps/31.map b/lib/keymaps/31.map
new file mode 120000
index 0000000..7978523
--- /dev/null
+++ b/lib/keymaps/31.map
@@ -0,0 +1 @@
+pt.map
\ No newline at end of file
diff --git a/lib/keymaps/32.map b/lib/keymaps/32.map
new file mode 120000
index 0000000..a51e4db
--- /dev/null
+++ b/lib/keymaps/32.map
@@ -0,0 +1 @@
+ro.map
\ No newline at end of file
diff --git a/lib/keymaps/33.map b/lib/keymaps/33.map
new file mode 120000
index 0000000..c23004d
--- /dev/null
+++ b/lib/keymaps/33.map
@@ -0,0 +1 @@
+ru.map
\ No newline at end of file
diff --git a/lib/keymaps/34.map b/lib/keymaps/34.map
new file mode 120000
index 0000000..7b5cb3f
--- /dev/null
+++ b/lib/keymaps/34.map
@@ -0,0 +1 @@
+se.map
\ No newline at end of file
diff --git a/lib/keymaps/35.map b/lib/keymaps/35.map
new file mode 120000
index 0000000..a0cb60e
--- /dev/null
+++ b/lib/keymaps/35.map
@@ -0,0 +1 @@
+sf.map
\ No newline at end of file
diff --git a/lib/keymaps/36.map b/lib/keymaps/36.map
new file mode 120000
index 0000000..b510287
--- /dev/null
+++ b/lib/keymaps/36.map
@@ -0,0 +1 @@
+sg.map
\ No newline at end of file
diff --git a/lib/keymaps/37.map b/lib/keymaps/37.map
new file mode 120000
index 0000000..f6cb818
--- /dev/null
+++ b/lib/keymaps/37.map
@@ -0,0 +1 @@
+sk-y.map
\ No newline at end of file
diff --git a/lib/keymaps/38.map b/lib/keymaps/38.map
new file mode 120000
index 0000000..d2429bb
--- /dev/null
+++ b/lib/keymaps/38.map
@@ -0,0 +1 @@
+sk-z.map
\ No newline at end of file
diff --git a/lib/keymaps/39.map b/lib/keymaps/39.map
new file mode 120000
index 0000000..e8d5b5f
--- /dev/null
+++ b/lib/keymaps/39.map
@@ -0,0 +1 @@
+slovene.map
\ No newline at end of file
diff --git a/lib/keymaps/4.map b/lib/keymaps/4.map
new file mode 120000
index 0000000..63107de
--- /dev/null
+++ b/lib/keymaps/4.map
@@ -0,0 +1 @@
+bg.map
\ No newline at end of file
diff --git a/lib/keymaps/40.map b/lib/keymaps/40.map
new file mode 120000
index 0000000..8aa41ed
--- /dev/null
+++ b/lib/keymaps/40.map
@@ -0,0 +1 @@
+trq.map
\ No newline at end of file
diff --git a/lib/keymaps/41.map b/lib/keymaps/41.map
new file mode 120000
index 0000000..3e8aa5b
--- /dev/null
+++ b/lib/keymaps/41.map
@@ -0,0 +1 @@
+ua.map
\ No newline at end of file
diff --git a/lib/keymaps/42.map b/lib/keymaps/42.map
new file mode 120000
index 0000000..0eca050
--- /dev/null
+++ b/lib/keymaps/42.map
@@ -0,0 +1 @@
+uk.map
\ No newline at end of file
diff --git a/lib/keymaps/43.map b/lib/keymaps/43.map
new file mode 120000
index 0000000..2a3add6
--- /dev/null
+++ b/lib/keymaps/43.map
@@ -0,0 +1 @@
+us.map
\ No newline at end of file
diff --git a/lib/keymaps/44.map b/lib/keymaps/44.map
new file mode 120000
index 0000000..c800071
--- /dev/null
+++ b/lib/keymaps/44.map
@@ -0,0 +1 @@
+wangbe.map
\ No newline at end of file
diff --git a/lib/keymaps/5.map b/lib/keymaps/5.map
new file mode 120000
index 0000000..1c53a25
--- /dev/null
+++ b/lib/keymaps/5.map
@@ -0,0 +1 @@
+br-a.map
\ No newline at end of file
diff --git a/lib/keymaps/6.map b/lib/keymaps/6.map
new file mode 120000
index 0000000..171e281
--- /dev/null
+++ b/lib/keymaps/6.map
@@ -0,0 +1 @@
+br-l.map
\ No newline at end of file
diff --git a/lib/keymaps/7.map b/lib/keymaps/7.map
new file mode 120000
index 0000000..daaf368
--- /dev/null
+++ b/lib/keymaps/7.map
@@ -0,0 +1 @@
+by.map
\ No newline at end of file
diff --git a/lib/keymaps/8.map b/lib/keymaps/8.map
new file mode 120000
index 0000000..d233aed
--- /dev/null
+++ b/lib/keymaps/8.map
@@ -0,0 +1 @@
+cf.map
\ No newline at end of file
diff --git a/lib/keymaps/9.map b/lib/keymaps/9.map
new file mode 120000
index 0000000..cc3ef87
--- /dev/null
+++ b/lib/keymaps/9.map
@@ -0,0 +1 @@
+colemak.map
\ No newline at end of file
diff --git a/lib/keymaps/azerty.map b/lib/keymaps/azerty.map
new file mode 100644
index 0000000..582399d
Binary files /dev/null and b/lib/keymaps/azerty.map differ
diff --git a/lib/keymaps/be.map b/lib/keymaps/be.map
new file mode 100644
index 0000000..000baef
Binary files /dev/null and b/lib/keymaps/be.map differ
diff --git a/lib/keymaps/bepo.map b/lib/keymaps/bepo.map
new file mode 100644
index 0000000..cf9130d
Binary files /dev/null and b/lib/keymaps/bepo.map differ
diff --git a/lib/keymaps/bg.map b/lib/keymaps/bg.map
new file mode 100644
index 0000000..8974c8e
Binary files /dev/null and b/lib/keymaps/bg.map differ
diff --git a/lib/keymaps/br-a.map b/lib/keymaps/br-a.map
new file mode 100644
index 0000000..e833967
Binary files /dev/null and b/lib/keymaps/br-a.map differ
diff --git a/lib/keymaps/br-l.map b/lib/keymaps/br-l.map
new file mode 100644
index 0000000..04b4a16
Binary files /dev/null and b/lib/keymaps/br-l.map differ
diff --git a/lib/keymaps/by.map b/lib/keymaps/by.map
new file mode 100644
index 0000000..51f398f
Binary files /dev/null and b/lib/keymaps/by.map differ
diff --git a/lib/keymaps/cf.map b/lib/keymaps/cf.map
new file mode 100644
index 0000000..7d5fe9d
Binary files /dev/null and b/lib/keymaps/cf.map differ
diff --git a/lib/keymaps/colemak.map b/lib/keymaps/colemak.map
new file mode 100644
index 0000000..39e286c
Binary files /dev/null and b/lib/keymaps/colemak.map differ
diff --git a/lib/keymaps/croat.map b/lib/keymaps/croat.map
new file mode 100644
index 0000000..897ce98
Binary files /dev/null and b/lib/keymaps/croat.map differ
diff --git a/lib/keymaps/cz.map b/lib/keymaps/cz.map
new file mode 100644
index 0000000..aeff074
Binary files /dev/null and b/lib/keymaps/cz.map differ
diff --git a/lib/keymaps/de.map b/lib/keymaps/de.map
new file mode 100644
index 0000000..74df67c
Binary files /dev/null and b/lib/keymaps/de.map differ
diff --git a/lib/keymaps/dk.map b/lib/keymaps/dk.map
new file mode 100644
index 0000000..cab1c2b
Binary files /dev/null and b/lib/keymaps/dk.map differ
diff --git a/lib/keymaps/dvorak.map b/lib/keymaps/dvorak.map
new file mode 100644
index 0000000..bba26ba
Binary files /dev/null and b/lib/keymaps/dvorak.map differ
diff --git a/lib/keymaps/es.map b/lib/keymaps/es.map
new file mode 100644
index 0000000..d07b60b
Binary files /dev/null and b/lib/keymaps/es.map differ
diff --git a/lib/keymaps/et.map b/lib/keymaps/et.map
new file mode 100644
index 0000000..0b32075
Binary files /dev/null and b/lib/keymaps/et.map differ
diff --git a/lib/keymaps/fi.map b/lib/keymaps/fi.map
new file mode 100644
index 0000000..1b2192a
Binary files /dev/null and b/lib/keymaps/fi.map differ
diff --git a/lib/keymaps/fr.map b/lib/keymaps/fr.map
new file mode 100644
index 0000000..09cfa30
Binary files /dev/null and b/lib/keymaps/fr.map differ
diff --git a/lib/keymaps/gr.map b/lib/keymaps/gr.map
new file mode 100644
index 0000000..caa4e9f
Binary files /dev/null and b/lib/keymaps/gr.map differ
diff --git a/lib/keymaps/hu.map b/lib/keymaps/hu.map
new file mode 100644
index 0000000..8a694e0
Binary files /dev/null and b/lib/keymaps/hu.map differ
diff --git a/lib/keymaps/il.map b/lib/keymaps/il.map
new file mode 100644
index 0000000..963be10
Binary files /dev/null and b/lib/keymaps/il.map differ
diff --git a/lib/keymaps/is.map b/lib/keymaps/is.map
new file mode 100644
index 0000000..d29db81
Binary files /dev/null and b/lib/keymaps/is.map differ
diff --git a/lib/keymaps/it.map b/lib/keymaps/it.map
new file mode 100644
index 0000000..7ee7323
Binary files /dev/null and b/lib/keymaps/it.map differ
diff --git a/lib/keymaps/jp.map b/lib/keymaps/jp.map
new file mode 100644
index 0000000..3734d19
Binary files /dev/null and b/lib/keymaps/jp.map differ
diff --git a/lib/keymaps/keymapList b/lib/keymaps/keymapList
new file mode 100644
index 0000000..f46ff0a
--- /dev/null
+++ b/lib/keymaps/keymapList
@@ -0,0 +1,10 @@
+Please select a keymap from the following list by typing in the appropriate
+name or number. Hit Enter for the default "us/43" US English keymap.
+
+ 1 azerty 8 cf 15 es 22 is 29 no 36 sg 43 us
+ 2 be 9 colemak 16 et 23 it 30 pl 37 sk-y 44 wangbe
+ 3 bepo 10 croat 17 fi 24 jp 31 pt 38 sk-z
+ 4 bg 11 cz 18 fr 25 la 32 ro 39 slovene
+ 5 br-a 12 de 19 gr 26 lt 33 ru 40 trf
+ 6 br-l 13 dk 20 hu 27 mk 34 se 41 ua
+ 7 by 14 dvorak 21 il 28 nl 35 sf 42 uk
diff --git a/lib/keymaps/la.map b/lib/keymaps/la.map
new file mode 100644
index 0000000..bad2de2
Binary files /dev/null and b/lib/keymaps/la.map differ
diff --git a/lib/keymaps/lt.map b/lib/keymaps/lt.map
new file mode 100644
index 0000000..bddf4c6
Binary files /dev/null and b/lib/keymaps/lt.map differ
diff --git a/lib/keymaps/mk.map b/lib/keymaps/mk.map
new file mode 100644
index 0000000..5e97953
Binary files /dev/null and b/lib/keymaps/mk.map differ
diff --git a/lib/keymaps/nl.map b/lib/keymaps/nl.map
new file mode 100644
index 0000000..c1c73ea
Binary files /dev/null and b/lib/keymaps/nl.map differ
diff --git a/lib/keymaps/no.map b/lib/keymaps/no.map
new file mode 100644
index 0000000..67e335a
Binary files /dev/null and b/lib/keymaps/no.map differ
diff --git a/lib/keymaps/pl.map b/lib/keymaps/pl.map
new file mode 100644
index 0000000..ec857d5
Binary files /dev/null and b/lib/keymaps/pl.map differ
diff --git a/lib/keymaps/pt.map b/lib/keymaps/pt.map
new file mode 100644
index 0000000..553ab57
Binary files /dev/null and b/lib/keymaps/pt.map differ
diff --git a/lib/keymaps/ro.map b/lib/keymaps/ro.map
new file mode 100644
index 0000000..e1e26a3
Binary files /dev/null and b/lib/keymaps/ro.map differ
diff --git a/lib/keymaps/ru.map b/lib/keymaps/ru.map
new file mode 100644
index 0000000..50bde7a
Binary files /dev/null and b/lib/keymaps/ru.map differ
diff --git a/lib/keymaps/se.map b/lib/keymaps/se.map
new file mode 100644
index 0000000..66b700a
Binary files /dev/null and b/lib/keymaps/se.map differ
diff --git a/lib/keymaps/sf.map b/lib/keymaps/sf.map
new file mode 100644
index 0000000..0e83a7c
Binary files /dev/null and b/lib/keymaps/sf.map differ
diff --git a/lib/keymaps/sg.map b/lib/keymaps/sg.map
new file mode 100644
index 0000000..db4e166
Binary files /dev/null and b/lib/keymaps/sg.map differ
diff --git a/lib/keymaps/sk-y.map b/lib/keymaps/sk-y.map
new file mode 100644
index 0000000..ac1cf01
Binary files /dev/null and b/lib/keymaps/sk-y.map differ
diff --git a/lib/keymaps/sk-z.map b/lib/keymaps/sk-z.map
new file mode 100644
index 0000000..e1f76eb
Binary files /dev/null and b/lib/keymaps/sk-z.map differ
diff --git a/lib/keymaps/slovene.map b/lib/keymaps/slovene.map
new file mode 100644
index 0000000..8a8c2e8
Binary files /dev/null and b/lib/keymaps/slovene.map differ
diff --git a/lib/keymaps/trq.map b/lib/keymaps/trq.map
new file mode 100644
index 0000000..cc90565
Binary files /dev/null and b/lib/keymaps/trq.map differ
diff --git a/lib/keymaps/ua.map b/lib/keymaps/ua.map
new file mode 100644
index 0000000..fe7150c
Binary files /dev/null and b/lib/keymaps/ua.map differ
diff --git a/lib/keymaps/uk.map b/lib/keymaps/uk.map
new file mode 100644
index 0000000..5b405f8
Binary files /dev/null and b/lib/keymaps/uk.map differ
diff --git a/lib/keymaps/us.map b/lib/keymaps/us.map
new file mode 100644
index 0000000..9edb31e
Binary files /dev/null and b/lib/keymaps/us.map differ
diff --git a/lib/keymaps/wangbe.map b/lib/keymaps/wangbe.map
new file mode 100644
index 0000000..36adec9
Binary files /dev/null and b/lib/keymaps/wangbe.map differ