LINUX.ORG.RU

xxkb исчезает иконка раскладки

 


0

2

Почему то непредсказуемым образом исчезает иконка раскладки клавиатуры. Иногда полдня работает нормально, иногда через полчаса исчезает. Сама раскладка работает, но не показывает иконку. В каком файле смотреть ошибку или причину? Мой конфиг ниже.

XXkb.group.base: 1
XXkb.group.alt: 2
!XXkb.mainwindow.type: wmaker
XXkb.mainwindow.type: normal
XXkb.mainwindow.enable: yes
XXkb.mainwindow.in_tray: false
XXkb.mainwindow.label.enable: no
! Выключаем показ иконки xxkb в заголовках окон приложений
XXkb.mainwindow.appicon: no
! (!) Обязательно надо указать часть "+0+0"
XXkb.mainwindow.geometry: 108x73+0+0
! XXkb.mainwindow.border.width: 2
! XXkb.mainwindow.border.color: red
XXkb.image.path: /home/nail/.icons/flags/xxkb
! (!) Наличие всех 4 параметров в файле настроек обязательно.
XXkb.mainwindow.image.1: us.xpm
XXkb.mainwindow.image.2: ru.xpm
XXkb.mainwindow.image.3: br.xpm
XXkb.mainwindow.image.4: 
XXkb.button.enable: no 
XXkb.mousebutton.1.enable: no
! XXkb.ignore.reverse: yes
! Запрет закрытия окна
XXkb.controls.mainwindow_delete: no
XXkb.controls.two_state: no
XXkb.controls.add_when_start: yes
XXkb.controls.add_when_create: yes
XXkb.controls.add_when_change: yes
XXkb.controls.focusout: no

Если «иконка», значит про графику. Если про графику, значит используется какой-то Desktop Environment (DE). Если DE, то там есть компонента, которая отвечает за изображение раскладок. Если компонента, то у неё есть багтрекер. Туда-то тебя и отправят злые ЛОРовцы.

Einstok_Fair ★★☆ ()

У меня иконка пропадала в tint2 и fluxbox. Тоже почему то решил что это виновата XXkb, потом заметил что и parcellite иконка пропадает, но намного реже. Имхо, какая-то библиотека работающая с png или в чем там флажки и ошибке лет сто.

ilovewindows ★★★★★ ()
Ответ на: комментарий от ilovewindows

Я пользовал gxkb. Он ни разу не ломался, но сует иконку только в трей. xxkb тоже может в трей и там не ломается ничего. Но мне нужна возможность делать иконку в отдельном окне и нужного мне размера. Только xxkb может это. «Имхо, какая-то библиотека работающая с png или в чем там флажки и ошибке лет сто.» Скорее всего так. На другой машине, где просто стоит mint тоже самое. Дело стало быть не fvwm. В syslog есть такая инфа

May  1 17:00:57 nail-home systemd-coredump[17557]: Process 2027 (xxkb) of user 1000 dumped core.#012#012Stack trace of thread 2027:#012#0  0x00007f3a7679ee97 __GI_raise (libc.so.6)#012#1  0x00007f3a767a0801 __GI_abort (libc.so.6)#012#2  0x00007f3a767e9897 __libc_message (libc.so.6)#012#3  0x00007f3a767f090a malloc_printerr (libc.so.6)#012#4  0x00007f3a767f8004 _int_free (libc.so.6)#012#5  0x00007f3a77238d09 XFree (libX11.so.6)#012#6  0x000055d2e052706e n/a (xxkb)#012#7  0x00007f3a76781b97 __libc_start_main (libc.so.6)#012#8  0x000055d2e0527e3a n/a (xxkb)
А в xsession-errors повторяется постоянно «xxkb: Unknown event 15». В kern.log есть такая инфа
Apr 27 17:01:23 nail-home kernel: [352766.883521] xxkb[29663]: segfault at 80 ip 00007f2df2ddf207 sp 00007ffeb543ec40 error 4 in libc-2.27.so[7f2df2d48000+1e7000]
В других логах ничего более не нашел. Но что все это означает, загадка.

rustamych ★★★ ()
Ответ на: комментарий от rustamych

куда мне смотреть?

Я думаю, что в документацию по FVWM, что бы это такое не было. Посмотришь на неё, посмотришь и возможно что-нибудь найдёшь.

