Comment puis-je supprimer l'icône du panneau Skype?

27

Comme j'utilise l'indicateur Docky Skype, et l'icône verte Skype ne semble pas bonne à côté de toutes les grises - il serait bien de supprimer l'icône de la barre d'état système.

Est-ce possible? Comment puis-je le faire dans Ubuntu 12.04 - ou dans d'autres versions antérieures?

harppu
la source

Réponses:

19

Suppression de l'icône du panneau Skype dans 12.04 sans suppressionsni-qt

  • Si vous ne vous souciez pas sni-qt, supprimer l'icône est aussi simple que de le faireapt-get remove sni-qt sni-qt:i386
  • L'installation du deb fourni par Skype n'est pas une solution; tout ce que fait la version Ubuntu est de regrouper le même deb Skype mais de faire sni-qtune dépendance pour activer l'icône.

Un simple ajustement de fichier de conf ou l'installation / la suppression d'un paquet ne va pas le faire, nous devons descendre et salir ici.

  • sni-qt est fourni par ces bibliothèques partagées:

    /usr/lib/i386-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so
    /usr/lib/x86_64-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so
    
  • Un moyen garanti de supprimer l'icône Skype tout en laissant sni-qtdisponible pour d'autres applications à utiliser est d'empêcher Skype de charger ces bibliothèques partagées.

  • Cela peut être fait de deux manières: une manière civilisée et une manière de pirater bash par force brute.


1. Fortement recommandé: utilisez apparmor pour empêcher le chargement de Skypesni-qt

  • AppArmor est un cadre de sécurité intégré au noyau Linux qui définit les autorisations d'accès à ce qu'un programme peut et ne peut pas accéder. Il est activé par défaut dans Ubuntu.

  • Un exemple de profil pour Skype est inclus dans les profils d'armure d'application; J'ai modifié cela UNIQUEMENT pour atteindre notre objectif de désactiver l'icône du panneau - d'autres fonctions de sécurité ont été supprimées.

  • Vous pouvez voir le profil collé ici . Les lignes 24-25 sont les bits qui comptent pour nous.

AVERTISSEMENT : ce profil ne fournit AUCUN autre type de sécurité - Skype fonctionnera normalement. Veuillez consulter ici pour un profil Skype AppArmor plus complet que vous pouvez utiliser si vous souhaitez sécuriser davantage Skype.

Comment installer

  • Pour l'installer, quittez Skype s'il est en cours d'exécution, puis ouvrez un terminal avec Ctrl-Alt-T, et tapez / collez le ci-dessous pour installer le profil collé dans votre répertoire de profils apparmor. (Vous pouvez également le coller manuellement /etc/apparmor.d/usr.bin.skypesi vous le souhaitez)

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

  • Tapez ensuite sudo /etc/init.d/apparmor reloadpour recharger tous les profils, y compris celui de skype que nous venons d'ajouter. Attendez quelques secondes ...

  • Pour vérifier que le profil a été activé, tapez sudo apparmor_status | egrep "mode|skype"

    • Le résultat devrait montrer quelque chose comme ci-dessous: Skype doit être après le "mode d'application" mais avant l'un des autres modes:
      21 profils sont en mode forcé.
      / usr / bin / skype
      22 profils sont en mode réclamation.
      
  • Démarrez Skype et l'icône du panneau devrait, espérons-le, disparaître!

Comment puis-je ajouter ce comportement à mon propre profil Skype AppArmor?

  • Ajoutez simplement ces lignes au début du profil, juste après les inclusions (elles empêchent simplement Skype de lire / charger les bibliothèques sni-qt)

    refuser /usr/lib/i386-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so r,
    refuser /usr/lib/x86_64-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so r,
    

2. Non recommandé: un hack bash laid

  • Je ne donnerai que du pseudocode pour empêcher le nouveau de tomber dans les pièges, mais un simple script bash qui fait ce qui suit suffit également à désactiver l'icône du panneau:
    1. Supprimez les autorisations de lecture du libsni-qt.so approprié pour le skype uid (utilisateur) exécuté en tant que.
    2. Démarrez Skype, attendez un peu pour qu'il soit chargé.
    3. (L'icône a disparu car Skype n'a pas pu charger sni-qt.)
    4. Restaurez les autorisations sur libsni-qt.so.
