yocto: изменение поддержки раскладки клавиатуры в core-image-sato

Я хочу добавить другую раскладку клавиатуры — например, арабскую или персидскую — в core-image-sato , к сожалению, я понятия не имею, как и где ее искать. может ли кто-нибудь дать какие-либо советы или решения?


person namoplus    schedule 27.01.2015    source источник


Ответы (2)


Хотя я не знаю core-image-sato, этот ответ, вероятно, поможет вам. В моем случае я хотел загрузить швейцарско-немецкую раскладку клавиш для консоли при запуске. Поэтому я написал небольшой systemd-сервис, который запускает loadkeys с пользовательской раскладкой клавиш.
Все завернуто в рецепт bitbake:

kbdlayout.bb:

DESCRIPTION = "Setup a default (german) keyboard-layout for the console only"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58"

inherit systemd

PV = "0.2"
PACKAGE_ARCH = "voisee"
SRCREV = "HEAD"

SRC_URI = "file://kbdlayout.service \
           file://de_CH-latin1.bmap \
          "


do_install () {
    install -d ${D}/${sysconfdir}
    install -m 0755 ${WORKDIR}/de_CH-latin1.bmap ${D}/${sysconfdir}/keymap.map

    install -d ${D}/${base_libdir}/systemd/system
    install -m 0644 ${WORKDIR}/kbdlayout.service ${D}/${base_libdir}/systemd/system/
}

NATIVE_SYSTEMD_SUPPORT = "1"
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE_${PN} = "kbdlayout.service"

FILES_${PN} += "${base_libdir}/systemd"

kbdlayout/kbdlayout.service:

[Unit]
Description=Loads custom keymap if available
ConditionPathExists=/etc/keymap.map

[Service]
ExecStart=/bin/sh -c '/usr/bin/loadkeys /etc/keymap.map'

[Install]
WantedBy=multi-user.target

И тогда вам нужно, чтобы ваш реальный файл макета (в моем случае de_CH-latin1.bmap) был помещен в папку kbdlayout помимо рецепта.

person flo    schedule 01.08.2015

Я пришел сюда с просьбой о том же, и я предполагаю, что вы, вероятно, исправили это, поскольку вопрос довольно старый. Я нашел ответ, просматривая рецепты, и вам нужно:

-включите пакет kbd-keymaps в любом месте (например, в вашем local.conf через IMAGE_INSTALL_append).

-проверьте /usr/share/keymaps/, чтобы увидеть, что там все есть.

- загрузите любую раскладку с помощью «loadkeys» (должно быть включено в ваш дистрибутив, если нет, принудительно сделайте это так же).

ХТН.

person Nikilator    schedule 22.02.2016