1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-11 09:50:12 +00:00

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.

Differential Revision:	https://reviews.freebsd.org/D8734
Submitted by:	Oliver Pinter <oliver.pinter@hardenedbsd.org>
Reviewed by:	ed, jilles, dteske
MFC after:	3 days
X-MFC-to:	stable/11
Sponsored by:	HardenedBSD
Signed-off-by:	Oliver Pinter <oliver.pinter@hardenedbsd.org>
This commit is contained in:
Devin Teske 2017-05-25 18:16:17 +00:00
parent cb5a670ece
commit ab00ac327a
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=318891
2 changed files with 11 additions and 2 deletions

View File

@ -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" ;;

View File

@ -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