ничего не сказал по существу.

Другие люди тоже не сказали. А я хотя бы разговор поддержал.

Einstok_Fair ★★☆ ()
Ответ на: комментарий от Einstok_Fair

Дело не в fvwm. В mint тоже самое. Я в mint сделал даже кнопочку перезагрузки xxkb. В документации xxkb сказано, что в fvwm опробовано и хорошо работает. Вот бразильцы такие. Спросишь у них что-нибудь на дороге, ну там дом или улица или заведение. Он/она обязательно наговорит до хрена, хотя в конце признается, что не знает ничего по существу:). Без обиды, это так, шутка. Ментальность у них такая. Мне бы решение найти, но похоже решения нет. Библиотеки обновляются, а xxkb давно уже нет. Тут на лоре народ бывает очень продвинутый, мне не раз подсказывали. Хотя линухом пользуюсь с года наверно 98го, а может и раньше, но проблемы встречаются постоянно. Логи расшифровывать не умею.

rustamych ★★★ ()
Ответ на: комментарий от rustamych

В mint тоже самое.

В данном случае «то же» пишется раздельно.

Вот бразильцы такие. Спросишь у них что-нибудь на дороге, ну там дом или улица или заведение. Он/она обязательно наговорит до хрена, хотя в конце признается, что не знает ничего по существу:)

Я ничего не знаю по существу, если тебе от такого знания легче. Ты теперь знаешь всё обо мне - поможет ли это знание тебе решить твою проблему?

Дело не в fvwm.

Я посмотрел на кусок лога systemd, там где говорится про coredump в момент освобождения памяти, и увидел там слово _int_free, поэтому я согласен с тобой в том, что в коде программы xxkb есть ошибка в работе с памятью, которая приводит к падению этой программы. Т.е. согласен в том, что ошибку надо искать в xxkb, а не в fvwm. Однако! Как ты собираешься ошибку искать и устранять в коде программы?

Можно было бы, конечно, ограничится созданием баги в багтрекере xxkb. Кстати, где он? https://sourceforge.net/p/xxkb/bugs/

Но как ты понимаешь, ни один человек в мире не станет эту багу фиксить, так меня убеждает каждый на LOR.

похоже решения нет. Не обновляется xxkb давно уже.

Ну, на github есть форк 2018-го года актуальности: https://github.com/ramok/xxkb/wiki «this repository is collection useful patches from everywhere» и он там не один такой (можно багрепорт запостить во все такие репозитории, вдруг эти люди откликнутся?)

И тут переходим к фазе 2, а как, собственно выяснить, что вообще происходит?

Варианты действий:

  1. посмотреть, как создавать программы для fvwm таким образом, чтобы иконка добавлялась к окну приложения
  2. посмотреть как то же самое делается в mint (какое там DE?)
  3. затем посмотреть на код fvwm и подумать, чем написанное там отличается от представляемого по документации.

После этого снова прийти написать на LOR с более конкретными вопросами о том, что именно непонятно в коде xxkb.

Почему я думаю, что ошибка в управлении какими-то ресурсами? Мне кажется подозрительным слово _int_free (libc.so.6)#012#5

стековерфлоу на эту тему говорит: https://stackoverflow.com/questions/43442362/core-dump-in-int-free-at-malloc-c3902-all-executables (вопрос без ответа, но с кучей встречных уточняющих вопросов)

Я бы начал с того, что разобрался бы, как компилируется эта программа, а так же, как сделать чтобы дамп стека был с бо́льшим количеством отладочной информации. В генте с этим хорошо, ебилд есть. Но я не буду его ставить, потому что понятия не имею, что в системе от этого сломается, а оно мне надо? Т.е. чтобы мне начать пользоваться xxkb, надо сначала понять, как отключить штатный переключатель раскладок в mate, которым я пользуюсь.

Einstok_Fair ★★☆ ()
Последнее исправление: Einstok_Fair (всего исправлений: 1)
Ответ на: комментарий от rustamych

Пересобери xxkb с дебагом, запускай с ulimit -c unlimited (либо подправь limits.conf), проверь, чтобы не было никаких пайпов в /proc/sys/kernel/core_pattern. Как упадёт корка, бери в зубы gdb и вперёд.

DELIRIUM ☆☆☆☆☆ ()