¿Cómo puedo eliminar el icono del panel de Skype?

27

Cuando uso el indicador Docky Skype, y el ícono verde de Skype no se ve bien junto a todos los grises, sería bueno eliminar el ícono de la bandeja del sistema.

es posible? ¿Cómo puedo hacerlo en Ubuntu 12.04 u otras versiones anteriores?

harppu
fuente

Respuestas:

19

Eliminar el icono del panel de Skype en 12.04 sin eliminarsni-qt

  • Si no te importa sni-qt, eliminar el ícono es tan simple como hacerloapt-get remove sni-qt sni-qt:i386
  • Instalar el deb proporcionado por Skype no es una solución; todo lo que hace la versión de Ubuntu es agrupar la misma deb de Skype pero hacer sni-qtuna dependencia para habilitar el ícono.

Un simple ajuste de archivo de configuración o la instalación / eliminación de un paquete no lo va a hacer, tenemos que ponernos sucios aquí.

  • sni-qt es proporcionado por estas bibliotecas compartidas:

    /usr/lib/i386-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so
    /usr/lib/x86_64-linux-gnu/qt4/plugins/systemtrayicon/libsni-qt.so
    
  • Una forma garantizada de eliminar el icono de Skype mientras se deja sni-qtdisponible para que otras aplicaciones lo usen es evitar que Skype cargue estas bibliotecas compartidas.

  • Eso se puede hacer de una de dos maneras: una forma civilizada y una forma de hack bash de fuerza bruta.


1. Muy recomendable: use apparmor para evitar que Skype se carguesni-qt

  • AppArmor es un marco de seguridad integrado en el kernel de Linux que establece permisos para lo que un programa puede y no puede acceder. Está habilitado por defecto en Ubuntu.

  • Se incluye un perfil de ejemplo para Skype en los perfiles de armadura de la aplicación; Lo modifiqué SOLAMENTE para lograr nuestro objetivo de deshabilitar el ícono del panel; se han eliminado otras características de seguridad.

  • Puede ver el perfil pegado aquí . Las líneas 24-25 son los bits que nos importan.

ADVERTENCIA : este perfil NO proporciona ningún otro tipo de seguridad: Skype se ejecutará normalmente. Consulte aquí para obtener un perfil más completo de AppArmor de Skype que puede usar si desea proteger aún más Skype.

Cómo instalar

  • Para instalar, salga de Skype si se está ejecutando y luego abra una terminal con Ctrl-Alt-T, y escriba / pegue el siguiente para instalar el perfil pegado en su directorio de perfiles de apparmor. (También puede pegarlo manualmente /etc/apparmor.d/usr.bin.skypesi lo desea)

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

  • Luego escriba sudo /etc/init.d/apparmor reloadpara volver a cargar todos los perfiles, incluido el de Skype que acabamos de agregar. Espera unos segundos ...

  • Para verificar que el perfil estaba habilitado, escriba sudo apparmor_status | egrep "mode|skype"

    • El resultado debería mostrar algo parecido a lo siguiente: Skype debe estar después del "modo obligatorio" pero antes de cualquiera de los otros modos:
      21 perfiles están en modo de imposición.
      / usr / bin / skype
      22 perfiles están en modo de queja.
      
  • ¡Inicie Skype, y el icono del panel debería desaparecer!

¿Cómo puedo agregar este comportamiento a mi propio perfil de Skype AppArmor?

  • Simplemente agregue estas líneas cerca del comienzo del perfil, justo después de las inclusiones (simplemente evitan que Skype lea / cargue las bibliotecas sni-qt)

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

2. No recomendado: un truco feo

  • Solo daré pseudocódigo para evitar que el nuevo caiga en trampas, pero un simple script bash que haga lo siguiente es suficiente para deshabilitar también el icono del panel:
    1. Elimine los permisos de lectura del libsni-qt.so apropiado para que el skype uid (usuario) se ejecute como.
    2. Inicie Skype, espere un poco para que se cargue.
    3. (El ícono desapareció porque Skype no pudo cargar sni-qt).
    4. Restaurar permisos a libsni-qt.so.
