Présentation

Conky est un outil de surveillance système. Véritable moniteur des modifications faites sur votre ordinateur, il vous permettra de suivre en direct les changements comme la mémoire vive, le processeur, afficher la date, etc.

Conky a cela de merveilleux qu’il est configurable à souhait et permet le lancement de script en fonction de divers évènements. Ce qui rend les possibilités gigantesques.

Par ailleurs Conky s’affiche sur votre écran et se fond dans le paysage, littéralement parlant.

Je vous conseille vivement de passer du temps dessus afin de le rendre “à votre image”. Car une fois personnalisé, c’est un plaisir sans cesse renouvelé !

Installation

Sous Debian

Il suffit de taper, en tant que root :

apt-get update && apt-get install conky

Sous ArchLinux

Il suffit de taper, en tant que root :

pacman -Sy && pacman -S conky

Configuration

La configuration s’effectue au travers du fichier .conkyrc.

Différents exemple de fichiers de configuration vous en apprendrons plus que ce que je ne pourrais développer.

Je vous invite à lire le tutoriel de Conky selon pc-inpact .

Mon fichier de configuration

Voici un exemple de configuration pour Conky. Pour une petite description du résultat, Conky va afficher deux lignes en haut de l’écran. Ces lignes sont écrites en bleu avec du blanc.

Veillez à créer les fichiers ~/bin/warn-shutdown et ~/bin/shutdown-now

Voici donc mon fichier .conkyrc :

# Conky sample configuration
#
# the list of variables has been removed from this file in favour
# of keeping the documentation more maintainable.
# Check http://conky.sf.net for an up-to-date-list.

# set to true if you want Conky to be forked in the background
background true
# background no

# X font when Xft is disabled, you can pick one with program xfontsel artwiz package?
#font 5x8
#font 6x9
#font 6x10
#font 6x13
#font 8x13
font 9x15
#font *mintsmild.se*
#font -*-*-*-*-*-*-34-*-*-*-*-*-*-*

# Use Xft?
use_xft no

# Set conky on the bottom of all other applications
# on_bottom no

# Xft font when Xft is enabled
xftfont Mono:size=6

# Text alpha when using Xft
xftalpha 0.8

# MPD host/port
# mpd_host localhost
# mpd_port 6600
# mpd_password tinker_bell

# Print everything to console?
# out_to_console no

# mail spool
# mail_spool $MAIL

# 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

# Create own window instead of using desktop (required in nautilus)
#own_window yes
#own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

# Use pseudo transparency with own_window?
own_window_transparent yes

# If own_window_transparent is set to no, you can set the background colour here
# own_window_colour grey

# Use double buffering (reduces flicker, may not work for everyone)
double_buffer yes

# Minimum size of text area
minimum_size 280 5

# Draw shades?
draw_shades yes

# Draw outlines?
draw_outline yes

# Draw borders around text
draw_borders no

# Stippled borders?
stippled_borders 8

# border margins
border_margin 4

# border width
border_width 1

# Default colors and also border colors
default_color light blue
default_shade_color white
default_outline_color black

# Text alignment, other possible values are commented
alignment top_left
#alignment top_right
#alignment bottom_left
#alignment bottom_right
#alignment none

# Gap between borders of screen and text
# same thing as passing -x at command line
gap_x 10
gap_y 10

# Subtract file system buffers from used memory?
no_buffers yes

# set to yes if you want all text to be in uppercase
uppercase no

# number of cpu samples to average
# set to 1 to disable averaging
cpu_avg_samples 2

# number of net samples to average
# set to 1 to disable averaging
net_avg_samples 2

# Force UTF8? note that UTF8 support required XFT
override_utf8_locale no

# Add spaces to keep things from moving about?  This only affects certain objects.
use_spacer none

#   mldonkey_hostname     Hostname for mldonkey stuff, defaults to localhost
#   mldonkey_port         Mldonkey port, 4001 default
#   mldonkey_login        Mldonkey login, default none
#   mldonkey_password     Mldonkey password, default none

# boinc (seti) dir
# seti_dir /opt/seti

# variable is given either in format $variable or in ${variable}. Latter
# allows characters right after the variable and must be used in network
# stuff because of an argument

# stuff after 'TEXT' will be formatted on screen

TEXT
${color blue}[$color Date : ${color white}${time %a %m %B %Y %k:%M}${color blue} ][$color Reseau : ${color white} ${totaldown wlan0} descendu${color blue} ][$color Batterie : ${color light blue}${battery_bar 5,100 BAT1} ${color white}${battery_percent BAT1}% ${color blue}]  ${if_match ${battery_percent BAT1} <###### 10}${color red} BATTERIE FAIBLE !${color}${endif}${if_match ${battery_percent BAT1} < 8}${if_match ${battery_percent BAT1} > 5}${execi 200 urxvt -e ~/bin/warn-shutdown}${endif}${endif}${if_match ${battery_percent BAT1} <= 5}${execi 200 urxvt -e ~/bin/shutdown-now}${endif}
${color blue}[$color Proc : ${color white}${cpubar 4,50}$color ($cpu) ${color white} ${top name 1}${offset -35}$color${top cpu 1}${color blue} ][$color Memoire : ${color white}${membar 4,50} $color ${top_mem name 1}${offset -35}${top_mem mem 1}${color blue} ][$color Disque : ${color white}$diskio_write $diskio_read ${color blue}]

Et le contenu des fichiers ~/bin/warn-shutdown et ~/bin/shutdown-now :

#!/bin/bash

# warn-shutdown
#
# Averti l'utilisateur que la batterie est faible. Lui demande s'il veut
#+ éteindre la machine et l'éteinds si besoin.

userconfirm=`zenity --question --text "Batterie faible. Voulez-vous éteindre ?"; echo $?`
if [ "$userconfirm" != 0 ]; then
echo "SVP, pensez à éteindre la machine dès que possible." | zenity --text-info --title "Note d'information"
exit 1
else
echo "La machine va désormais s'éteindre. Pensez à sauvegarder vos données." | zenity --text-info --title "Information"
gksu 'shutdown -h now'
fi
exit
#!/bin/bash

# shutdown-now
#
# Avertis l'utilisateur que le niveau de batterie est critique. Puis demande
#+ à l'utilisateur le mot de passe du super-utilisateur et éteinds la
#+ machine.

echo -e "Niveau de batterie faible. Vous devriez éteindre la machine !<br/>n Dès que vous aurez mis le mot de passe du super-utilisateur, la machine va s'éteindre." | zenity --text-info --title "Note d'information"
gksu 'shutdown -h now'
exit 1