summaryrefslogtreecommitdiffstats
path: root/modules.d/10i18n/parse-i18n.sh
blob: 2deb2c41af422bfa1d379bc56afe25ec8550a82f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/bin/sh

inst_key_val() {
    local _value
    local _file
    local _default
    _file="$1"
    shift
    _key="$1"
    shift
    _default="$1"
    shift
    _value="$(getarg "$@")"
    [ -z "${_value}" ] && _value=$_default
    if [ -n "${_value}" ]; then
        printf -- '%s="%s"\n' "${_key}" "${_value}" >> "$_file"
    fi
    unset _file
    unset _value
}

inst_key_val /etc/vconsole.conf KEYMAP '' rd.vconsole.keymap KEYMAP -d KEYTABLE
inst_key_val /etc/vconsole.conf FONT '' rd.vconsole.font FONT -d SYSFONT
inst_key_val /etc/vconsole.conf FONT_MAP '' rd.vconsole.font.map FONT_MAP -d CONTRANS
inst_key_val /etc/vconsole.conf FONT_UNIMAP '' rd.vconsole.font.unimap FONT_UNIMAP -d UNIMAP
inst_key_val /etc/vconsole.conf UNICODE 1 rd.vconsole.font.unicode UNICODE vconsole.unicode
inst_key_val /etc/vconsole.conf EXT_KEYMAP '' rd.vconsole.keymap.ext EXT_KEYMAP

inst_key_val /etc/locale.conf LANG '' rd.locale.LANG LANG
inst_key_val /etc/locale.conf LC_ALL '' rd.locale.LC_ALL LC_ALL

if [ -f /etc/locale.conf ]; then
    . /etc/locale.conf
    export LANG
    export LC_ALL
fi