Conky et ConkyForecast sont sur mon bureau…

Comme mes billets sont souvent agrémentés de captures d’écran de mon bureau afin d’illustrer mes propos, je reçois régulièrement des courriels m’interrogeant sur la météo incrustée sur celui-ci.

J’avais il y a plus de deux ans publié un billet à ce sujet, j’ai donc suite à ces demandes régulières décidé de le réactualiser tout en expliquant plus précisément son fonctionnement.

Pour afficher ce type de Conky, deux applications doivent être présentes sur votre machine, Conky et ConkyForecast. En ce qui concerne la première, cela ne présente pas de problème puisque présente dans les dépôts officiels d’Ubuntu, il suffit donc pour l’installer d’ouvrir un terminal et d’entrer la commande :

sudo apt-get install conky

ConkyForecast, qui permet l’affichage de la météo n’est quant à lui pas présent dans les dépôts officiels, il ne faudra donc l’installer qu’en toute connaissance de cause en rajoutant les dépôts puis en les mettant à jour et enfin en lançant l’installation à l’aide de la commande suivante :

sudo add-apt-repository ppa:conky-companions/ppa && sudo apt-get update && sudo apt-get install conkyforecast

Ceci étant fait, nous allons pouvoir créer notre conky.

Dans un premier temps, nous devons créer un fichier spécifique pour la météo. Pour ce faire, ouvrez un terminal et entrez la commande :

sudo gedit ~/.conky/conkyForecast.template

Une fois votre éditeur de texte ouvert, recopiez le paramétrage ci-dessous :

${voffset 5}${goto 10}${font ConkyWeather:style=Bold:size=40}[--datatype=WF]${font}
${voffset 5}${goto 20}[--datatype=HT --hideunits --centeredwidth=3]/[--datatype=LT --hideunits --centeredwidth=3]
${voffset 10}${goto 10}${font ConkyWindNESW:size=40}[--datatype=BS]${font}
${voffset 5}${goto 10}[--datatype=WS --imperial] - [--datatype=WD]
${voffset -145}${goto 100}${color1}${font Bitstream Vera Sans Mono:style=Bold:size=14}[--datatype=CT]${font}
${voffset 10}${goto 100}${color3}Station: ${color1}[--datatype=OB]
${goto 100}${color3}Pluie : ${color1}[--datatype=PC]
${goto 100}${color3}UV : ${color1}[--datatype=UI] - [--datatype=UT]
${goto 100}${color3}Humidité : ${color1}[--datatype=HM]
${goto 100}${color3}Point de rosée : ${color1}[--datatype=DP]
${goto 100}${color3}Lever/Coucher : ${color1}[--datatype=SR] / [--datatype=SS]
${goto 100}${color3}Pression Atmosphérique : ${color1}[--datatype=BR] - [--datatype=BD]
${goto 100}${color3}Lune : ${color1}[--datatype=MP]
${voffset 25}${goto 25}[--datatype=DW --startday=1 --shortweekday]${goto 100}[--datatype=DW --startday=2 --shortweekday]${goto 175}[--datatype=DW --startday=3 --shortweekday]${goto 250}[--datatype=DW --startday=4 --shortweekday]
${voffset 10}${goto 10}${font ConkyWeather:size=32}[--datatype=WF --startday=1 --endday=4 --spaces=3]${font}
${voffset 15}${goto 15}[--datatype=HT --startday=1 --hideunits --centeredwidth=3]/[--datatype=LT --startday=1 --hideunits --centeredwidth=3]${goto 90}[--datatype=HT --startday=2 --hideunits --centeredwidth=3]/[--datatype=LT --startday=2 --hideunits --centeredwidth=3]${goto 170}[--datatype=HT --startday=3 --hideunits --centeredwidth=3]/[--datatype=LT --startday=3 --hideunits --centeredwidth=3]${goto 245}[--datatype=HT --startday=4 --hideunits --centeredwidth=3]/[--datatype=LT --startday=4 --hideunits --centeredwidth=3]
${color3}${font Bitstream Vera Sans Mono:size=7}${alignr 20}Dernière mise à jour: [--datatype=LU]${font}

