summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bsdconfig
diff options
context:
space:
mode:
authoreadler <eadler@FreeBSD.org>2018-03-03 10:27:33 +0000
committereadler <eadler@FreeBSD.org>2018-03-03 10:27:33 +0000
commit1315ff3b5c6d918a19800d33716795c5c95e512d (patch)
tree6f8fc9cc2e78b24b078d39f74f51d61f339b7e69 /usr.sbin/bsdconfig
parentf499542137f29f320a81ac273865452211f8b4e1 (diff)
downloadFreeBSD-src-1315ff3b5c6d918a19800d33716795c5c95e512d.zip
FreeBSD-src-1315ff3b5c6d918a19800d33716795c5c95e512d.tar.gz
MFC r318891:
Fix long standing issue in bsdconfig's keymap selection Since the translation to vt as terminal emulator, the keymaps files path has changed and this change does not get followed in bsdconfig. This implicates boot time warnings about a wrong keymap file, what is very confusing for the new users and for me too, so initialize the default keymaps search path depending on terminal type.
Diffstat (limited to 'usr.sbin/bsdconfig')
-rwxr-xr-xusr.sbin/bsdconfig/console/keymap8
-rw-r--r--usr.sbin/bsdconfig/share/keymap.subr5
2 files changed, 11 insertions, 2 deletions
diff --git a/usr.sbin/bsdconfig/console/keymap b/usr.sbin/bsdconfig/console/keymap
index c163a1b..28c0500 100755
--- a/usr.sbin/bsdconfig/console/keymap
+++ b/usr.sbin/bsdconfig/console/keymap
@@ -172,6 +172,7 @@ dialog_menu_main()
uk.iso) defaultitem="$msg_uk_iso" ;;
ua.koi8-u) defaultitem="$msg_ukrainian_koi8_u" ;;
ua.koi8-u.shift.alt) defaultitem="$msg_ukrainian_koi8_u_koi8_r" ;;
+ us.ctrl) defaultitem="$msg_usa_capslock_ctrl" ;;
us.pc-ctrl) defaultitem="$msg_usa_capslock_ctrl" ;;
us.dvorak) defaultitem="$msg_usa_dvorak" ;;
us.dvorakl) defaultitem="$msg_usa_dvorak_left" ;;
@@ -307,7 +308,12 @@ while :; do
uk_iso) keymap_to_set="uk.iso" ;;
ukrainian_koi8_u) keymap_to_set="ua.koi8-u" ;;
ukrainian_koi8_u_koi8_r) keymap_to_set="ua.koi8-u.shift.alt" ;;
- usa_capslock_ctrl) keymap_to_set="us.pc-ctrl" ;;
+ usa_capslock_ctrl)
+ case "$( sysctl -n kern.vty )" in
+ vt) keymap_to_set="us.ctrl" ;;
+ *) keymap_to_set="us.pc-ctrl" ;;
+ esac
+ ;;
usa_dvorak) keymap_to_set="us.dvorak" ;;
usa_dvorak_left) keymap_to_set="us.dvorakl" ;;
usa_dvorak_right) keymap_to_set="us.dvorakr" ;;
diff --git a/usr.sbin/bsdconfig/share/keymap.subr b/usr.sbin/bsdconfig/share/keymap.subr
index 7f2f87c..ca6f3c8 100644
--- a/usr.sbin/bsdconfig/share/keymap.subr
+++ b/usr.sbin/bsdconfig/share/keymap.subr
@@ -39,7 +39,10 @@ f_include $BSDCFG_SHARE/struct.subr
# Defaults taken from usr.sbin/kbdmap/kbdmap.h
#
: ${DEFAULT_LANG:=en}
-: ${DEFAULT_KEYMAP_DIR:=/usr/share/syscons/keymaps}
+case "$( sysctl -n kern.vty )" in
+vt) : ${DEFAULT_KEYMAP_DIR:=/usr/share/vt/keymaps} ;;
+*) : ${DEFAULT_KEYMAP_DIR:=/usr/share/syscons/keymaps} ;;
+esac
############################################################ GLOBALS
OpenPOWER on IntegriCloud