Як я можу видалити значок панелі Skype?


27

Оскільки я використовую індикатор Docky Skype, а зелений значок Skype не виглядає добре поруч із усіма сірими - було б непогано вийняти піктограму з системного лотка.

Чи можливо це? Як я можу це зробити в Ubuntu 12.04 - чи інших попередніх версіях?

Відповіді:


19

Видалення піктограми панелі Skype в 12.04 без видаленняsni-qt

  • Якщо вас не хвилює sni-qt, видалити піктограму так само просто, як зробитиapt-get remove sni-qt sni-qt:i386
  • Встановлення наданого Skype дебю не є рішенням; всі версії Ubuntu - це поєднання одного і того ж дебюту Skype, але зробити sni-qtзалежність, щоб увімкнути піктограму.

Простий налаштування конфіденційного файлу або встановлення / вилучення пакету не збирається цього робити, нам тут потрібно забруднитися.

  • 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
    
  • Гарантований спосіб видалити піктограму Skype , залишаючи sni-qtдоступними інші програми для використання - запобігти завантаженню Skype цими спільними бібліотеками.

  • Це можна зробити одним із двох способів: цивілізованим способом та жорстоким хакером.


1. Настійно рекомендується: Використовуйте apparmor, щоб запобігти завантаженню Skypesni-qt

  • AppArmor - це система безпеки, вбудована в ядро ​​Linux, яка встановлює дозволи для того, що програма може і не може отримати доступ. Увімкнено за умовчанням в Ubuntu.

  • Приклад профілю для Skype включений у профілі броні програми; Я змінив ТІЛЬКИ, щоб досягти нашої мети - відключити значок панелі - інші функції безпеки були видалені.

  • Ви можете переглянути профіль, вставлений тут . Рядки 24-25 - це біти, які нам важливі.

ПОПЕРЕДЖЕННЯ . Цей профіль НЕ забезпечує іншого виду безпеки - Skype буде працювати нормально. Ознайомтеся з тут, щоб отримати більш повний профіль Skype AppArmor, який ви можете використовувати, якщо хочете додатково захистити Skype.

Як встановити

  • Щоб встановити, вийдіть із Skype, якщо він працює, а потім відкрийте термінал із Ctrl-Alt-T, а потім введіть / вставте нижче, щоб встановити вставлений профіль у вашу каталог профілів apparmor. (Ви також можете вручну вставити його, /etc/apparmor.d/usr.bin.skypeякщо бажаєте)

    sudo wget -O/etc/apparmor.d/usr.bin.skype http://pastebin.com/raw.php?i=2EYME5eF

  • Потім введіть sudo /etc/init.d/apparmor reloadдля перезавантаження всіх профілів, включаючи скайп, який ми щойно додали. Зачекайте кілька секунд ...

  • Щоб перевірити, чи профіль увімкнено, введіть sudo apparmor_status | egrep "mode|skype"

    • Результат повинен показувати щось на зразок нижче: Skype має бути після "режиму примусового виконання", але перед будь-яким з інших режимів:
      21 профіль перебуває в режимі примусового виконання.
      / usr / bin / skype
      22 профілі перебувають у режимі скарги.
      
  • Запустіть Skype, і, сподіваємось, піктограми панелі не залишиться!

Як я можу додати цю поведінку до власного профілю Skype AppArmor?

  • Просто додайте ці рядки біля початку профілю, відразу після включеного (вони просто заважають Skype читати / завантажувати бібліотеки sni-qt)

    відмовити /usr/lib/i386-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so r,
    відмовити /usr/lib/x86_64-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so r,
    

2. Не рекомендується: некрасивий хакер

  • Я дам лише псевдокод, щоб запобігти потраплянню нового в пастки, але достатньо простого сценарію bash, який робить наступне, щоб також відключити значок панелі:
    1. Видаліть права доступу для читання з відповідного libsni-qt.so для скайду uid (користувач).
    2. Запустіть Skype, почекайте трохи, щоб він завантажився.
    3. (Піктограма відсутня, оскільки Skype не міг завантажити sni-qt.)
    4. Відновити дозволи на libsni-qt.so.

1
+50 Тому що це працює і для іншого програмного забезпечення.
MarkovCh1

Відмінно! Це ідеальне доповнення Skype-Wrapperбез необхідності видаляти sni-qtпакунок. +1000 вам мій друг. Ура!
Габріель

2
Проблема полягає в тому, що "Використовувати apparmor для запобігання завантаженню Skype sni-qt" не працює зі встановленим Skype зі сховищ Ubuntu за замовчуванням. При спробі запустити 'skype' я просто отримую інформацію про те, що для / usr / bin / skype дозвіл відмовлено. Інша справа, що для цієї програми немає піктограми. Використання Ubuntu 13.04. Чи можу я отримати будь-яку допомогу?
kcpr

