Missing keymap causes error

When trying to install a new kernel, I get,
→ Running build hook: [block]
→ Running build hook: [keyboard]
→ Running build hook: [keymap]
loadkeys: Unable to open file: au: No such file or directory

I checked what keymaps I have set in my config.
cat /etc/{vconsole,locale}.conf

>>
KEYMAP=au
LANG=en_AU.UTF-8
LC_ADDRESS=en_AU.UTF-8
LC_IDENTIFICATION=en_AU.UTF-8
LC_MEASUREMENT=en_AU.UTF-8
LC_MONETARY=en_AU.UTF-8
LC_NAME=en_AU.UTF-8
LC_NUMERIC=en_AU.UTF-8
LC_PAPER=en_AU.UTF-8
LC_TELEPHONE=en_AU.UTF-8
LC_TIME=en_AU.UTF-8

Seems that’s set during install as I didn’t manually set it.

I checked /usr/share/kbd/keymaps/i386/qwerty
and there is no AU file.

localectl list-keymaps
Also shows nothing for AU.

So I checked the KBD Project

They have Git now

There is definitely no keymap for AU. Is there meant to be one? If not can I safely just swap to the US layout or will I break something else?

Australian keyboards are typically based on a “US keyboard layout”. In some other distributions one can add XKBMODEL="pc105" and XKBLAYOUT="au" for a generic 105 key, but it’s not often needed.

If you change KEYMAP=au to KEYMAP=us in /etc/vconsole.conf I imagine that should be a good start.

Your locale.conf seems reasonable.

Regards.

1 Like

When you put it that way - I recall the installer log I created while troubleshooting another issue related to grub.

I remember the log listed something about parsing the selected locale name and picking the keymap from the second part e.g. en_AU would make au.

The log - https://0x0.st/KOXd.txt - now I am doubting my memory - it seems to be wrong - could be this section I am remembering ?

10:16:04 [6]: void CalamaresApplication::init()
    Calamares version: 3.4.0
    .. Using Qt version: 6.10.0
    .. Build type: Debug
    .. Using PyBind11
    .. Using settings: "/etc/calamares/settings.conf"
    .. Using log file: "/root/.cache/calamares/session.log"
    .. Languages: QList("ar", "as", "ast", "az", "az_AZ", "be", "bg", "bn", "ca", "ca@valencia", "cs_CZ", "da", "de", "el", "en", "en_GB", "eo", "es", "es_AR", "es_MX", "et", "eu", "fa", "fi_FI", "fr", "fur", "gl", "he", "hi", "hr", "hu", "ia", "id", "is", "it_IT", "ja", "ka", "ko", "lt", "ml", "mr", "nb", "nl", "oc", "pl", "pt_BR", "pt_PT", "ro", "ru", "si", "sk", "sl", "sq", "sr", "sr@latin", "sv", "tg", "th", "tr_TR", "uk", "uz", "vi", "zh_CN", "zh_TW")
10:16:11 [6]: static LocaleConfiguration LocaleConfiguration::fromLanguageAndLocation(const QString&, const QStringList&, const QString&)
    Mapping "en" in "DK" to locale.
    .. Got best match for "en" as "en_AU.UTF-8"
    .. Got best match for "en_DK" as "en_DK.UTF-8"
10:16:11 [6]: static LocaleConfiguration LocaleConfiguration::fromLanguageAndLocation(const QString&, const QStringList&, const QString&)
    Mapping "en" in "DK" to locale.
    .. Got best match for "en" as "en_AU.UTF-8"
    .. Got best match for "en_DK" as "en_DK.UTF-8"
10:16:11 [6]: static LocaleConfiguration LocaleConfiguration::fromLanguageAndLocation(const QString&, const QStringList&, const QString&)
    Mapping "en" in "DK" to locale.
    .. Got best match for "en" as "en_AU.UTF-8"
    .. Got best match for "en_DK" as "en_DK.UTF-8"
10:16:12 [6]: void Config::guessLocaleKeyboardLayout()
    Got locale language "en_DK.UTF-8"
    .. looking for locale part "DK"
    .. matched "dk"

I suggest you create an issue at Calamares/calamares: Distribution-independent installer framework - Codeberg.org - as for your question you should simply change to en.

I shared the log on 0x0.st and linked it in the issue - will try to locate the issue and link it.

If your system is Plasma based - it might have a ~/.local/plasma-localerc which rewrites the locale.

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.