Enregistrez et fermez et allez vous créer un compte sur Weather.com.

Vous devez dans le formulaire d’inscription renseigner le nom d’une entreprise, mettez n’importe quoi, ça fonctionne. vous recevrez ensuite un courriel de confirmation à la fin duquel vous trouverez vos identifiants sous la forme :

  • XOAP_PARTNER_ID =
  • XOAP_LICENCE_KEY =

Editez alors un fichier :

sudo gedit ~/.conkyForecast.config

Copiez les lignes suivantes en renseignatnt les deux séries de « XXXXXXXXXX" par les identifiants reçus précédemment :

# config settings for conkyForecast.py
CACHE_FOLDERPATH = /tmp/
CONNECTION_TIMEOUT = 5
EXPIRY_MINUTES = 30
TIME_FORMAT = %H:%M
DATE_FORMAT = %d-%m-%Y
LOCALE = fr
XOAP_PARTNER_ID = XXXXXXXXXX
XOAP_LICENCE_KEY = XXXXXXXXXXX

Le paramétrage de la météo est prêt, il ne reste plus qu’à passer à la création de Conky. Dans un terminal, tapez la commande

sudo gedit ~/.conkyrc

afin de créer le fichier .conkyrc.

Pour faire simple, voici comment se présente le mien. Les explications suivent juste après.

# Configuration du Conky
# édité par Claude Picot : http://www.clapico.com/
# Inscrivez yes si vous souhaitez que Conky soit intégré à votre fond d'écran
background yes
# X font quand Xft n'est pas actif
#font 5x7
#font 6x10
#font 7x13
#font 8x13
#font 9x15
#font *mintsmild.se*
#font -*-*-*-*-*-*-34-*-*-*-*-*-*-*
# Inscrivez yes pour utiliser xft
use_xft yes
# Police à utiliser (Xft doit être actif)
xftfont Ubuntu Mono:size=9
# Text alpha quand Xft est utilisé
xftalpha 0.8
# Intervalle de rafraichissement en secondes
update_interval 1.0
# Nombre de fois où Conky dois se mettre à jour avant de quitter.
# Inscrivez 0 si vous ne souhaitez pas que Conky s'arrête.
total_run_times 0
# Créez une fenêtre indépendante au lieu d'utiliser le bureau (requis dans nautilus)
own_window no
# Réduire l'effet de scintillement
double_buffer yes
# Taille minimum de la zone de texte
minimum_size 450 0
maximum_width 450
# afficher les ombres
draw_shades yes
# afficher les contours
draw_outline no
# afficher les contours autour des textes
draw_borders no
# afficher les contours autour des graphiques
draw_graph_borders yes
# Espacement des séparations ?
stippled_borders 8
# Espacement des marges
border_margin 4
# largeur des contours
border_width 1
# Couleur par défaut du conky, ombres et contours
default_color white
default_shade_color black
default_outline_color white
# Utiliser sa propre fenêtre
own_window yes
# Effet de transparence
own_window_transparent yes
#Type de fenêtre
own_window_type override
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
# Emplacement du texte
alignment top_left
#alignment top_right
#alignment bottom_left
#alignment bottom_right
# Ecart entre les bords du Conky et les bords de l'écran (permet de positionner le Conky sur l'écran)
gap_x 60
gap_y 35
# Soustraire là mémoire tampon à la mémoire utilisée
no_buffers yes
# Texte en Majuscules
uppercase no
# Nombre d'echantillons (processeurs pour faire la moyenne)
# Indiquez 1 si vous ne voulez pas la moyenne
cpu_avg_samples 2
# Nombre d'échantillons (réseaux pour faire la moyenne)
# Indiquez 1 si vous ne voulez pas la moyenne
net_avg_samples 2
# Forcez UTF8? (le support UTF8 support requiert XFT)
override_utf8_locale yes
# Ajoutez des espaces pour empêcher le mouvement des objets (ne concerne que certains objets)
use_spacer right
# Choix des couleurs
#color1 blue
color1 99FFFF
# light blue
color2 E0D6BA
# orange
#E77320
color3 FFFFFF
#color3 3BFE00
# green
color4 78BF39
# red
color5 CC0000
text_buffer_size 2048