2
Після оновлення програми , до якого Skype не запускається з - за дозволів знову: /usr/bin/skype: 8: exec: /usr/lib/skype/skype: Permission denied. І ця проблема з іконами здавалася просто тимчасовою помилкою, зараз все нормально, вибачте. Допомога все ще потрібна. Спасибі.
kcpr

Що мені допомогло - видалити sni-qt: i386 з моєї 64-розрядної системи. Це потрібно Skype, але не - наприклад - Spotify. У будь-якому випадку це ще один варіант вирішення цієї проблеми, але інший, ніж запропонований компанією izx, який здається найкращим.
kcpr

11

Тільки для Ubuntu 11.04 Natty :

  1. Через інтерфейс командного рядка (швидкий) - спільнота OMGubuntu придумала таку відповідь :

    в терміналі, введіть

    gsettings get com.canonical.Unity.Panel systray-whitelist
    

    Це виведе щось подібне до:

    ['JavaEmbeddedFrame', 'Mumble', 'Wine', 'Skype', 'hp-systray', 'scp-dbus-service']
    

    Ми хочемо видалити Skype з цього списку, тому скопіюйте / вставте цей вихід у новій команді та видаліть запис "Skype", наприклад:

    gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Mumble', 'Wine', 'hp-systray', 'scp-dbus-service']"
    
  2. Через графічний інтерфейс користувача (більш доступний), як це запропоновано con-f-use у відповіді на це питання . Просто зробіть протилежне тому, що пропонує.

Тепер при наступному вході піктограма Skype вже не буде.


Зауважте, що встановлення пакету pidgin-skype Встановіть pidgin-skype дозволить вам додати свій акаунт Skype до співчуття - дозволяє вам контролювати свій статус Skype за допомогою елегантного меню «me».


7
зауважте, що це працює на 11.04 НЕ 10.10 або 10.04
Урі Еррера

Якщо ви хочете графічний інструмент, ви можете встановити gconf, sudo apt-get install gconf-toolsа потім запустити, gconf-editorвиконуючи зворотне з описаного тут: askubuntu.com/questions/43280/…
con-f-use

Дякуємо вам за con-f використання. Ви мали на увазі dconf замість gconf? gconf-editor встановлений за замовчуванням, але не відображає записи конфігурації єдності для мене.
Олів'є

d-conf показує білий список панелі єдності
robin0800

3
Не працює для Unity 2D. Skype відсутній у моєму білому списку: ['JavaEmbeddedFrame', 'Mumble', 'Wine', 'hp-systray'], але його все одно з’явиться на панелі.
Настрій

2

У /usr/share/icon/skype.pngмоїй системі немає значка . Піктограма лотка призначена не для запуску, а для повідомлення про стан. Він показує ваш статус в Інтернеті (онлайн, далеко, dnd,…), а також повідомляє про надходження нових повідомлень. Як такий, він динамічний.

Здається, він вбудований у бінарний файл Skype, не маючи можливості його змінити. Я дуже хотів би, щоб мене виправили з цього приводу, оскільки я зневажаю цю зелену крапку.


2

Вийміть sni-qtпакет із вашої системи, і він повинен пройти, я думаю.


5
Також я подумав, що цей пакет життєво важливий для інших програм, які хотіли використовувати верхню панель (наприклад, Dropbox та WeatherIndicator). Я не хочу обіймати грунт для всього саду, коли мені вдасться просто витягнути бур’ян.
superjudge3

Ні, Dropbox має належну інтеграцію з API-індикаторами, як і індикатор погоди. Пакет sni-qt використовується лише програмами Qt, які використовують стандартний API піктограми лотка Qt, а не використовують API Unity Indicator.
dobey

Вам потрібно і те, apt-get remove sni-qt:i386іapt-get remove sni-qt
антитоксичний

Це вводить деякі збої для мене. Погана ідея.
MarkovCh1

@Syzygy як? Перебуваючи там чи ні, це не має жодного стосунку до того, що програми не завершаться. Якщо ви видалили його і отримали збої, то, швидше за все, це просто проблема в самій програмі.
добі

-1

З того, що я знаю, ви не можете видалити Skype із systray, але те, що ви можете зробити, це або видалити systray, якщо у вас немає програмного забезпечення, яке його використовує, або замінити піктограму Skype, яка знаходиться тут: /usr/share/icon/skype.pngтим, що ви хочете .


ну, не відповідь, на яку я сподівався отримати, але все-таки дякую, краще, ніж нічого;)
harppu
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.