include set_keymap in initial language selection

merge-requests/260/head
Bernhard Landauer 7 years ago
parent f8480ae7a2
commit 02f45d133e

@ -549,35 +549,6 @@ run_mkinitcpio() {
check_for_error "$FUNCNAME" "$?"
}
# virtual console keymap
set_keymap() {
KEYMAPS=""
for i in $(ls -R /usr/share/kbd/keymaps | grep "map.gz" | sed 's/\.map\.gz//g' | sort); do
KEYMAPS="${KEYMAPS} ${i} -"
done
DIALOG " $_VCKeymapTitle " --menu "$_VCKeymapBody" 20 40 16 ${KEYMAPS} 2>${ANSWER} || return 0
KEYMAP=$(cat ${ANSWER})
loadkeys $KEYMAP 2>$ERR
check_for_error "loadkeys $KEYMAP" "$?"
ini linux.keymap "$KEYMAP"
# set keymap for openrc too
echo "keymap=\"$KEYMAP\"" > /tmp/keymap
biggest_resolution=$(head -n 1 /sys/class/drm/card*/*/modes | awk -F'[^0-9]*' '{print $1}' | awk 'BEGIN{a= 0}{if ($1>a) a=$1 fi} END{print a}')
# Choose terminus font size depending on resolution
if [[ $biggest_resolution -gt 1920 ]]; then
FONT=ter-124n
elif [[ $biggest_resolution -eq 1920 ]]; then
FONT=ter-118n
else
FONT=ter-114n
fi
ini linux.font "$FONT"
echo -e "KEYMAP=${KEYMAP}\nFONT=${FONT}" > /tmp/vconsole.conf
echo -e "consolefont=\"${FONT}\"" > /tmp/consolefont
}
# locale array generation code adapted from the Manjaro 0.8 installer
set_locale() {
LOCALES=""

@ -53,30 +53,27 @@ prep_menu() {
local PARENT="$FUNCNAME"
declare -i loopmenu=1
while ((loopmenu)); do
submenu 7
DIALOG " $_PrepMenuTitle " --default-item ${HIGHLIGHT_SUB} --menu "$_PrepMenuBody" 0 0 7 \
"1" "$_VCKeymapTitle" \
"2" "$_DevShowOpt" \
"3" "$_PrepPartDisk" \
"4" "$_PrepLUKS" \
"5" "$_PrepLVM $_PrepLVM2" \
"6" "$_PrepMntPart" \
"7" "$_Back" 2>${ANSWER}
submenu 6
DIALOG " $_PrepMenuTitle " --default-item ${HIGHLIGHT_SUB} --menu "$_PrepMenuBody" 0 0 6 \
"1" "$_DevShowOpt" \
"2" "$_PrepPartDisk" \
"3" "$_PrepLUKS" \
"4" "$_PrepLVM $_PrepLVM2" \
"5" "$_PrepMntPart" \
"6" "$_Back" 2>${ANSWER}
HIGHLIGHT_SUB=$(cat ${ANSWER})
case $(cat ${ANSWER}) in
"1") set_keymap
;;
"2") show_devices
"1") show_devices
;;
"3") umount_partitions
"2") umount_partitions
select_device && create_partitions
;;
"4") luks_menu
"3") luks_menu
;;
"5") lvm_menu
"4") lvm_menu
;;
"6") mount_partitions
"5") mount_partitions
;;
*) loopmenu=0
return 0

@ -206,6 +206,7 @@ check_for_error() {
# Add locale on-the-fly and sets source translation file for installer
select_language() {
fl="1" # terminus-font variation supporting most languages, to be processed in set_keymap()
if [[ $(cat ${LANGSEL} 2>/dev/null) == "" ]]; then
DIALOG " Select Language " --default-item '3' --menu "\n$_Lang" 0 0 11 \
"1" $"Danish|(da_DK)" \
@ -239,7 +240,7 @@ select_language() {
;;
"6") source $DATADIR/translations/hungarian.trans
CURR_LOCALE="hu_HU.UTF-8"
FONT="ter-216n"
fl="2"
;;
"7") source $DATADIR/translations/italian.trans
CURR_LOCALE="it_IT.UTF-8"
@ -252,7 +253,7 @@ select_language() {
;;
"10") source $DATADIR/translations/russian.trans
CURR_LOCALE="ru_RU.UTF-8"
FONT="ter-u16n"
fl="u"
;;
"11") source $DATADIR/translations/spanish.trans
CURR_LOCALE="es_ES.UTF-8"
@ -261,21 +262,52 @@ select_language() {
;;
esac
set_keymap
# Generate the chosen locale and set the language
DIALOG " $_Config " --infobox "$_ApplySet" 0 0
sleep 2
sed -i "s/#${CURR_LOCALE}/${CURR_LOCALE}/" /etc/locale.gen
locale-gen >/dev/null 2>$ERR
export LANG=${CURR_LOCALE}
check_for_error "set LANG=${CURR_LOCALE}" $?
ini system.lang "$CURR_LOCALE"
}
}
# virtual console keymap and font
set_keymap() {
KEYMAPS=""
for i in $(ls -R /usr/share/kbd/keymaps | grep "map.gz" | sed 's/\.map\.gz//g' | sort); do
KEYMAPS="${KEYMAPS} ${i} -"
done
DIALOG " $_VCKeymapTitle " --menu "$_VCKeymapBody" 20 40 16 ${KEYMAPS} 2>${ANSWER} || return 0
KEYMAP=$(cat ${ANSWER})
loadkeys $KEYMAP 2>$ERR
check_for_error "loadkeys $KEYMAP" "$?"
ini linux.keymap "$KEYMAP"
# set keymap for openrc too
echo "keymap=\"$KEYMAP\"" > /tmp/keymap
biggest_resolution=$(head -n 1 /sys/class/drm/card*/*/modes | awk -F'[^0-9]*' '{print $1}' | awk 'BEGIN{a= 0}{if ($1>a) a=$1 fi} END{print a}')
# Choose terminus font size depending on resolution
if [[ $biggest_resolution -gt 1920 ]]; then
fs="24"
elif [[ $biggest_resolution -eq 1920 ]]; then
fs="18"
else
fs="16"
fi
FONT="ter-${fl}${fs}n"
ini linux.font "$FONT"
echo -e "KEYMAP=${KEYMAP}\nFONT=${FONT}" > /tmp/vconsole.conf
echo -e "consolefont=\"${FONT}\"" > /tmp/consolefont
[[ $FONT != "" ]] && {
setfont $FONT 2>$ERR
check_for_error "set font $FONT" $?
ini system.font "$FONT"
}
setfont $FONT 2>$ERR
check_for_error "set font $FONT" $?
ini system.font "$FONT"
}
mk_connection() {

Loading…
Cancel
Save