ish
fuente
1
+50 Porque esto también funciona para otro software.
MarkovCh1
¡Excelente! Esta es la adición perfecta Skype-Wrappersin tener que quitar el sni-qtpaquete. +1000 a ti mi amigo. ¡Aclamaciones!
Gabriel
2
El problema es que "Usar apparmor para evitar que Skype cargue sni-qt" no funciona con Skype instalado desde los repositorios de Ubuntu predeterminados. Cuando trato de ejecutar 'skype', solo obtengo información que deniega el permiso / usr / bin / skype. Otra cosa es que no hay icono para esta aplicación. Usando Ubuntu 13.04. ¿Puedo obtener alguna ayuda?
kcpr
2
Después de la actualización de la aplicación de Skype no se inicia debido a un permiso de nuevo: /usr/bin/skype: 8: exec: /usr/lib/skype/skype: Permission denied. Y este problema de ícono parecía ser solo un error temporal, ahora está bien, lo siento. Todavía se necesita ayuda. Gracias.
kcpr
Lo que me ayudó fue eliminar sni-qt: i386 de mi sistema de 64 bits. Es necesario por Skype, pero no por, por ejemplo, Spotify. De todos modos, es otra opción para tratar este problema, pero diferente de lo sugerido por izx, que parece ser el mejor.
kcpr
11

Solo para Ubuntu 11.04 Natty :

  1. A través de la interfaz de línea de comandos (rápido): la comunidad OMGubuntu se le ocurrió esta respuesta :

    en una terminal, escriba

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

    Esto generará algo similar a:

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

    Queremos eliminar Skype de esta lista blanca, así que copie / pegue esta salida en un nuevo comando y elimine la entrada 'Skype', así:

    gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Mumble', 'Wine', 'hp-systray', 'scp-dbus-service']"
    
  2. A través de la interfaz gráfica de usuario (más accesible), según lo propuesto por con-f-use al responder esta pregunta . Simplemente haga lo contrario de lo que propone.

Ahora, en el próximo inicio de sesión, el icono de Skype desaparecerá.


Tenga en cuenta que la instalación del paquete pidgin-skype Instalar pidgin-skype le permitirá agregar su cuenta de Skype a la empatía, lo que le permitirá controlar su estado de Skype con el elegante menú yo.

Olivier
fuente
77
tenga en cuenta que mientras esto funciona es para el 11.04 NO 10.10 o 10.04
Uri Herrera
Si desea una herramienta gráfica, puede instalar gconf sudo apt-get install gconf-toolsy luego ejecutar gconf-editorhaciendo el inverso de lo que se describe aquí: askubuntu.com/questions/43280/…
con-f-use
Gracias con-f-use. ¿Quiso decir dconf en lugar de gconf? gconf-editor está instalado por defecto, pero no muestra entradas de configuración de la unidad para mí.
Olivier
d-conf muestra la lista blanca del panel de la unidad
robin0800
3
No funciona para Unity 2D. Skype no está en mi lista blanca: ['JavaEmbeddedFrame', 'Mumble', 'Wine', 'hp-systray'] pero todavía aparecerá en el panel.
Mood
2

No hay ningún icono en /usr/share/icon/skype.pngmi sistema. El icono de la bandeja no es para comenzar, sino para informar el estado. Muestra su estado en línea (en línea, ausente, dnd, ...) y también informa si hay nuevos mensajes entrantes. Como tal, es dinámico.

Parece estar incrustado en el binario de Skype sin forma de cambiarlo. Me gustaría mucho que me corrijan en esto, ya que también desprecio esa mancha verde.

MPi
fuente
2

Elimina el sni-qtpaquete de tu sistema y creo que debería desaparecer.

dobey
fuente
55
También pensé que este paquete era vital para otros programas que querían usar el panel superior (como Dropbox y WeatherIndicator). No quiero ir desarraigando la tierra de todo el jardín cuando debería poder arrancar una maleza.
superjudge3
No, Dropbox tiene una integración adecuada con las API del indicador, al igual que el indicador del clima. El paquete sni-qt solo lo usan las aplicaciones Qt que usan la API de icono de la bandeja Qt estándar, en lugar de usar las API de Unity Indicator.
dobey
Necesitas ambos apt-get remove sni-qt:i386yapt-get remove sni-qt
antitóxico
Esto presenta algunos accidentes para mí. Mala idea.
MarkovCh1
@Syzygy ¿cómo? Estar allí o no no influye en si las aplicaciones se bloquearán. Si lo eliminó y se bloqueó, lo más probable es que sea simplemente un problema en el propio programa.
dobey
-1

Por lo que sé, no puedes eliminar Skype de la bandeja del sistema, pero lo que puedes hacer es eliminar la bandeja del sistema si no tienes ningún software que la use o reemplazar el icono de Skype que está aquí: /usr/share/icon/skype.pngpor lo que quieras .

Nyamiou The Galeanthrope
fuente
bueno, no es la respuesta que esperaba obtener, pero gracias sin embargo, mejor que nada;)
harppu