# tout ce qui suit TEXT sera repris dans le Conky

 

TEXT
${color3}Bienvenue sur $nodename Systeme $sysname $kernel
${color3}IP : ${color1}${addr wlan0}${color3} ESSID : ${color1}${wireless_essid wlan0}${color3} Signal WiFi: ${color1}${wireless_link_qual wlan0}%
${offset -5}${color3}${font Ubuntu:style=CleanCut:size=10} ${voffset -2}${font Ubuntu:style=Bold:size=11}Météo${font} ${hr}${color1}${execpi 1800 conkyForecast --location=FRXX0274 --template=~/.conky/conkyForecast.template}
${color3}Load :${color1} $loadavg
${color3}CPU Utilisé :${color1} $cpu% ${color3}${cpubar}
${color3}${cpugraph yellow FC8820}
${color3}Mémoire RAM :${color1} $mem/$memmax - $memperc% ${color3}${membar}
${color3}Utilisation du Swap :${color1} $swap/$swapmax - $swapperc% ${color3}${swapbar}
${color3}Température : ${color1}$acpitemp °C
${color3}Espace Disque
${color3}Libre : ${color1}${fs_free /}/${fs_size /} ${color3}${fs_bar /}
${color3}Processus :${color1} $processes ${color3} En cours :${color1} $running_processes
${color3}Utilisation du CPU
${offset 10}${color3}Nom ${alignr 50}PID ${alignr 20}CPU%
${offset 10}${color1}${top name 1} ${alignr 30}${top pid 1} ${alignr 15}${top cpu 1}
${offset 10}${color #888888}${top name 2} ${alignr 30}${top pid 2} ${alignr 15}${top cpu 2}
${offset 10}${color #888888}${top name 3} ${alignr 30}${top pid 3} ${alignr 15}${top cpu 3}
${color3}Utilisation de la Mémoire
${offset 10}${color3}${color3}Nom ${alignr 50}PID ${alignr 20}Mem%
${offset 10}${color1}${top_mem name 1} ${alignr 30}${top_mem pid 1} ${alignr 15}${top_mem mem 1}
${offset 10}${color lightgrey}${top_mem name 2} ${alignr 30}${top_mem pid 2} ${alignr 15}${top_mem mem 2}
${offset 10}${color lightgrey}${top_mem name 3} ${alignr 30}${top_mem pid 3} ${alignr 15}${top_mem mem 3}

Essayons maintenant de décrypter ce fichier .conkyrc . Toute la partie haute correspond au paramétrage du Conky, notamment en ce qui concerne les couleurs, la police, la taille, le positionnement… Les explications sont directement inscrites dessus puisque les lignes commençant par # ne sont pas lues par la suite.

Ce qui s’affiche sur le bureau est la partie du fichier que vous trouvez à partir de la ligne TEXT.

Pour la première ligne :

${color3}Bienvenue sur $nodename Systeme $sysname $kernel

Est indiquée la couleur paramétrée à l’étape précedent. Nodename ,correspond au nom de l’utilisateur, sysname au système utilisé et kernel au n° de kernel utilisé. Le reste du texte concerne la phrase qui s’affichera à l’écran.

Le bloc suivant concerne le réseau :

${color3}IP : ${color1}${addr wlan0}${color3} ESSID : ${color1}${wireless_essid wlan0}${color3} Signal WiFi: ${color1}${wireless_link_qual wlan0}%

Wlan0 correspond à mon wifi. Pour certains ce sera wlan1 et pour ceux qui son en ethernet, ce sera eth0 ou eth1 (sans mettre le signal bien entendu).

Attention à la météo, une modification est ici nécessaire.

${offset -5}${color3}${font Ubuntu:style=CleanCut:size=10} ${voffset -2}${font Ubuntu:style=Bold:size=11}Météo${font} ${hr}${color1}${execpi 1800 conkyForecast --location=FRXX0274 --template=~/.conky/conkyForecast.template}

En effet, il faut modifier la rubrique location =FRXX0274 qui donne la station météo à surveiller par le code de votre ville. Pour ce faier, vous devez vous rendre sur le site www.weather.com . Tapez le nom de votre ville dans le champ « Local weather ». Une fois la ville trouvée, cliquez dessus, le code se trouvera dans la barre de navigation (http://www.weather.com/outlook/travel/businesstraveler/local/FRXX0135 par exemple).

Viennent ensuite les informations concernant les ressources de votre système :

${color3}Load :${color1} $loadavg
${color3}CPU Utilisé :${color1} $cpu% ${color3}${cpubar}
${color3}${cpugraph yellow FC8820}
${color3}Mémoire RAM :${color1} $mem/$memmax - $memperc% ${color3}${membar}
${color3}Utilisation du Swap :${color1} $swap/$swapmax - $swapperc% ${color3}${swapbar}
${color3}Température : ${color1}$acpitemp °C
${color3}Espace Disque
${color3}Libre : ${color1}${fs_free /}/${fs_size /} ${color3}${fs_bar /}
${color3}Processus :${color1} $processes ${color3} En cours :${color1} $running_processes

Puis l’utilisation du processeur :

${color3}Utilisation du CPU
${offset 10}${color3}Nom ${alignr 50}PID ${alignr 20}CPU%
${offset 10}${color1}${top name 1} ${alignr 30}${top pid 1} ${alignr 15}${top cpu 1}
${offset 10}${color #888888}${top name 2} ${alignr 30}${top pid 2} ${alignr 15}${top cpu 2}
${offset 10}${color #888888}${top name 3} ${alignr 30}${top pid 3} ${alignr 15}${top cpu 3}

où sont listés les trois applications consommant le plus et enfin l’utilisation de la mémoire :

${color3}Utilisation de la Mémoire
${offset 10}${color3}${color3}Nom ${alignr 50}PID ${alignr 20}Mem%
${offset 10}${color1}${top_mem name 1} ${alignr 30}${top_mem pid 1} ${alignr 15}${top_mem mem 1}
${offset 10}${color lightgrey}${top_mem name 2} ${alignr 30}${top_mem pid 2} ${alignr 15}${top_mem mem 2}
${offset 10}${color lightgrey}${top_mem name 3} ${alignr 30}${top_mem pid 3} ${alignr 15}${top_mem mem 3}

avec là aussi l’affichage du « top 3″.

Une fois choisis et recopiés sur ce fameux fichier .conkyrc les items qui vous conviennent, il ne reste plus qu’à enregistrer et fermer puis à lancer Conky en appuyant simultanément sur les touches [Alt] + [F2] afin d’entrer la commande conky

Si votre conky ne vous convient pas, ré-éditez le fichier .conkyrc (sudo gedit ~/.conkyrc) et modifiez le. Pour fermer Conky, faites à nouveau [Alt] + [F2] et entrez la commande killall conky

Il ne reste plus qu’à programmer le lancement de conky à l’ouverture de votre machine.

Allez dans « Réglages du système » puis applications au démarrage

Cliquez sur ajouter et entrez la commande :

sh -c "sleep 60 && conky"

Le « sleep 60″ correspond à un délai d’attente de 60 secondes avant l’ouverture de Conky, ce qui permet que toutes les applications soient lancées avant l’ouverture de ce dernier afin d’éviter l’affiche de Conky au dessus de celui des fenêtres.

Vous pouvez configurer Conky à votre guise (comme dirait Jean Rochefort) et y intégrer d’autres éléments que ceux présentés ci-dessus. Voici donc une série de liens très utiles :

Amusez-vous bien.

Billets reliés

Vus : 1677
Publié par Clapico : 290