Cómo hacer el indicador-sysmonitor como indicador predeterminado en la pantalla de inicio de sesión

10

Ubuntu 14.04 actualmente tiene en la esquina superior derecha estos indicadores de apagado, botón de bloqueo, detalles del tiempo del calendario, detalles de la batería, formato de entrada (inglés) como indicadores predeterminados. ¿Es posible hacer un indicador-sysmonitor como uno de esos indicadores predeterminados?

Ahora, lo que sucede es solo cuando iniciamos sesión en una computadora, se mostrará el indicador-sysmonitor y cuando cierre la sesión o bloquee nuestro indicador-sysmonitor de la computadora saldrá automáticamente del panel. Sé por experiencia en computadoras bloqueadas que el indicador-sysmonitor funciona en segundo plano pero no se mostrará en el panel. Tengo algunas estadísticas (incluye cpu, mem y algunas personalizadas) que quiero ver cuando bloqueo mi computadora.

¿Se puede hacer?

PD: hice esta pregunta en el sitio principal de software y el autor me recomendó este sitio.


He examinado esta pregunta y sus respuestas y parece prometedora, pero no sé cómo adaptar las respuestas para el indicador-sysmonitor.

vacaciones
fuente

Respuestas:

18

Pantalla de bienvenida / inicio de sesión

Termino mirando cómo nm-appletfunciona. Lo rastreé, ya que parece codificado unity-greeter.

Esta modificación hace que aparezca en la pantalla de saludo después del arranque o cierre de sesión (pero no en la pantalla de bloqueo).

  1. Descargar fuente y construir dependencias

    sudo apt-get build-dep unity-greeter
    apt-get source unity-greeter
    
  2. Agregar función de generación para indicator-sysmonitor

    cd unity-greeter-*/
    vim src/unity-greeter.vala +590
    

    Allí encontrará Process.spawn_command_line_async ("nm-applet");en el código original que genera la nm-appletpantalla de bienvenida. Haga una copia con la try..catchenvoltura completa y modifíquela para generar indicator-sysmonitortambién.

        /* Make nm-applet hide items the user does not have permissions to interact with */
        Environment.set_variable ("NM_APPLET_HIDE_POLICY_ITEMS", "1", true);
    
        try
        {
            Process.spawn_command_line_async ("nm-applet");
        }
        catch (Error e)
        {
            warning ("Error starting nm-applet: %s", e.message);
        }
    
        /* I added these for sysmonitor, from here */
        try
        {
            Process.spawn_command_line_async ("indicator-sysmonitor");
        }
        catch (Error e)
        {
            warning ("Error starting indicator-sysmonitor: %s", e.message);
        }
        /* to here */
    
    }
    
  3. Construir

    ./autogen.sh
    ./configure --prefix=/usr
    make -j2
    
  4. Instalar en pc

    sudo cp src/unity-greeter /usr/local/sbin/unity-greeter
    
  5. Reiniciar

    Indicador-sysmonitor en unity-greeter (pantalla de saludo de Ubuntu)


Bloquear pantalla

De todos modos, esto mostrará todos los indicadores de la aplicación (observe el nm-applet en la captura de pantalla), esto puede ser un inconveniente de seguridad y privacidad. Es posible predefinir una lista de indicadores solo para el modo de pantalla de bloqueo, simplemente no tengo tiempo para hacerlo y probarlo.

  1. Descargar fuente y construir dependencias

    sudo apt-get build-dep unity
    apt-get source unity
    
  2. Modifique el servicio de panel de la unidad para cargar los indicadores de la aplicación incluso en modo de pantalla de bloqueo.

    cd unity-7*/
    vim services/panel-service.c +893
    

    if (!lockscreen_mode) a continuación, evite cargar indicadores en el modo de pantalla de bloqueo.

    static void
    initial_load_default_or_custom_indicators (PanelService *self, GList *indicators)
    {
      GList *l;
    
      suppress_signals = TRUE;
    
      if (!indicators)
        {
          /* comment these lines
            if (!lockscreen_mode)
            {
              load_indicators (self);
            }
          */
          // add this line
          load_indicators (self);
    
          load_indicators_from_indicator_files (self);
          sort_indicators (self);
        }
    ...
    
  3. Construir

    mkdir build
    cd build/
    cmake ../
    make
    
  4. Instalar en pc

    sudo mv /usr/lib/unity/unity-panel-service /usr/lib/unity/unity-panel-service.orig
    sudo cp services/unity-panel-service /usr/lib/unity/unity-panel-service
    

    Intentalo: CtrlAltL

    Indicador-sysmonitor en la pantalla de bloqueo lightdm

user.dz
fuente
Atrasado +1. Con la desaparición tardía de Unity DE, me pregunto si GDM bajo Ubuntu 18.04 sería más fácil.
WinEunuuchs2Unix