Bug 25713

Summary: Не отображает иконок беспроводного интерфейса
Product: Sisyphus Reporter: Roman Savochenko <rom_as>
Component: NetworkManager-applet-gtkAssignee: Mikhail Efremov <sem>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: aen, aris, mike, ruslandh, sem, vasya_lebedev, vladiboc
Version: unstable   
Hardware: all   
OS: Linux   
Attachments:
Description Flags
Иконки NM none

Description Roman Savochenko 2011-06-03 10:32:07 MSK
В системном лотке, в месте аплета NM пустое место.
Однако с другой стороны, в списке соединений, по клику левой кнопкой мыши, напротив, справа, беспроводного соединения имеем маленькую иконку смасштабированную до размера около 100px*100px.
Comment 1 Mikhail Efremov 2011-06-06 21:35:02 MSK
У меня не воспроизводится. Какой DE?
Comment 2 Roman Savochenko 2011-06-07 07:45:29 MSK
Created attachment 4963 [details]
Иконки NM

DE: KDE 4.
Прикладываю экран для демонстрации. Воспроизводится на x86 и x86_64.
Comment 3 Roman Savochenko 2012-05-15 22:45:48 MSK
Сейчас, на Сизифе, аплет NetworkManager у меня даже не появляется в системном лотке, только и живу автоматическим подключением, при загрузке Сизифа. :)
Comment 4 Mikhail Efremov 2012-05-16 03:15:05 MSK
А nm-applet запущен вообще?
Comment 5 Roman Savochenko 2012-05-16 10:33:21 MSK
(В ответ на комментарий №4)
> А nm-applet запущен вообще?
Нет, кстати почему апплет автоматом не запускается тоже вопрос.
При запуске руками в KDE4, он как-то появляется, а в KDE3(TDE) не появляется, точнее если посмотреть в настройках системного лотка то он там якобы есть, а реально нет, наверное иконки не выставляет.
Comment 6 Roman Savochenko 2012-05-24 19:07:36 MSK
(В ответ на комментарий №5)
> При запуске руками в KDE4, он как-то появляется, а в KDE3(TDE) не появляется,
> точнее если посмотреть в настройках системного лотка то он там якобы есть, а
> реально нет, наверное иконки не выставляет.
В консоли KDE3 имеем, на предмет отсутствия иконки:
** Message: applet now removed from the notification area
** Message: applet now embedded in the notification area

(nm-applet:6362): GdkPixbuf-CRITICAL **: gdk_pixbuf_scale_simple: assertion `dest_width > 0' failed

** (nm-applet:6362): WARNING **: Failed to register as an agent: (32) Session not found

(nm-applet:6362): GdkPixbuf-CRITICAL **: gdk_pixbuf_scale_simple: assertion `dest_width > 0' failed

