Este no es un duplicado de ¿Cómo crear indicadores de Unity? . Estoy buscando un indicador del sistema, no un indicador de aplicación.
Fondo:
De estas dos preguntas:
- ¿Cómo agrego o manipulo indicadores de aplicación / sistema en la pantalla de inicio de sesión?
- Cómo hacer que el indicador-sysmonitor sea un indicador predeterminado en la pantalla de inicio de sesión
Aprendí que hay dos tipos de indicadores:
- Sistema: sonido, teclado, aplicaciones, ... (Proveedores:
ps ax | grep indicator
) - Aplicación: nm-applet, sysmonitor, ... y casi todos los que se enumeran en ¿Qué indicadores de aplicación están disponibles?
Todos los indicadores de aplicación son manejados / mostrados por indicador-aplicación (uno del sistema). Los indicadores del sistema se muestran directamente en el panel de Unity.
Ambas preguntas se refieren a agregar / eliminar indicadores de la pantalla de inicio de sesión y bloqueo. El primero fue una configuración sencilla (cuando se trata de indicadores del sistema). El segundo fue una configuración difícil (cuando se trata de indicadores de aplicaciones), que necesita modificar la fuente del servicio del panel (paquete de la unidad) para la pantalla de bloqueo y la fuente de la unidad de bienvenida para la pantalla de inicio de sesión.
Como el caso de sysmonitor
, para mí eso fue una solución. La mejor solución es implementar un indicador del sistema en lugar de uno de aplicación.
Tema:
¿Existe una API unificada para los indicadores del sistema (preferiblemente: Python y luego C / C ++)? Por favor, referencia a la documentación oficial.
La mayoría de los indicadores del sistema se escriben usando el lenguaje de programación Vala. ¿Alguien podría escribir una pequeña demostración para un indicador del sistema usando Python o C?
Actualizar:
Encontré algunos enlaces que pueden dar un empujón:
En la página del proyecto Indicadores de aplicación , enumeraron los enlaces a la API AppIndicator-0.3 ( C & Python ) utilizada para los indicadores de la aplicación.
También enumeraron API Indicate-0.7 ( C y Python ). ¿Que es esto?Bueno, es un canal de mensajería DBus entre aplicaciones de escritorio.Por otro lado, en la página del proyecto Indicadores del sistema , mencionaron:
API de indicadores del sistema
Menú de mensajería usando libindicate.- Menú de sonido usando la libertad.
Indicador de fecha / hora utilizando Evolution-Data-Server
Parecen enumerar API de datos no API de desarrollo de indicadores como Evolution-Data-Server. Pero no estoy seguro sobre
libindicate ylibunity. ¿Alguien trabajó con estas dos bibliotecas?Intente
apt-cache rdepends libunity9 libindicator7 libindicator3-7
ver qué indicador está transmitiendo estas bibliotecas.
Actualización2: Esto para mantener actualizados a los usuarios interesados.
De lo que he recopilado hasta ahora, aquí está el orden de las posibles soluciones:
libindicator3-7
(alto, muchos indicadores dependen de ello)Encontré algunos ejemplos de prueba en la fuente, algunos indicadores ficticios que he probado, podrían instalarse
/usr/lib/indicators3/7/
, son lib compartidos.so
. Podría hacer que se muestren en Inicio de sesión y sesión regular, pero no en la pantalla de bloqueo.Sin embargo, hay algunos servicios de indicadores de prueba, que parecen ser los del sistema Unity. No los he probado todavía.
libindicator7
De la misma fuente que libindicator3-7, de rdepends:
mate-indicator-applet lxpanel-indicator-applet-plugin
Parece ser utilizado para hacer contenedores para indicadores en paneles.
libunity9
(bajo)Aún no hay investigación
export_action_group
,export_menu_model
) y objetos (SimpleActionGroup
,Menu
) están engi.repository.Gio
. Intentaré escribir uno en los próximos días.NOTA: Por favor revise la parte inferior de esta publicación para la última palabra sobre esta respuesta.
No sé si realmente soy de alguna ayuda, pero espero que esta idea pueda ser útil.
Por lo que he buscado, la diferencia en los indicadores de sistema y aplicación es distinta. Con esto en mente, ahora presento un concepto cuestionable:
La idea se me ocurrió mientras miraba las siguientes publicaciones:
https://askubuntu.com/a/234204/408654
https://askubuntu.com/a/42213/408654
La API de Unity parece estar construida principalmente para su uso con indicadores de aplicación, pero tanto el sistema como los indicadores de aplicación pueden usar una programación similar (C lang). Sin embargo, mencionó anteriormente que estos dos tipos de Indicadores son manejados por dos sistemas diferentes. Como tal, procedí a leer una de sus fuentes:
¿Cómo agrego o manipulo indicadores de aplicación / sistema en la pantalla de inicio de sesión?
La respuesta principal consistía en anular un usuario ya existente para obtener el acceso que necesitaban. También proporcionó una solución para agregar y eliminar todos los indicadores existentes. Es una solución de gestión unificada para Indicadores. ¿Sería posible anular un usuario predeterminado (preexistente) para ejecutar / introducir un indicador del sistema?
En respuesta a esta parte de su consulta:
Sin embargo, desafortunadamente, no hay forma de usar API de Indicadores de Aplicación para Indicadores del Sistema. Como tal, mi solución es nula :(
fuente