[решено] локализация Xorg через udev правила

xorg localization via udev rules
anyone have a suggestion how to write udev rule for english and russian layout?

если нужны настройки через

если нужны настройки через через /etc/X11/xorg.conf.d
то cat /etc/X11/xorg.conf.d/01-keyboard-layout.conf

#
# 01-keyboard-layout.conf: how to set the keyboard layout via X (FIXME: couldbe
# done by udev instead, but I don't know how)
#
Section "InputClass"
   Identifier "Keyboard Defaults"
   MatchIsKeyboard "yes"
   Option "XkbLayout" "us,ru(winkeys)"
   Option "XkbOptions" "terminate:ctrl_alt_bksp,grp:alt_shift_toggle,compose:rwin,grp_led:scroll"
   Option "XkbModel" "pc105"
   Option "GrabDevice" "True"
EndSection
#
# END of 01-keyboard-layout.conf
#

если более старые версии Xorg, то смотреть тут https://wiki.archlinux.org/index.php/Xorg

xorg.conf != udev

xorg.conf.d is used most often, agree.
I would like to configure layout via udev
similar to https://wiki.kubuntu.org/X/InputConfiguration
Just though someone already have a solution.

UPD:

/etc/udev/rules.d/111-kbd.ru.rules:
## via Xorg
ACTION=="add", KERNEL=="event?", SUBSYSTEMS=="usb",ATTRS{idVendor}=="ffff", ATTRS{idProduct}=="8081",RUN+="/usr/bin/setxkbmap -model 102 -layout ru"
ACTION=="remove", KERNEL=="event?", SUBSYSTEMS=="usb", ATTRS{idVendor}=="ffff", ATTRS{idProduct}=="8081", RUN+="/usr/bin/setxkbmap -model 102 -layout us_intl"

eegorov@egorov-ey ~ $ cat

eegorov@egorov-ey ~ $ cat /etc/udev/rules.d/75-x11-input.rules 
SUBSYSTEM!="input", GOTO="x11_input_end"
ACTION!="change|add", GOTO="x11_input_end"
KERNEL!="event*", GOTO="x11_input_end"

ENV{x11_driver}="evdev"

ENV{ID_INPUT_KEYBOARD}=="?*"
ENV{xkbmodel}="evdev"
ENV{xkblayout}="us,ru"
ENV{xkbvariant}=",winkeys"
ENV{xkboptions}="grp:rwin_toggle,grp_led:scroll,compose:ralt"

LABEL="x11_input_end"

спасибо

отлично подошло, только я на capslock повесил.
большое спасибо.

.

eegorov написал(а):
eegorov@egorov-ey ~ $ cat /etc/udev/rules.d/75-x11-input.rules 
SUBSYSTEM!="input", GOTO="x11_input_end"
ACTION!="change|add", GOTO="x11_input_end"
KERNEL!="event*", GOTO="x11_input_end"

ENV{x11_driver}="evdev"

ENV{ID_INPUT_KEYBOARD}=="?*"
ENV{xkbmodel}="evdev"
ENV{xkblayout}="us,ru"
ENV{xkbvariant}=",winkeys"
ENV{xkboptions}="grp:rwin_toggle,grp_led:scroll,compose:ralt"

LABEL="x11_input_end"

Изящно (красивее варианта Дмитрия).
Но в таком виде не вполне понятны причины предпочтения конфигурации клавиатуры средствами удава.

ЗЫ: Не поделишься рыбным местом? Что/как читать на предмет познания принципов написания правил udev?

:wq
--
Live free or die

Это правило на моей рабочей

Это правило на моей рабочей машине еще со времен перехода xorg-server с hal на udev. Писал его не сам. Нашел где-то тут, на форуме (подправил только параметры переключения раскладки). Так как оно работает, я и не стал прописывать это в конфиг. На новых инсталляциях я уже с конфиг пишу.
Про то, как писать правила, можешь почитать тут

/

Dmitri написал(а):
xorg.conf.d is used most often, agree.
I would like to configure layout via udev

А можно прояснить: в чём profit настройки переключения раскладок через удава? Интересно.

ЗЫ: Ты не сказал, что оно предполагает наличие установленного x11-apps/setxkbmap. :)

Update: почитав понял. :) Фишка в отсутствии русских символов на штатной клавиатуре и отработке подключения внешней правильной USB. :)

:wq
--
Live free or die

udev for console and xorg?

а разве есть возможность определить правила udev для русской раскладки, как в консоли, так и в xorg?
так сказать, одним выстрелом двух зайцев ...

ЗЫ: печатаю я вслепую на встроенной клаве (русских буковок не наклеено)

консоль русифицируется

консоль русифицируется отдельно, она не зависит от udev, потому что его может вполне себе и не быть, а консоль работать будет :-)

Нейтральность - высшее достижение сознания!

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".