(nm-applet:6362): GdkPixbuf-CRITICAL **: gdk_pixbuf_scale_simple: assertion `dest_width > 0' failed
Comment 7 Roman Savochenko 2012-11-13 11:11:32 MSK
Сейчас там иконка размером примерно 5x5.
Судя по всему это общая проблема библиотеки Gnome поскольку подобное замечено у навязанного iBus.
Comment 8 Mikhail Efremov 2013-01-08 15:34:11 MSK
*** Bug 28316 has been marked as a duplicate of this bug. ***
Comment 9 Vladislav Bochkarev 2013-09-03 13:06:59 MSK
p7 TDE. Устанавливал StartKit.
Сразу после установки аплет Network-Manager выглядел как точка.
Исправлялось так:
Если запустить Центр управления KDE, увеличить и уменьшить обратно шрифт,
нажать актировавшуюся кнопку "Применить", значок NetworkManager становился
нормальным в системном лотке.
Потом доставил пакеты hal hal-info dmidecode, и значок перестал восстанавливаться.
Удалил эти пакеты, значек по-прежнему не восстанавливается
Comment 10 Roman Savochenko 2013-09-03 14:32:35 MSK
(В ответ на комментарий №9)
> p7 TDE. Устанавливал StartKit.
> Сразу после установки аплет Network-Manager выглядел как точка.
> Исправлялось так:
> Если запустить Центр управления KDE, увеличить и уменьшить обратно шрифт,
> нажать актировавшуюся кнопку "Применить", значок NetworkManager становился
> нормальным в системном лотке.
Ну да, событие Resize к XEmbed приложению пришло.

> Потом доставил пакеты hal hal-info dmidecode, и значок перестал
> восстанавливаться.
> Удалил эти пакеты, значек по-прежнему не восстанавливается
Это потому что там проблема сдвоенная:
- не шлются Resize события при встраивании иконки в XEmbed — иконка 4x4
- странные манипуляции с Pixmap иконкой - иногда, чаще всего первый раз, не отображается.

В целом это GTK3 пытается навязать всем остальным новое поведение. Где с первым можно согласиться и оно исправляется (локально у себя исправил), то второе исправляется только изучением когда и что рисует QPainter соотносительно к изменению Pixmap в XEmbed.

Вторая проблема была актуальна и в KDE4/QT4, как там сейчас и как бороли я не разбирался ещё, но по постам информации о том, что это решили не встречал.

В целом эта бага здесь: http://bugs.trinitydesktop.org/show_bug.cgi?id=1644
Comment 11 Vladislav Bochkarev 2013-09-03 15:22:02 MSK
> > Если запустить Центр управления KDE, увеличить и уменьшить обратно шрифт,
> > нажать актировавшуюся кнопку "Применить", значок NetworkManager становился
> > нормальным в системном лотке.
> Ну да, событие Resize к XEmbed приложению пришло.
> 
Как можно отправить сообщение Resize к XEmbed приложению из командной строки?
Comment 12 Vladislav Bochkarev 2013-09-03 17:06:04 MSK
А так значок появляется гарантировано, и при установленном hal тоже:

Центр управления KDE - Внешний вид и темы - Значки - поставил Tango вместо Crystal SVG - появился нормальный значек Network Manager.
Comment 13 Roman Savochenko 2013-09-03 17:57:30 MSK
(В ответ на комментарий №11)
> Как можно отправить сообщение Resize к XEmbed приложению из командной строки?
Не знаю, не отправлял.

>А так значок появляется гарантировано, и при установленном hal тоже:
>Центр управления KDE - Внешний вид и темы - Значки - поставил Tango вместо
>Crystal SVG - появился нормальный значек Network Manager.
Причём тут hal не hal? Я Вам чётко сказал, что он появляется при событиях обновления, но также может и исчезать. Вы перегрузитесь с "Tango" и увидите, что его опять не станет!
Comment 14 Vladislav Bochkarev 2013-09-03 19:12:24 MSK
> ... с первым можно согласиться и оно исправляется (локально у себя исправил) ...

Пожалуйста, скажите как Вы исправили это локально.
Comment 15 Roman Savochenko 2013-09-03 21:26:03 MSK
(В ответ на комментарий №14)
> > ... с первым можно согласиться и оно исправляется (локально у себя исправил) > Пожалуйста, скажите как Вы исправили это локально.
Исправил исходник и собрал, тут: ftp://ftp.oscada.org/ALTLinux/Sisyphus/new/RPMS.roman/
Comment 16 Vladislav Bochkarev 2013-09-04 17:51:14 MSK
(В ответ на комментарий №13)
> (В ответ на комментарий №11)
> > Как можно отправить сообщение Resize к XEmbed приложению из командной строки?
> Не знаю, не отправлял.
А на C Вы отправляли сообщение Resize к XEmbed приложению?
Comment 17 Roman Savochenko 2013-09-04 18:18:34 MSK
(В ответ на комментарий №16)
> А на C Вы отправляли сообщение Resize к XEmbed приложению?
Нет, я поправил Kicker:systemtray, чтобы он принудительно устанавливал размер при встраивании программы в лоток, а не наоборот брал его у программы, что в случае с GTK3 как раз и приводит к дефолтному размеру 4x4.
Comment 18 Vladislav Bochkarev 2013-09-04 18:40:00 MSK
> Исправил исходник и собрал, тут:
> ftp://ftp.oscada.org/ALTLinux/Sisyphus/new/RPMS.roman/
Поставил эти пакеты, все работает. Спасибо.
Comment 19 Mikhail Efremov 2013-09-04 18:50:58 MSK
Возможно это имеет отношение к https://bugzilla.gnome.org/show_bug.cgi?id=698901.
Правда там речь не про KDE.
Comment 20 ruslandh 2013-09-04 19:18:56 MSK
Миша, а в рамках Сизифа и p7 это можно пересобрать? Roman Savochenko а вы в виде патча это можете оформить?
Comment 21 ruslandh 2013-09-04 19:23:22 MSK
Ага, похожая бага.
Comment 22 Roman Savochenko 2013-09-04 19:45:59 MSK
(В ответ на комментарий №20)
> Миша, а в рамках Сизифа и p7 это можно пересобрать? Roman Savochenko а вы в
> виде патча это можете оформить?
Оно и оформлено в виде патча, я просто локально это не осмыслил в контексте того, что NetworkManager-gnome ещё чего-то типа PolKit для своей работы требует. Т.е. хотел добиться его работы под TDE в Сизифе, а затем влить всё.
Comment 23 Mikhail Efremov 2013-09-04 20:40:48 MSK
(В ответ на комментарий №20)
> Миша, а в рамках Сизифа и p7 это можно пересобрать?

Что пересобрать? Если KDE, то это не ко мне. А патч из гномовской багзиллы уже есть в версии 0.9.8.2. Только там же в баге написано, что не помогает он.
Comment 24 ruslandh 2013-09-04 20:41:24 MSK
Так вроде для этого достаточно запустить polkit-gnome-authentication-agent-1, или вы что-то ещё хотите сделать?
Comment 25 ruslandh 2013-09-04 20:43:31 MSK
Тогда этот баг надо на KDE3 перевесить
Comment 26 Roman Savochenko 2013-09-04 22:07:07 MSK
(В ответ на комментарий №24)
> Так вроде для этого достаточно запустить polkit-gnome-authentication-agent-1,
> или вы что-то ещё хотите сделать?
Вроде и достаточно, но вот где его "из коробки" запускать, вместе с nm-applet.
Comment 27 Roman Savochenko 2013-09-04 22:08:06 MSK
(В ответ на комментарий №25)
> Тогда этот баг надо на KDE3 перевесить
А может тогда на первоисточник проблемы, на GTK3? :)
Comment 28 Yuri N. Sedunov 2013-09-04 22:27:26 MSK
(In reply to comment #27)
> (В ответ на комментарий №25)
> > Тогда этот баг надо на KDE3 перевесить
> А может тогда на первоисточник проблемы, на GTK3? :)

Если только в апстрм.
Comment 29 ruslandh 2013-09-04 22:40:26 MSK
Какое им дело до проблем TDE?
Comment 30 Roman Savochenko 2013-09-04 22:45:53 MSK
(В ответ на комментарий №29)
> Какое им дело до проблем TDE?
Ага, и проблем других. Судя по всему их вообще не интересует как их программы в системный лоток других DE включается. :)
Только мне тогда не понятно зачем программы, которые гипотетически могут запускаться из других DE, собирать с GTK3.
Comment 31 Michael Shigorin 2013-09-04 23:29:31 MSK
(В ответ на комментарий №30)
> Только мне тогда не понятно зачем программы, которые гипотетически могут
> запускаться из других DE, собирать с GTK3.
Может, действительно пора переименовать NetworkManager-gnome в NetworkManager-gtk и посмотреть, не собрать ли его с GTK2 (если ещё не сломали такую возможность)?
Comment 32 Roman Savochenko 2013-09-05 11:29:58 MSK
(В ответ на комментарий №31)
> (В ответ на комментарий №30)
> > Только мне тогда не понятно зачем программы, которые гипотетически могут
> > запускаться из других DE, собирать с GTK3.
> Может, действительно пора переименовать NetworkManager-gnome в
> NetworkManager-gtk и посмотреть, не собрать ли его с GTK2 (если ещё не сломали
> такую возможность)?
На момент поиска того кто ставит размер иконки 4x4 я пробовал собрать текущий NetworkManager-gnome с GTK2, поскольку увидел там такой параметр, но сборка не прошла, а разбираться не стал. Да и зависимость на polkit-gnome-authentication-agent-1 не уверен, что можно оторвать.
Comment 33 Mikhail Efremov 2013-09-05 15:10:39 MSK
(В ответ на комментарий №31)
> Может, действительно пора переименовать NetworkManager-gnome в
> NetworkManager-gtk и посмотреть, не собрать ли его с GTK2 (если ещё не сломали
> такую возможность)?

В следующей сборке я его переименую, думаю (особенно учитывая https://git.gnome.org/browse/network-manager-applet/commit/?h=nma-0-9-8&id=e012dbeee38c7d93abc3c2fc9371b5bf41a246af).
Но собирать с GTK2 его не надо, там есть библиотеки, которые использует gnome-shell. К тому же сборку с GTK2 апстрим периодически действительно ломает. Потом пока еще чинят, но дальше будет хуже, видимо.
Comment 34 Mikhail Efremov 2013-09-05 15:15:22 MSK
(В ответ на комментарий №26)
> (В ответ на комментарий №24)
> > Так вроде для этого достаточно запустить polkit-gnome-authentication-agent-1,
> > или вы что-то ещё хотите сделать?
> Вроде и достаточно, но вот где его "из коробки" запускать, вместе с nm-applet.

Это тема для devel@, к этой баге отношения это не имеет.
В Xfce соответствующий desktop file теперь в пакете xfce4-session.
См. https://lists.fedoraproject.org/pipermail/devel-announce/2011-February/000758.html
Comment 35 Yuri N. Sedunov 2013-09-05 15:51:03 MSK
(In reply to comment #33)
> (В ответ на комментарий №31)
> > Может, действительно пора переименовать NetworkManager-gnome в
> > NetworkManager-gtk и посмотреть, не собрать ли его с GTK2 (если ещё не сломали
> > такую возможность)?
> 
> В следующей сборке я его переименую

Лучше переименовать просто в
network-manager-applet или NetworkManager-applet

> Но собирать с GTK2 его не надо, там есть библиотеки, которые использует
> gnome-shell. К тому же сборку с GTK2 апстрим периодически действительно ломает.
> Потом пока еще чинят, но дальше будет хуже, видимо.

Уже.
Comment 36 Yuri N. Sedunov 2013-09-05 16:00:44 MSK
(In reply to comment #34)
> (В ответ на комментарий №26)
> > (В ответ на комментарий №24)
> > > Так вроде для этого достаточно запустить polkit-gnome-authentication-agent-1,
> > > или вы что-то ещё хотите сделать?
> > Вроде и достаточно, но вот где его "из коробки" запускать, вместе с nm-applet.
> 
> Это тема для devel@, к этой баге отношения это не имеет.
> В Xfce соответствующий desktop file теперь в пакете xfce4-session.
> См.
> https://lists.fedoraproject.org/pipermail/devel-announce/2011-February/000758.html

В общем, polkit-agent может быть любой (может в TDE есть свой собственный?) , но один, и заботиться о его запуске, если нужен, следует DE и WM.
Comment 38 Mikhail Efremov 2013-09-05 16:19:30 MSK
(В ответ на комментарий №35)
> (In reply to comment #33)
> > В следующей сборке я его переименую
> 
> Лучше переименовать просто в
> network-manager-applet или NetworkManager-applet

Есть еще подпакеты для VPN-плагинов NetworkManager-*-gnome. Их для единообразия тоже надо переименовать. Вариант NetworkManager-*-applet странен и непонятен. Имя с -gtk выглядит гораздо лучше.

(В ответ на комментарий №36)
> В общем, polkit-agent может быть любой (может в TDE есть свой собственный?) ,
> но один, и заботиться о его запуске, если нужен, следует DE и WM.

В NM-gnome сейчас есть зависимость на gnome-polkit, но ее можно убрать, polkit-agent действительно может быть любой.
Comment 39 ruslandh 2013-09-05 16:21:18 MSK
В духе развития TDE, что оно заимствует всё нетежеловесное из KDE4, то наверное это:
https://projects.kde.org/projects/extragear/base/polkit-kde-agent-1
Comment 40 Yuri N. Sedunov 2013-09-05 16:37:46 MSK
(In reply to comment #38)
> (В ответ на комментарий №35)
> > (In reply to comment #33)
> > > В следующей сборке я его переименую
> > 
> > Лучше переименовать просто в
> > network-manager-applet или 
> 
> Есть еще подпакеты для VPN-плагинов NetworkManager-*-gnome. Их для единообразия
> тоже надо переименовать. Вариант NetworkManager-*-applet странен и непонятен.
> Имя с -gtk выглядит гораздо лучше.

Как раз, -gtk вообще ни о чем, тем более в отсутствии прочих, -qt например.
network-manager-applet - оригинальное название, которое вполне описывает программу, встраиваемую в системный лоток.
Comment 41 Mikhail Efremov 2013-09-05 16:50:40 MSK
(В ответ на комментарий №40)
> Как раз, -gtk вообще ни о чем, тем более в отсутствии прочих, -qt например.
> network-manager-applet - оригинальное название, которое вполне описывает
> программу, встраиваемую в системный лоток.

Да я согласен. Но сейчас есть пакет NetworkManager-gnome и пакеты NetworkManager-{pptp,openvpn,...}-gnome, которые он использует. При переименовании мне хочется сохранить это единообразие. Для имени network-manager-applet подобрать соответствующее имя для этих пакетов я затрудняюсь. Вариант с -gtk выглядит компромиссным, тогда будут NetworkManager-gtk и NetworkManager-{pptp,openvpn,...}-gtk.
Comment 42 Mikhail Efremov 2013-09-05 16:54:10 MSK
(В ответ на комментарий №41)
> Вариант с -gtk выглядит компромиссным, тогда будут
> NetworkManager-gtk и NetworkManager-{pptp,openvpn,...}-gtk.

Впрочем, может лучше NetworkManager-applet-gtk тогда уж.
Comment 43 Yuri N. Sedunov 2013-09-05 17:18:41 MSK
(In reply to comment #41)
> (В ответ на комментарий №40)
> > Как раз, -gtk вообще ни о чем, тем более в отсутствии прочих, -qt например.
> > network-manager-applet - оригинальное название, которое вполне описывает
> > программу, встраиваемую в системный лоток.
> 
> Да я согласен. Но сейчас есть пакет NetworkManager-gnome и пакеты
> NetworkManager-{pptp,openvpn,...}-gnome, которые он использует. При
> переименовании мне хочется сохранить это единообразие. Для имени
> network-manager-applet подобрать соответствующее имя для этих пакетов я
> затрудняюсь. Вариант с -gtk выглядит компромиссным, тогда будут
> NetworkManager-gtk и NetworkManager-{pptp,openvpn,...}-gtk.

Михаил, это "единообразие" никому не нужно. -gtk может лишь смутить пользователя, который будет искать  альтернативу, опять же на QT, например. 

Предлагаю всё ж просто выкинуть "-gnome" из NetworkManager-{pptp,openvpn,...}-gnome ничем не заменяя. Если теперь есть осознание, что эти пакеты не только для GNOME, то какая разница какой тулкит используется?

Вообще разговор ни о чем, удаляюсь.
Comment 44 Vladislav Bochkarev 2013-09-05 18:21:25 MSK
(В ответ на комментарий №26)
> > Так вроде для этого достаточно запустить polkit-gnome-authentication-agent-1,
> Вроде и достаточно, но вот где его "из коробки" запускать, вместе с nm-applet.
Как вариант - в /home/<USER>/.kde/Autostart скрипт 3 строчки запускающий
polkit-gnome-authentication-agent-1. Работает, проблем нет.
Comment 45 Roman Savochenko 2013-09-05 22:24:44 MSK
(В ответ на комментарий №39)
> В духе развития TDE, что оно заимствует всё нетежеловесное из KDE4, то наверное
> это:
> https://projects.kde.org/projects/extragear/base/polkit-kde-agent-1
Только самому TDE он не нужен, а раз так, то лучше пользовать polkit-gnome-authentication-agent-1.

(В ответ на комментарий №44)
> (В ответ на комментарий №26)
> > > Так вроде для этого достаточно запустить polkit-gnome-authentication-agent-1,
> > Вроде и достаточно, но вот где его "из коробки" запускать, вместе с nm-applet.
> Как вариант - в /home/<USER>/.kde/Autostart скрипт 3 строчки запускающий
> polkit-gnome-authentication-agent-1. Работает, проблем нет.
Может и работает, но в пользовательские директории из пакета ложить нельзя да и не получится, разве только /usr/share/autostart, а ещё лучше в /usr/share/kde/autostart, как TDE специфичное.

(В ответ на комментарий №37)
> Просканировал http://www.trinitydesktop.org/ по этому поводу, нашёл только 
> патч на hal (если я правильно понял)
> http://git.trinitydesktop.org/viewgit/?a=viewblob&p=Trinity%20Desktop%20Environment%20Packaging&h=0b32f17f0c361278ef8a427f3bdd1be368f8f6f6&hb=aa67f69e3bd294588f63825b744c31c95ec1a849&f=arch/3.5.13/trinity-base/hal/patches/hal-use-at-console.patch
Неправильно и этот патч включен.

(В ответ на комментарий №34)
> Это тема для devel@, к этой баге отношения это не имеет.
> В Xfce соответствующий desktop file теперь в пакете xfce4-session.
> См.
> https://lists.fedoraproject.org/pipermail/devel-announce/2011-February/000758.html
Так самое правильное. Спасибо!
Comment 46 Michael Shigorin 2014-10-26 22:38:37 MSK
Что с этой багой на сейчас?  На регулярках будто порядок...
Comment 47 Vladislav Bochkarev 2014-10-28 16:00:00 MSK
(В ответ на комментарий №46)
> Что с этой багой на сейчас?  На регулярках будто порядок...

в сборке tde p7 systemd от 12.09.14 все работает, значок сетевого подключения NetworkManager не пропадает.

Правда если поставить скайп, значок снова глючит - пропадает при запуске скайпа.
А если скрыть панель кнопкой а потом снова ее открыть, то значок NM появляется
Comment 48 Mikhail Efremov 2015-05-07 20:47:11 MSK
Будем считать, что fixed.