ish
la source
1
+50 Parce que cela fonctionne aussi pour d'autres logiciels.
MarkovCh1
Excellent! C'est le complément parfait Skype-Wrappersans avoir à retirer le sni-qtpaquet. +1000 à vous mon ami. À votre santé!
Gabriel
2
Le problème est que «Utiliser l'apparmeur pour empêcher Skype de charger sni-qt» ne fonctionne pas avec Skype installé à partir des référentiels Ubuntu par défaut. Lorsque j'essaie d'exécuter «skype», j'obtiens simplement des informations qui refusent l'autorisation / usr / bin / skype. Une autre chose est qu'il n'y a pas d'icône pour cette application. Utilisation d'Ubuntu 13.04. Puis-je obtenir de l'aide?
kcpr
2
Après la mise à jour de l'application Skype ne démarre pas à nouveau à cause de l' autorisation: /usr/bin/skype: 8: exec: /usr/lib/skype/skype: Permission denied. Et ce problème d'icône ne semblait être qu'un bug temporaire, ça va maintenant, désolé. Besoin d'aide encore. Merci.
kcpr
Ce qui m'a aidé, c'est de supprimer sni-qt: i386 de mon système 64 bits. Il est nécessaire par Skype, mais pas par - par exemple - Spotify. Quoi qu'il en soit, c'est une autre option pour résoudre ce problème, mais différente de celle suggérée par izx, qui semble être la meilleure.
kcpr
11

Pour Ubuntu 11.04 Natty uniquement:

  1. Via l'interface de ligne de commande (rapide) - la communauté OMGubuntu a trouvé cette réponse :

    dans un terminal, tapez

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

    Cela produira quelque chose de similaire à:

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

    Nous voulons supprimer Skype de cette liste blanche, alors copiez / collez cette sortie dans une nouvelle commande et supprimez l'entrée «Skype», comme ceci:

    gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Mumble', 'Wine', 'hp-systray', 'scp-dbus-service']"
    
  2. Via une interface utilisateur graphique (plus accessible), comme proposé par con-f-use pour répondre à cette question . Faites simplement le contraire de ce qu'il propose.

Maintenant, lors de la prochaine connexion, l'icône Skype aura disparu.


Notez que l'installation du package pidgin-skype Installer pidgin-skype vous permettra d'ajouter votre compte Skype à l'empathie - vous permettant de contrôler votre statut Skype avec le menu élégant me.

Olivier
la source
7
notez que bien que cela fonctionne, c'est pour 11.04 PAS 10.10 ou 10.04
Uri Herrera
Si vous voulez un outil graphique, vous pouvez installer gconf sudo apt-get install gconf-toolset ensuite exécuter gconf-editorl'inverse de ce qui est décrit ici: askubuntu.com/questions/43280/…
con-f-use
Merci con-f-use. Voulez-vous dire dconf au lieu de gconf? gconf-editor est installé par défaut mais n'affiche pas les entrées de configuration d'unité pour moi.
Olivier
d-conf affiche la liste blanche du panneau de l'unité
robin0800
3
Ne fonctionne pas pour Unity 2D. Skype n'est pas sur ma liste blanche: ['JavaEmbeddedFrame', 'Mumble', 'Wine', 'hp-systray'] mais son apparaîtra toujours sur le panneau.
Humeur
2

Il n'y a pas d'icône /usr/share/icon/skype.pngsur mon système. L'icône de la barre d'état ne sert pas à démarrer, mais à signaler l'état. Il montre votre statut en ligne (en ligne, absent, dnd,…) et signale également si de nouveaux messages arrivent. En tant que tel, c'est dynamique.

Il semble être intégré au binaire Skype sans aucun moyen de le changer. J'aimerais beaucoup être corrigé à ce sujet, car je méprise également cette goutte verte.

MPi
la source
2

Retirez le sni-qtpaquet de votre système et il devrait disparaître, je pense.

dobey
la source
5
J'ai également pensé que ce package était vital pour d'autres programmes qui voulaient utiliser le panneau supérieur (comme Dropbox et WeatherIndicator). Je ne veux pas déraciner le sol pour tout le jardin alors que je devrais pouvoir arracher une mauvaise herbe.
superjudge3
Non, Dropbox est correctement intégré aux API d'indicateur, tout comme l'indicateur météo. Le package sni-qt est uniquement utilisé par les applications Qt qui utilisent l'API d'icône de plateau Qt standard, plutôt que d'utiliser les API Unity Indicator.
dobey
Vous avez besoin des deux apt-get remove sni-qt:i386etapt-get remove sni-qt
antitoxique
Cela introduit quelques plantages pour moi. Mauvaise idée.
MarkovCh1
@Syzygy comment? Que ce soit là ou non n'a aucune incidence sur le plantage des applications. Si vous l'avez supprimé et que vous avez eu des plantages, il s'agit très probablement d'un problème dans le programme lui-même.
dobey
-1

D'après ce que je sais, vous ne pouvez pas supprimer Skype du systray mais ce que vous pouvez faire est de supprimer le systray si vous n'avez aucun logiciel qui l'utilise ou de remplacer l'icône de Skype qui est ici: /usr/share/icon/skype.pngpar ce que vous voulez .

Nyamiou The Galeanthrope
la source
enfin, pas la réponse que j'espérais obtenir, mais merci quand même, mieux que rien;)
harppu