Conky Nvidia en elementary OS Loki y ubuntu 17.10 Artful

A través de nuestro conky podemos monitorizar casi todo, por no decir todo. Si que intervienen algunos factores, por una parte los comandos soportados e internos que implementa conky y por otra y más extensa, todo comando disponible en nuestro sistema que tenga su correspondiente salida, sería sensible de utilizarlo e integrarlo como parte de nuestra configuración.

Conky Nvidia en elementary OS Loki y ubuntu 17.10 Artful

Evidentemente este post podría ser muy extenso y mas bien nos vamos a centrar en algo más concreto, como por ejemplo la información que disponemos de nuestra tarjeta gráfica y mas concretamente en lo concerniente a Nvidia.

Como siempre antes de hacer nada, es necesario hacer ciertas comprobaciones respecto de lo que nuestra actual versión de conky puede soportar, esta información es visualizada cuando desde el terminal, lanzamos el siguiente comando,

$ conky --version

deberemos que tener una salida parecida a esta,

conkyversion

aquí si observamos la captura de pantalla anterior, vemos como en la sección General soporta nvidia.

Independiente de lo que soporte conky, y respecto a los controladores de nuestra tarjeta gráfica, tendremos por una parte el controlador libre, llamado nouveau, disponible por defecto siempre cuando instalamos un nuevo sistema y que actualizaremos posiblemente al controlador privativo  para obtener un mayor rendimiento.  Realizado éste directamente por la propia nvidia. Esto último es importante y es el que deberemos tener instalado, ya que el privativo dispone de algunas herramientas útiles, tales como nvidia-settings o nvidia-smi, las cuales nos puede proporcionar mucha información sobre nuestra tarjeta.

nvidia-smi

Volviendo a la salida de conky –version, verificamos además que nuestro conky soporte  gráficos Lua incluyendo Cairo, en el caso de que los vayamos a utilizar. De cualquier manera para elementary Loki o ubuntu Artful, el paquete a utilizar que soporta todo esto se llama conky-all, el cual deberemos tener instalado.

$ sudo apt install conky-all

Podemos además consultar para esta versión, en concreto la 1.10.1, en su página man los comandos y variables disponibles, además de la información que nos puede proporcionar.

nvdiapagina

La sintaxis a emplear en nuestra configuración conky y que a modo de ejemplo,

Memoria $alignr${nvidia memfreq}Mhz Temperatura $alignr${nvidia temp}ºC

para conocer Mhz de la memoria y la temperatura de la GPU, su salida por conky sería la siguiente,

conkysalida1

después de estar jugando con los disponibles, se antoja bastante escaso. De ahí, la necesidad de utilizar las utilidades proporcionadas por el controlador privativo, con el uso de nvidia-settings o nvidia-smi.

nvidia-settings

Para ver todos los atributos de nuestra tarjeta sensible a información a consultar, lo haremos con,

$ nvidia-settings --query all

nvidiasettings

uno de los atributos mas relevantes es GPUUtilization, un valor importante para monitorizar y que nos muestra el tanto por ciento de utilización de la GPU. Este valor se obtiene con,

$ nvidia-settings -tq GPUUtilization

obteniendo la siguiente salida,

nvidiasettings GPU

como muestra diferente información y la que nos interesa corresponde con graphics=6, utilizamos un formateo para obtener solamente el valor 6.

$ nvidia-settings -tq GPUUtilization | awk -F '[,= ]' '{ print $2 }'

Este valor es el que trasladaremos a nuestra configuración de conky,

${lua_parse conky_pad ${execi 1 nvidia-settings -tq GPUUtilization | awk -F '[,= ]' '{ print $2 }'}}%

además si estamos utilizando gráficos Lua, deberemos utilizar una función en este caso conky_pad para pasar como parámetro este valor. El manejo de Lua requiere conocimientos en programación, para procesar los parámetros que estemos pasando.

luanvdia

nvidia-smi

Ya simplemente con la ejecución del comando anterior, sin ningún tipo de parámetro muestra toda la información que nos puede proporcionar.

nvidiasmi

Necesitamos saber los parámetros y atributos disponibles para consultar esa información.

nvidiasmi-parametros

