Re: LoLo Switcher v.0.15, v.0.20, v.0.28
Заставили напрягать мозги.
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форум сайта Webhamster.ru → Прочие проекты/разработки → LoLo Switcher v.0.15, v.0.20, v.0.28
Заставили напрягать мозги.
Да, он многим нравится.
Недавно начал пользоваться ubuntu и не могу установить lolo switcher. Помогите, пожалуйста.
Подскажите, а в консоли его можно заставить работать? И если можно, то как это сделать. Devuan Ascii (на базе Debian Stretch)
Подскажите, а в консоли его можно заставить работать? И если можно, то как это сделать. Devuan Ascii (на базе Debian Stretch)
Это переключатель для X-систем. То есть в чистой консоли он работать не будет. А в консоли при запущенных иксах работает. Для переключения языков в нем используются вызовы функций из X-библиотек.
помогите решить проблему
пользуюсь loloswitcher уже больше года, никаких проблем не возникало, система Devuan Ascii (на базе Debian Stretch), сегодня включаю ноутбук - раскладка не переключается, в процессах нет, запускаю руками:
~$ /usr/sbin/loloswitcher
Couldn't open input device , may be permission denied
заменил бинарник на v.0.28, назначил права:
~$ sudo chown root:root /usr/sbin/loloswitcher
~$ sudo chmod u+s /usr/sbin/loloswitcher
не работает
добавил пользователя в группу input:
~$ sudo gpasswd --add ${USER} input
не помогло
устройство в конфиге - /dev/input/event0 - указано верно:
~$ sudo input-events 0
/dev/input/event0
bustype : BUS_I8042
vendor : 0x1
product : 0x1
version : 43841
name : "AT Translated Set 2 keyboard"
phys : "isa0060/serio0/input0"
bits ev : (null) (null) (null) (null) (null)
loloswitcher запускается только от рута
помогите решить проблему
пользуюсь loloswitcher уже больше года, никаких проблем не возникало, система Devuan Ascii (на базе Debian Stretch), сегодня включаю ноутбук - раскладка не переключается, в процессах нет, запускаю руками:
~$ /usr/sbin/loloswitcher Couldn't open input device , may be permission denied
устройство в конфиге - /dev/input/event0 - указано верно:
~$ sudo input-events 0 /dev/input/event0 bustype : BUS_I8042 vendor : 0x1 product : 0x1 version : 43841 name : "AT Translated Set 2 keyboard" phys : "isa0060/serio0/input0" bits ev : (null) (null) (null) (null) (null)
loloswitcher запускается только от рута
На ноутбуке вы скорее всего втыкаете еще какие-нибудь USB-устройства. И из-за этого меняется его номер. Лучше указывать устройство по его идентификатору, примерно так:
InputDevice=/dev/input/by-id/usb-SIGMACH1P_USB_Keykoard-event-kbd
Появились сборки LoLoSwitcher для Puppyrus:
https://mirror.yandex.ru/puppyrus/puppy … 4-kn01.pfs
https://mirror.yandex.ru/puppyrus/puppy … 4-kn01.pfs
https://mirror.yandex.ru/puppyrus/puppy … s-kn01.pfs
https://mirror.yandex.ru/puppyrus/puppy … s-kn01.pfs
Имя пользователя не помню, т.к. случайно удалил его тему в неправильной ветке форума (отзовись, любезный).
Сразу напишу, что проблема решилась.
Loloswitcher перестал запускаться от обычного пользователя после обновления udev (других причин я просто не нахожу). Решилось удалением пакетов на autoremove и перезагрузкой. Из того, что хоть как-то связано с клавиатурой/портами/устройствами, там был только usb-modeswitch. Но до этого ведь всё работало.
На ноутбуке вы скорее всего втыкаете еще какие-нибудь USB-устройства. И из-за этого меняется его номер. Лучше указывать устройство по его идентификатору
Это первое, что я хотел сделать, но его вообще нет (что сейчас, что тогда):
~$ ls -l /dev/input/by-id
total 0
lrwxrwxrwx 1 root root 9 Sep 25 09:31 usb-A4TECH_USB_Device-event-kbd -> ../event5
lrwxrwxrwx 1 root root 9 Sep 25 09:31 usb-A4TECH_USB_Device-if01-event-mouse -> ../event6
lrwxrwxrwx 1 root root 9 Sep 25 09:31 usb-A4TECH_USB_Device-if01-mouse -> ../mouse0
lrwxrwxrwx 1 root root 10 Sep 25 09:31 usb-Lenovo_Corp.._Lenovo_EasyCamera-event-if00 -> ../event13
К ноутбуку постоянно подключен адаптер беспроводной мышки A4TECH, которая определяется у меня как клавиатура. Гугл пишет, что это очень проблемные мышки, которые часто определяются как джойстики, клавиатуры и пр. Я пробовал загружаться без адаптера, но loloswitcher всё равно не запускался. Больше никаких внешних устройств не подключаю.
Логи:
~$ sudo dmesg | grep keyboard
[ 4.289567] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input0
~$ sudo dmesg | grep A4TECH
[ 5.359417] usb 2-2: Manufacturer: A4TECH
[ 5.379272] input: A4TECH USB Device as /devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2:1.0/0003:09DA:054F.0001/input/input7
[ 5.436901] hid-generic 0003:09DA:054F.0001: input,hiddev0,hidraw0: USB HID v1.11 Keyboard [A4TECH USB Device] on usb-0000:00:1d.0-2/input0
[ 5.438294] input: A4TECH USB Device as /devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2:1.1/0003:09DA:054F.0002/input/input8
[ 5.438692] hid-generic 0003:09DA:054F.0002: input,hidraw1: USB HID v1.11 Mouse [A4TECH USB Device] on usb-0000:00:1d.0-2/input1
~$ cat /var/log/Xorg.0.log | grep keyboard
[ 29.442] (**) Power Button: Applying InputClass "libinput keyboard catchall"
[ 29.507] (II) input device 'Power Button', /dev/input/event4 is a keyboard
[ 29.633] (II) input device 'Power Button', /dev/input/event4 is a keyboard
[ 29.634] (**) Video Bus: Applying InputClass "libinput keyboard catchall"
[ 29.635] (II) input device 'Video Bus', /dev/input/event14 is a keyboard
[ 29.656] (II) input device 'Video Bus', /dev/input/event14 is a keyboard
[ 29.659] (**) Power Button: Applying InputClass "libinput keyboard catchall"
[ 29.661] (II) input device 'Power Button', /dev/input/event3 is a keyboard
[ 29.688] (II) input device 'Power Button', /dev/input/event3 is a keyboard
[ 29.691] (**) Sleep Button: Applying InputClass "libinput keyboard catchall"
[ 29.693] (II) input device 'Sleep Button', /dev/input/event1 is a keyboard
[ 29.728] (II) input device 'Sleep Button', /dev/input/event1 is a keyboard
[ 29.737] (**) A4TECH USB Device: Applying InputClass "libinput keyboard catchall"
[ 29.740] (II) input device 'A4TECH USB Device', /dev/input/event5 is a keyboard
[ 29.761] (II) input device 'A4TECH USB Device', /dev/input/event5 is a keyboard
[ 29.926] (**) Lenovo EasyCamera: Applying InputClass "libinput keyboard catchall"
[ 29.928] (II) input device 'Lenovo EasyCamera', /dev/input/event13 is a keyboard
[ 29.970] (II) input device 'Lenovo EasyCamera', /dev/input/event13 is a keyboard
[ 29.972] (**) Ideapad extra buttons: Applying InputClass "libinput keyboard catchall"
[ 29.992] (II) input device 'Ideapad extra buttons', /dev/input/event12 is a keyboard
[ 30.010] (II) input device 'Ideapad extra buttons', /dev/input/event12 is a keyboard
[ 30.011] (II) config/udev: Adding input device AT Translated Set 2 keyboard (/dev/input/event0)
[ 30.011] (**) AT Translated Set 2 keyboard: Applying InputClass "libinput keyboard catchall"
[ 30.012] (II) Using input driver 'libinput' for 'AT Translated Set 2 keyboard'
[ 30.012] (**) AT Translated Set 2 keyboard: always reports core events
[ 30.013] (II) input device 'AT Translated Set 2 keyboard', /dev/input/event0 is tagged by udev as: Keyboard
[ 30.013] (II) input device 'AT Translated Set 2 keyboard', /dev/input/event0 is a keyboard
[ 30.040] (II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard" (type: KEYBOARD, id 14)
[ 30.042] (II) input device 'AT Translated Set 2 keyboard', /dev/input/event0 is tagged by udev as: Keyboard
[ 30.042] (II) input device 'AT Translated Set 2 keyboard', /dev/input/event0 is a keyboard
[ 30.193] (**) A4TECH USB Device: Applying InputClass "libinput keyboard catchall"
~$ cat /var/log/Xorg.0.log | grep A4TECH
[ 29.737] (II) config/udev: Adding input device A4TECH USB Device (/dev/input/event5)
[ 29.737] (**) A4TECH USB Device: Applying InputClass "libinput keyboard catchall"
[ 29.737] (II) Using input driver 'libinput' for 'A4TECH USB Device'
[ 29.738] (**) A4TECH USB Device: always reports core events
[ 29.740] (II) input device 'A4TECH USB Device', /dev/input/event5 is tagged by udev as: Keyboard
[ 29.740] (II) input device 'A4TECH USB Device', /dev/input/event5 is a keyboard
[ 29.756] (II) libinput: A4TECH USB Device: needs a virtual subdevice
[ 29.756] (II) XINPUT: Adding extended input device "A4TECH USB Device" (type: MOUSE, id 10)
[ 29.758] (**) A4TECH USB Device: (accel) selected scheme none/0
[ 29.758] (**) A4TECH USB Device: (accel) acceleration factor: 2.000
[ 29.758] (**) A4TECH USB Device: (accel) acceleration threshold: 4
[ 29.760] (II) input device 'A4TECH USB Device', /dev/input/event5 is tagged by udev as: Keyboard
[ 29.761] (II) input device 'A4TECH USB Device', /dev/input/event5 is a keyboard
[ 29.763] (II) config/udev: Adding input device A4TECH USB Device (/dev/input/event6)
[ 29.764] (**) A4TECH USB Device: Applying InputClass "libinput pointer catchall"
[ 29.764] (II) Using input driver 'libinput' for 'A4TECH USB Device'
[ 29.764] (**) A4TECH USB Device: always reports core events
[ 29.825] (II) input device 'A4TECH USB Device', /dev/input/event6 is tagged by udev as: Mouse
[ 29.825] (II) input device 'A4TECH USB Device', /dev/input/event6 is a pointer caps
[ 29.865] (II) XINPUT: Adding extended input device "A4TECH USB Device" (type: MOUSE, id 11)
[ 29.866] (**) A4TECH USB Device: (accel) selected scheme none/0
[ 29.866] (**) A4TECH USB Device: (accel) acceleration factor: 2.000
[ 29.866] (**) A4TECH USB Device: (accel) acceleration threshold: 4
[ 29.924] (II) input device 'A4TECH USB Device', /dev/input/event6 is tagged by udev as: Mouse
[ 29.924] (II) input device 'A4TECH USB Device', /dev/input/event6 is a pointer caps
[ 29.925] (II) config/udev: Adding input device A4TECH USB Device (/dev/input/mouse0)
[ 30.193] (**) A4TECH USB Device: Applying InputClass "libinput keyboard catchall"
[ 30.193] (II) Using input driver 'libinput' for 'A4TECH USB Device'
[ 30.193] (**) A4TECH USB Device: always reports core events
[ 30.193] (II) libinput: A4TECH USB Device: is a virtual subdevice
[ 30.193] (II) XINPUT: Adding extended input device "A4TECH USB Device" (type: KEYBOARD, id 16)
Нашел вот такой вариант с правилом для udev:
~$ cat /etc/udev/rules.d/99-remove-a4tech-joystick.rules
SUBSYSTEMS=="usb", ATTRS{bInterfaceProtocol}=="01", ATTRS{bInterfaceNumber}=="00", ENV{ID_VENDOR_ID}=="09da", ENV{ID_MODEL_ID}=="9090", ENV{ID_VENDOR_ENC}=="A4TECH", RUN:="/bin/sh -c '/bin/rm -f $env{DEVNAME}; for i in $env{DEVLINKS}; do /bin/rm -f $i; done'", SYMLINK:="", OPTIONS+="last_rule"
Что тут происходит - при обнаружении устройства по заданным параметрам, удаляется файл этого устройства и все симлинки на него. Опция last_rule говорит, что это правильно должно быть последним.
Подставил свои значения, перезагрузился, но линка на /dev/input/event0 (клавиатура) как не было, так и нет:
~$ ls -l /dev/input/by-id
total 0
lrwxrwxrwx 1 root root 9 Sep 25 13:34 usb-A4TECH_USB_Device-if01-event-mouse -> ../event6
lrwxrwxrwx 1 root root 9 Sep 25 13:34 usb-A4TECH_USB_Device-if01-mouse -> ../mouse0
lrwxrwxrwx 1 root root 10 Sep 25 13:34 usb-Lenovo_Corp.._Lenovo_EasyCamera-event-if00 -> ../event10
Логи (после создания правила):
~$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ A4TECH USB Device id=10 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech Touchpad id=14 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ Lenovo EasyCamera id=11 [slave keyboard (3)]
↳ Ideapad extra buttons id=12 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=13 [slave keyboard (3)]
~$ cat /var/log/Xorg.0.log | grep A4TECH
[ 29.063] (II) config/udev: Adding input device A4TECH USB Device (/dev/input/event5)
[ 29.063] (**) A4TECH USB Device: Applying InputClass "libinput keyboard catchall"
[ 29.063] (II) Using input driver 'libinput' for 'A4TECH USB Device'
[ 29.064] (**) A4TECH USB Device: always reports core events
[ 29.064] (EE) libinput: A4TECH USB Device: Failed to create a device for /dev/input/event5
[ 29.064] (EE) PreInit returned 2 for "A4TECH USB Device"
[ 29.066] (II) config/udev: Adding input device A4TECH USB Device (/dev/input/event6)
[ 29.066] (**) A4TECH USB Device: Applying InputClass "libinput pointer catchall"
[ 29.066] (II) Using input driver 'libinput' for 'A4TECH USB Device'
[ 29.066] (**) A4TECH USB Device: always reports core events
[ 29.124] (II) input device 'A4TECH USB Device', /dev/input/event6 is tagged by udev as: Mouse
[ 29.124] (II) input device 'A4TECH USB Device', /dev/input/event6 is a pointer caps
[ 29.164] (II) XINPUT: Adding extended input device "A4TECH USB Device" (type: MOUSE, id 10)
[ 29.165] (**) A4TECH USB Device: (accel) selected scheme none/0
[ 29.165] (**) A4TECH USB Device: (accel) acceleration factor: 2.000
[ 29.165] (**) A4TECH USB Device: (accel) acceleration threshold: 4
[ 29.225] (II) input device 'A4TECH USB Device', /dev/input/event6 is tagged by udev as: Mouse
[ 29.226] (II) input device 'A4TECH USB Device', /dev/input/event6 is a pointer caps
[ 29.229] (II) config/udev: Adding input device A4TECH USB Device (/dev/input/mouse0)
~$ cat /var/log/Xorg.0.log | grep keyboard
[ 28.787] (**) Power Button: Applying InputClass "libinput keyboard catchall"
[ 28.856] (II) input device 'Power Button', /dev/input/event4 is a keyboard
[ 28.983] (II) input device 'Power Button', /dev/input/event4 is a keyboard
[ 28.984] (**) Video Bus: Applying InputClass "libinput keyboard catchall"
[ 28.986] (II) input device 'Video Bus', /dev/input/event11 is a keyboard
[ 29.005] (II) input device 'Video Bus', /dev/input/event11 is a keyboard
[ 29.008] (**) Power Button: Applying InputClass "libinput keyboard catchall"
[ 29.009] (II) input device 'Power Button', /dev/input/event3 is a keyboard
[ 29.026] (II) input device 'Power Button', /dev/input/event3 is a keyboard
[ 29.028] (**) Sleep Button: Applying InputClass "libinput keyboard catchall"
[ 29.029] (II) input device 'Sleep Button', /dev/input/event1 is a keyboard
[ 29.056] (II) input device 'Sleep Button', /dev/input/event1 is a keyboard
[ 29.063] (**) A4TECH USB Device: Applying InputClass "libinput keyboard catchall"
[ 29.231] (**) Lenovo EasyCamera: Applying InputClass "libinput keyboard catchall"
[ 29.232] (II) input device 'Lenovo EasyCamera', /dev/input/event10 is a keyboard
[ 29.276] (II) input device 'Lenovo EasyCamera', /dev/input/event10 is a keyboard
[ 29.278] (**) Ideapad extra buttons: Applying InputClass "libinput keyboard catchall"
[ 29.279] (II) input device 'Ideapad extra buttons', /dev/input/event9 is a keyboard
[ 29.303] (II) input device 'Ideapad extra buttons', /dev/input/event9 is a keyboard
[ 29.304] (II) config/udev: Adding input device AT Translated Set 2 keyboard (/dev/input/event0)
[ 29.304] (**) AT Translated Set 2 keyboard: Applying InputClass "libinput keyboard catchall"
[ 29.304] (II) Using input driver 'libinput' for 'AT Translated Set 2 keyboard'
[ 29.304] (**) AT Translated Set 2 keyboard: always reports core events
[ 29.320] (II) input device 'AT Translated Set 2 keyboard', /dev/input/event0 is tagged by udev as: Keyboard
[ 29.320] (II) input device 'AT Translated Set 2 keyboard', /dev/input/event0 is a keyboard
[ 29.344] (II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard" (type: KEYBOARD, id 13)
[ 29.345] (II) input device 'AT Translated Set 2 keyboard', /dev/input/event0 is tagged by udev as: Keyboard
[ 29.346] (II) input device 'AT Translated Set 2 keyboard', /dev/input/event0 is a keyboard
Может подскажите что-нибудь дельное. Сейчас то всё работает, но хотелось бы разобраться.
Может подскажите что-нибудь дельное. Сейчас то всё работает, но хотелось бы разобраться.
Я в этих делах некомпетентен. Я как программист просто работаю с файлом устройства и все. А откуда он появляется и как создается в системе - мне не ведомо. Это надо на ЛОР или Опеннет писать, там сидят люди, которых хлебом не корми, а дай поковыряться с правилами UDEV.
Появились сборки LoLoSwitcher для Puppyrus:
https://mirror.yandex.ru/puppyrus/puppy … 4-kn01.pfs
https://mirror.yandex.ru/puppyrus/puppy … 4-kn01.pfshttps://mirror.yandex.ru/puppyrus/puppy … s-kn01.pfs
https://mirror.yandex.ru/puppyrus/puppy … s-kn01.pfs
.
Это точнее для puppyrus-A (модульного live-дистрибутива). Модули эти пока не портированы(и поэтому иногда, изредка, "в некоторых обстоятельствах" "отваливаются").
Для puppy и puppyrus собирал также пока непортированный модуль (32-бит) - ссылку выложу позже.
p.s. Регулярно пользуюсь - еще раз спасибо Вам.
Для puppy и puppyrus собирал также пока непортированный модуль (32-бит) - ссылку выложу позже.
http://file.puppyrus.org/users/pr/lolos … s-kn01.pfs
https://yadi.sk/d/2RQt41It3Z2aYR
(т.к. модуль не портирован - не факт, что подойдет для всех puppy)
Ау, PR кто-то принимает?
И в гостевой книге нагажено.
Ау, PR кто-то принимает?
На официальной странице странице проекта MyTetra:
PayPal: https://www.paypal.me/SMStepanov
WMZ: Z586949314665
WMR: R855578576252
BTC: 13U5ZWfifBs1XDzJYRmwCjUqFqz3LEwPar
ETH: 0x5FB23243c77FAb8f13C46941c112cF5E9E8483A8
И в гостевой книге нагажено.
Почистим, я за всеми не успеваю.
Здравствуйте. Можно ли как то указыть два InputDevice? Я иногда работаю за внешней usb клавиатурой иногда просто за ноутбуком (встроеной клавиатурой). Каждый раз приходится менять конфигурацию. Может можно запустить два екземляра программы с разными конфигами? Спасибо.
Форум сайта Webhamster.ru → Прочие проекты/разработки → LoLo Switcher v.0.15, v.0.20, v.0.28
Форум работает на PunBB, при поддержке Informer Technologies, Inc
Currently installed 2 official extensions. Copyright © 2003–2009 PunBB.
Сгенерировано за 0.042 секунды (92% PHP — 8% БД) 7 запросов к базе данных