#!/usr/bin/env bash
# SPDX-License-Identifier: GPL-2.0-only

build() {
    # prevent conflicting variables from affecting vconsole.conf values
    # shellcheck disable=SC2034
    local KEYMAP KEYMAP_TOGGLE FONT FONT_MAP FONT_UNIMAP

    # subshell to avoid namespace pollution
    (
        l=$LANG
        unset LANG

        for cfg in /etc/{vconsole,locale}.conf; do
            [[ -s $cfg ]] && . "$cfg"
        done

        [[ $LANG ]] && LOCALE=$LANG
        LANG=$l

        if [[ $LOCALE = *[Uu][Tt][Ff]?(-)8 ]]; then
            touch "$BUILDROOT/keymap.utf8"
            uc=-u
        fi
        loadkeys -q $uc ${KEYMAP:-us} -b > "$BUILDROOT/keymap.bin"
    ) && add_runscript
}

help() {
    cat <<HELPEOF
This hook loads keymap(s) specified in vconsole.conf during early userspace.
HELPEOF
}

# vim: set ft=sh ts=4 sw=4 et:
