[livecd] hopefully fixes keyboard; try 1
This commit is contained in:
parent
068aa73deb
commit
78f987f865
2 changed files with 18 additions and 24 deletions
|
@ -70,7 +70,7 @@ write_x11_config(){
|
||||||
local X11_MODEL="pc105"
|
local X11_MODEL="pc105"
|
||||||
local X11_VARIANT=""
|
local X11_VARIANT=""
|
||||||
local X11_OPTIONS="terminate:ctrl_alt_bksp"
|
local X11_OPTIONS="terminate:ctrl_alt_bksp"
|
||||||
find_legacy_keymap
|
# find_legacy_keymap
|
||||||
|
|
||||||
# layout not found, use KBLAYOUT
|
# layout not found, use KBLAYOUT
|
||||||
if [[ -z "$X11_LAYOUT" ]]; then
|
if [[ -z "$X11_LAYOUT" ]]; then
|
||||||
|
@ -107,35 +107,30 @@ configure_language(){
|
||||||
local LOCALE=$(get_country)
|
local LOCALE=$(get_country)
|
||||||
local KEYMAP=$(get_keyboard)
|
local KEYMAP=$(get_keyboard)
|
||||||
local KBLAYOUT=$(get_layout)
|
local KBLAYOUT=$(get_layout)
|
||||||
|
local FALLBACK="en_GB"
|
||||||
|
local TLANG=${LOCALE%.*}
|
||||||
|
|
||||||
# set a default value, in case something goes wrong, or a language doesn't have
|
sed -i -r "s/#(${TLANG}.*UTF-8)/\1/g" $1/etc/locale.gen
|
||||||
# good defult settings
|
sed -i -r "s/#(${FALLBACK}.*UTF-8)/\1/g" $1/etc/locale.gen
|
||||||
[[ -z "$LOCALE" ]] && LOCALE="en_US"
|
|
||||||
[[ -z "$KEYMAP" ]] && KEYMAP="us"
|
|
||||||
[[ -z "$KBLAYOUT" ]] && KBLAYOUT="us"
|
|
||||||
|
|
||||||
echo "KEYMAP=us" > $1/etc/vconsole.conf
|
echo "LANG=${LOCALE}.UTF-8" >> $1/etc/environment
|
||||||
sed -i "s/^KEYMAP=.*/KEYMAP=\"${KEYMAP}\"/" $1/etc/vconsole.conf
|
|
||||||
|
|
||||||
# load keymaps
|
if [[ -f $1/usr/bin/openrc ]]; then
|
||||||
loadkeys "$KEYMAP"
|
sed -i "s/keymap=.*/keymap=\"${KEYMAP}\"/" $1/etc/conf.d/keymaps
|
||||||
|
loadkeys "${KEYMAP}"
|
||||||
|
# setup systemd stuff too
|
||||||
|
echo "KEYMAP=${KEYMAP}" > $1/etc/vconsole.conf
|
||||||
|
echo "LANG=${LOCALE}.UTF-8" > $1/etc/locale.conf
|
||||||
|
else
|
||||||
|
localectl set-keymap --no-convert ${KEYMAP}
|
||||||
|
localectl set-locale LANG=${LOCALE}.UTF-8
|
||||||
|
fi
|
||||||
|
|
||||||
write_x11_config $1
|
write_x11_config $1
|
||||||
|
|
||||||
# set systemwide language
|
echo "LANGUAGE=${LOCALE}:${FALLBACK}" >> $1/etc/locale.conf
|
||||||
echo "LANG=${LOCALE}.UTF-8" > $1/etc/locale.conf
|
|
||||||
echo "LC_MESSAGES=${LOCALE}.UTF-8" >> $1/etc/locale.conf
|
|
||||||
echo "LANG=${LOCALE}.UTF-8" >> $1/etc/environment
|
|
||||||
|
|
||||||
# generate LOCALE
|
# echo "LC_MESSAGES=${LOCALE}.UTF-8" >> $1/etc/locale.conf
|
||||||
local TLANG=${LOCALE%.*} # remove everything after the ., including the dot from LOCALE
|
|
||||||
sed -i -r "s/#(${TLANG}.*UTF-8)/\1/g" $1/etc/locale.gen
|
|
||||||
# add also American English as safe default
|
|
||||||
sed -i -r "s/#(en_US.*UTF-8)/\1/g" $1/etc/locale.gen
|
|
||||||
|
|
||||||
if [[ -f $1/usr/bin/openrc ]]; then
|
|
||||||
sed -i "s/keymap=.*/keymap=\"$KEYMAP\"/" $1/etc/conf.d/keymaps
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
configure_translation_pkgs(){
|
configure_translation_pkgs(){
|
||||||
|
|
|
@ -22,7 +22,6 @@ echo "set locale" >> /tmp/livecd.log
|
||||||
# set language
|
# set language
|
||||||
configure_language
|
configure_language
|
||||||
locale-gen
|
locale-gen
|
||||||
[[ -d /run/openrc ]] && rc-service keymaps restart &> /dev/null
|
|
||||||
|
|
||||||
echo "configure system" >> /tmp/livecd.log
|
echo "configure system" >> /tmp/livecd.log
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue