Table des matières

Conky

Introduction

Conky est un moniteur système hautement configurable. Il permet de surveiller de nombreux paramètres systèmes (charge processeur, occupation mémoire, températures, vitesse ventilateurs, charge batterie, trafic réseau).
Il s'affiche soit dans sa propre fenêtre, soit intégré au bureau :

pour l'info, le wiki conky est obsolète (changement dans l'écriture lua entre la version 1.09 et la version 1.10 de conky)
  • version 1.09 → jessie
  • version 1.10 → stretch

https://github.com/brndnmtthws/conky/wiki/Configuration-Settings
https://github.com/brndnmtthws/conky/wiki/Configuration-Variables

l'ancienne écriture “fonctionne” mais il y a des message d'erreur et d'avertissements, de dysfonctionnements peuvent apparaître

Source sur le forum :

Installation

Pour installer le paquet de base de Conky, saisissez en tant que root :

apt-get update && apt-get install conky-cli

Mais vous souhaiterez plutôt une installation complète :

apt-get update && apt-get install conky-all

Configuration

Avant toutes choses, il est nécessaire d'indiquer à Conky ce qu'il doit faire.
Ces informations sont à placer dans le fichier caché .conkyrc situé dans votre dossier utilisateur. Fichier que vous renseignerez à l'aide d'un éditeur, par exemple nano :

nano ~/.conkyrc

Cependant, pour personnaliser votre configuration, je vous conseille fortement la coloration syntaxique (présente par exemple dans Geany).

Affichage minimal

Nous allons tester un Conky modeste mais fonctionnel. Pour cela, je vous propose le fichier de configuration suivant, permettant d'afficher l'uptime du système et la mémoire disponible, le tout dans une fenêtre en fausse transparence.

~/.conkyrc
# Update interval in seconds
update_interval 1.0
 
# This is the number of times Conky will update before quitting.
# Set to zero to run forever.
total_run_times 0
 
# Run Conky in its own window ?
own_window yes
 
# Use pseudo transparency with own_window ?
own_window_transparent yes
 
# Use double buffering (reduces flicker, may not work for everyone)
double_buffer yes
 
# Minimum size of text area
minimum_size 280 80
 
# Use Xft ?
use_xft yes
 
# Xft font when Xft is enabled
xftfont Mono:size=10
 
# Force UTF8 ?
# Note that UTF8 support required XFT
override_utf8_locale yes
 
 
TEXT
 
En activité depuis : $uptime
 
Mémoire disponible : $memfree

Il reste à lancer Conky :

conky &

Si tout se passe bien, vous devriez voir apparaître une fenêtre telle que celle-ci :

Affichage intégré

Vous pourrez préférer un affichage des informations intégré à vos bureaux.
Rien de plus simple avec une fenêtre transparente sans décoration ; il vous suffit de l'indiquer dans le fichier ~/.conkyrc :

~/.conkyrc
update_interval 5
 
double_buffer yes
 
own_window yes
own_window_transparent yes
own_window_argb_visual yes
own_window_hints undecorate,sticky,skip_taskbar,skip_pager,below
 
override_utf8_locale yes
use_xft yes
xftfont DejaVu Sans:size=14
 
 
TEXT
 
${time %H:%M}

Et vous voila équipé d'une horloge numérique.

Affichage par défaut

En l'absence de fichier de configuration, Conky vous gratifiera d'un affichage des informations les plus couramment recherchées :

Cet affichage correspond à la configuration par défaut :

conkyrc-default
# note that the $xmms2_* and $mpd_* stuff will only work if you have support for them built into conky
 
TEXT
$nodename - $sysname $kernel on $machine
$hr
${color grey}Uptime:$color $uptime
${color grey}Frequency (in MHz):$color $freq
${color grey}Frequency (in GHz):$color $freq_g
${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}
${color grey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4}
${color grey}CPU Usage:$color $cpu% ${cpubar 4}
${color grey}Processes:$color $processes  ${color grey}Running:$color $running_processes
$hr
${color grey}File systems:
 / $color${fs_free /}/${fs_size /} ${fs_bar 6 /}
${color grey}Networking:
 Up:$color ${upspeed eth0} k/s${color grey} - Down:$color ${downspeed eth0} k/s
$hr
${color grey}MPD: $mpd_status $mpd_artist - $mpd_title from $mpd_album at $mpd_vol
Bitrate: $mpd_bitrate\n" "Progress: $mpd_bar
${color grey}XMMS2: $xmms2_status $xmms2_artist - $xmms2_title from $xmms2_album
Progress: $xmms2_bar
${color grey}Name		PID	CPU%	MEM%
 ${color lightgrey} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
 ${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
 ${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
 ${color lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}
${tail /var/log/Xorg.0.log 3}";

Lancement automatique

Si vous souhaitez voir Conky démarrer à l'ouverture de votre session, deux possibilités s'offrent à vous.

Par un gestionnaire de session

Créez une entrée dans votre gestionnaire de session.
Exemple pour Xfce : menu Paramètres, puis Session et démarrage, onglet Démarrage automatique, bouton Ajouter.
La commande à saisir est :

conky -p 2

ou

sh -c "sleep 2; conky;"

Le retard à l'allumage (en secondes) est à adapter aux besoins de votre système.

Les utilisateurs de LXDE pourront, quant à eux, consulter la rubrique Lancer un programme au démarrage.

Par un script

Le script en question est placé, par exemple, dans le dossier utilisateur et nommé .conkyboot.sh :

~/.conkyboot.sh
#!/bin/bash
sleep 2
conky -d

Ce script doit être rendu exécutable :

chmod +x ~/.conkyboot.sh

Il vous reste alors à l'inclure parmi les applications lancées au démarrage. Veuillez pour cela vous reporter à la documentation de votre environnement de bureau.

Le lancement par script est utilisé, en particulier, pour démarrer plusieurs instances de Conky.
Il nécessite alors autant de fichiers de configuration que d'instances de Conky souhaitées :

~/.conkyboot.sh
#!/bin/bash
sleep 2
conky -c ~/conkyrc1 &
sleep 5
conky -c ~/conkyrc2 &

Pour aller plus loin

Références

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !