Избавление от назойливого значка в трее вылилось в некоторую проблему. Насколько могу судить: Skype (оффициальный deb) использует пакеты sni-qt в качестве зависимости, необходимой для отображения иконки. Соответственно, если нижеприведенные библиотеки содержат используемую приложением информацию, то, на мой взгляд, разумно будет запретить ему использование их данных.
/usr/lib/i386-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so
/usr/lib/x86_64-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so
Для выполнения операций было решено использовать фреймворк apparmor, интегрированный в ubuntu дефолтно:
sudo gedit /etc/apparmor.d/usr.bin.skype
#include <tunables/global>
/usr/bin/skype {
#include <abstractions/X>
#include <abstractions/audio>
#include <abstractions/base>
#include <abstractions/dbus-session>
#include <abstractions/fonts>
#include <abstractions/freedesktop.org>
#include <abstractions/kde>
#include <abstractions/nameservice>
#include <abstractions/nvidia>
#include <abstractions/user-tmp>
# deny read access to the sni-qt libraries, thus removing the panel icon deny /usr/lib/i386-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so r, deny /usr/lib/x86_64-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so r,
/** mrwkl, }
Итак, со Skype сняты полномочия на использование данных библиотек.
Обновляем существующие профили:
sudo /etc/init.d/apparmor reload
Проверяем выполненную работу:
sudo apparmor_status | egrep «mode|skype»
27 profiles are in enforce mode.
/usr/bin/skype
0 profiles are in complain mode.
0 processes are in enforce mode.
0 processes are in complain mode.
Приложение в нужной категории.
Запустив Skype повторно я обнаружил, что иконка осталась. Более того, создалось впечатление, что она стала другой (теперь она всегда левее остальных элементов трея; также при наведении на нее появляется всплывающее меню).
Правильно ли я понимаю, что Skype теперь загружает какие-то сторонние библиотеки для отображения значка уведомлений? Прошу содействия в решении проблемы.