nvidiasmi-atributos

uno de los atributos a consultar podría ser name, para conocer el nombre y modelo.  El comando al completo, viene dado por

$ nvidia-smi --query-gpu=name --format=csv,noheader

obteniendo la siguiente salida.

nvidiasmi-salida

Ya pasándolo a nuestra configuración de conky, se quedaría como,

Nombre:         $alignr${execi 100 nvidia-smi --query-gpu=name --format=csv,noheader}

nvidiasmi-nombre

finalmente podría ser interesante conocer driver_version, memory.used, memory.total, temperature.gpu y fan.speed entre otros.

Driver Version: $alignr${offset 10}${execi 100 nvidia-smi --query-gpu=driver_version --format=csv,noheader}
RAM:            $alignr${execi   3 nvidia-smi --query-gpu=memory.used --format=csv,noheader} / ${execi 3 nvidia-smi --query-gpu=memory.total --format=csv,noheader}
GPU Temp:       $alignr${execi   3 nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader}°C
GPU Fan:        $alignr${execi   3 nvidia-smi --query-gpu=fan.speed --format=csv,noheader}

nvidiasmi-resto

finalmente la visualización de conky al completo, podría parecerse a esto.

conkycompleto

En fin nada más, espero que le saquéis todo el jugo a nvidia-settings y nvidia-smi. Para aquellos que les haya parecido interesante el conky utilizado en el post, os dejo como instalarlo en elementary Loki y ubuntu 17.10 Artful, a elegir entre los colores blanco o negro, según el wall que estemos utilizando.

Instalación

Disponible desde la PPA de blog, habrá que añadir el repositorio si todavía no lo tienes. Para ello desde el terminal,

$ sudo add-apt-repository ppa:yunnxx/gnome3
$ sudo apt update
$ sudo apt install conkynvidia

finaliza la instalación, tendremos ambos en el sistema, solamente hay que decidirse por uno de ellos y activarlo para que se muestre en nuestro escritorio.

Activación blanco

Para ello lanzamos el siguiente script,

$ iconkynvdiawhite.sh

Desactivación blanco

$ dconkynvdiawhite.sh

Activación negro

Para ello lanzamos el siguiente script,

$ iconkynvdiablack.sh

Desactivación negro

$ dconkynvdiablack.sh

ubuntu conky

Una vez activado el conky, deberemos reiniciar sesión, para que tras el paso de unos segundos deberá mostrarse en la parte derecha de nuestro escritorio.

Desinstalación

Para borrarlo completamente del sistema, nos aseguramos primeramente que se encuentran desactivados, y a continuación,

$ sudo apt-get purge conkynvidia
Esta entrada fue publicada en articulo, conky, elementaryos, GNU/Linux, temas, ubuntu y etiquetada , , , , , , , , , , , , , . Guarda el enlace permanente.

3 respuestas a Conky Nvidia en elementary OS Loki y ubuntu 17.10 Artful

  1. Hola, buen blog, gracias por la info.
    Una duda, no me funciona el network del conky, que será?
    *tengo elementary loki e instalé el conky-all…

    • yunn dijo:

      Hola Camilo, supongo que va el ser el interface de red, evidentemente en cada ordenador tiene uno diferente. Quiere decirse por un lado que da igual la configuración de conky que puedas conseguir y bajar, habitualmente no te va a coincidir. Es necesario por tanto que adquieras algunos conocimientos sobre el sistema y parametrización en tu configuración conky.
      Basicamente tienes que averiguar tu interface de red, eso lo puedes hacer con:

      $ ls /sys/class/net


      El comando anterior te listara una lista de todos dispositivos de red disponibles, tienes que descartar el que te aparece como >> lo. Por tanto si solo tiene una tarjeta de red, tendrás un solo nombre disponible.
      Una vez conseguido sustituye por el que hay en tus actuales conkys y configuracion lua, que se corresponde con el nombre de enp8s0.
      Saludos,

      • Gracias yunn, ahora sólo tengo un problema con las barras lua. Tengo dos tarjetas de video, cuando ocupo la tarjeta nvidia funciona todo bien pero cuando ocupo la tarjeta integrada no salen las barras del network, solo los nros. Que será?

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.