Conky, des variables système sur le bureau !
Table des matières
Cet article illustre juste le conky que j'ai sur mon bureau, avec son fichier de configuration.
Cet article permet de vous donner une vue d'un fichier de configuration fonctionnel. Les lignes de commande affichant les informations radio, le mot du jour (toutes les commandes avec un wget) peuvent ne plus fonctionner si le site a changé entre la publication du conky et maintenant. A vous d'adapter la configuration.
Tout se passe dans le fichier .conkyrc situé dans /home/$USER !
Voici d'abord la doc officielle sur les variables http://conky.sourceforge.net/variables.html
Depuis la version 1.10 de Conky, la syntaxe du fichier de config est en LUA. Voici le squelette de base :
Les variables sont assez explicites avec leur nom.
Là où il y a des XXX c'est à vous de personnaliser et c'est ce qui fa s'afficher sur le bureau.
Voici quelques variables dans le texte intéressantes :
${font Droid Sans Mono:size=9} : Permet de définir la police après cette balise
${color black} : Permet de définir la couleur du texte derrière cette balise. Les couleurs sont red,green,yellow,blue,magenta,cyan,black,white ou code hexadécimal
${goto 250} : Décale de 250px
${texeci 900 cat /etc/gentoo-release} : Permet d"exécuter la commande cat /etc/gentoo-release toutes les 900 secondes
$mem $memmax $memperc% : Variables mémoire utilisée, total, utilisée en %
${fs_used /home} ${fs_size /home} ${fs_used_perc /home} : Variable de système de fichiers (on indique le point de montage, ici /home) utilisé, total, utilisé en %
${addr eth0} ${downspeedf eth0} ${upspeedf eth0} : Variable interface réseau (on indique le nom de l'interface) adresse IP, débit descendant (kb/s), débit montant (kb/s)
Voici un aperçu graphique de mon conky en Mars 2020 :
Et voici le contenu du fichier de config :
Au format texte : conkyrc.txt
Si vous avez un vieux conky (1.9) c'est l'ancienne syntaxe qu'il faut utiliser. Je vous laisse mon conky de 2016.
Le fichier de config :
Introduction
Cet article illustre juste le conky que j'ai sur mon bureau, avec son fichier de configuration.
Cet article permet de vous donner une vue d'un fichier de configuration fonctionnel. Les lignes de commande affichant les informations radio, le mot du jour (toutes les commandes avec un wget) peuvent ne plus fonctionner si le site a changé entre la publication du conky et maintenant. A vous d'adapter la configuration.
La configuration
Tout se passe dans le fichier .conkyrc situé dans /home/$USER !
Voici d'abord la doc officielle sur les variables http://conky.sourceforge.net/variables.html
Depuis la version 1.10 de Conky, la syntaxe du fichier de config est en LUA. Voici le squelette de base :
Code BASH :
conky.config = { background = true, own_window = true, own_window_class = 'Conky', own_window_transparent = false, own_window_type = 'desktop', own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager', own_window_argb_visual = true, own_window_argb_value = 0, double_buffer = true, no_buffers = true, use_spacer = 'none', use_xft = true, xftalpha = 1, font = 'Sans:size=10', update_interval = 1, uppercase = false, override_utf8_locale = true, stippled_borders = 1, border_width = 5, draw_borders = false, draw_graph_borders = true, draw_outline = false, draw_shades = false, show_graph_scale = true, show_graph_range = true, alignment = 'top_left', gap_x = 10, gap_y = 10, net_avg_samples = 1, cpu_avg_samples = 6, short_units = true, pad_percents = 2, text_buffer_size = 2048, out_to_console = false, out_to_stderr = false, extra_newline = false, } conky.text = [[ XXXXXXXXXXXXXXXXXX ]]
Les variables sont assez explicites avec leur nom.
Là où il y a des XXX c'est à vous de personnaliser et c'est ce qui fa s'afficher sur le bureau.
Voici quelques variables dans le texte intéressantes :
${font Droid Sans Mono:size=9} : Permet de définir la police après cette balise
${color black} : Permet de définir la couleur du texte derrière cette balise. Les couleurs sont red,green,yellow,blue,magenta,cyan,black,white ou code hexadécimal
${goto 250} : Décale de 250px
${texeci 900 cat /etc/gentoo-release} : Permet d"exécuter la commande cat /etc/gentoo-release toutes les 900 secondes
$mem $memmax $memperc% : Variables mémoire utilisée, total, utilisée en %
${fs_used /home} ${fs_size /home} ${fs_used_perc /home} : Variable de système de fichiers (on indique le point de montage, ici /home) utilisé, total, utilisé en %
${addr eth0} ${downspeedf eth0} ${upspeedf eth0} : Variable interface réseau (on indique le nom de l'interface) adresse IP, débit descendant (kb/s), débit montant (kb/s)
Exemple Conky 2020
Voici un aperçu graphique de mon conky en Mars 2020 :
Et voici le contenu du fichier de config :
Code :
conky.config = {
background = true,
own_window = true,
own_window_class = 'Conky',
own_window_transparent = false,
own_window_type = 'desktop',
own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
own_window_argb_visual = true,
own_window_argb_value = 0,
double_buffer = true,
no_buffers = true,
use_spacer = 'none',
use_xft = true,
xftalpha = 1,
font = 'Sans:size=10',
update_interval = 1,
uppercase = false,
override_utf8_locale = true,
stippled_borders = 1,
border_width = 5,
draw_borders = false,
draw_graph_borders = true,
draw_outline = false,
draw_shades = false,
show_graph_scale = true,
show_graph_range = true,
alignment = 'top_left',
gap_x = 10,
gap_y = 10,
net_avg_samples = 1,
cpu_avg_samples = 6,
short_units = true,
pad_percents = 2,
text_buffer_size = 2048,
out_to_console = false,
out_to_stderr = false,
extra_newline = false,
}
conky.text = [[
${font Droid Sans Mono:size=9}
${color black}SYSTEM:${color #510289}
${color black}Distribution:${color #510289} ${texeci 900 cat /etc/gentoo-release} ${color black}with kernel${color #510289} $kernel
${color black}Uptime:${color #510289} $uptime ${goto 250}${color black}Load average:${color #510289} $loadavg
${color black}RAM: ${color #510289} $mem / $memmax ($memperc%) ${goto 250}${color black}SWAP: ${color #510289} ${swap} / ${swapmax} (${swapperc}%)
${color black}CPU: ${color #510289}${texeci 2 sensors | grep "CPUTIN"| awk '{ print $2}'} - ${color black}FAN: ${color #510289}${texeci 2 sensors | grep fan3 | awk '{ print $2}'} tr/mn ${goto 250}${color black}GPU: ${color #510289}${texeci 2 sensors | grep "edge"| awk '{ print $2}'} - ${color black}FAN: ${color #510289}${texeci 2 sensors | grep fan1 | head -1 | awk '{ print $2}'} tr/mn
${color black}Root: ${color #510289}${fs_used /} / ${fs_size /} (${fs_used_perc /}%) ${goto 250}${color black}/boot: ${color #510289}${fs_used /boot} / ${fs_size /boot} (${fs_used_perc /boot}%)
${color black}/home: ${color #510289}${fs_used /home} / ${fs_size /home} (${fs_used_perc /home}%) ${goto 250}${color black}DATA: ${color #510289}${fs_used /media/DATA} / ${fs_size /media/DATA} (${fs_used_perc /media/DATA}%)
${color black}SDD: ${color #510289}${texeci 2 echo $(($(udisksctl dump /dev/sda | grep Temp | tail -1 | awk '{ print $2 ; }' | cut -d'.' -f1)-273))°C} ${goto 250}${color black}HDD: ${color #510289}${texeci 2 echo $(($(udisksctl dump /dev/sdb | grep Temp | head -2 | tail -1 | awk '{ print $2 ; }' | cut -d'.' -f1)-273))°C}
${color black}IP eth0 : ${color #510289}${addr eth0} ${goto 250}${color black}DL:${color #510289} ${downspeedf eth0}k/s ${goto 350} ${color black}UP:${color #510289} ${upspeedf eth0}k/s
${color black}EPHEMERIDE :${color #510289}
${color black}Nous sommes le ${color #510289}${texeci 1000 date "+%A %d %B %Y" }
${color black}Fête du jour : ${color #510289}${texeci 1000 wget -O - -q http://fetedujour.fr/ --user-agent="Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0" | grep "<span>Fête du jour" | head -1 | cut -d">" -f4 | cut -d"<" -f1 | sed -e 's/Nativité/Adrien/' }
${color black}Mot du jour : ${color #510289}${texeci 1000 wget -O - -q http://www.wikebec.org/ | grep fas | cut -d">" -f5 | cut -d"<" -f1} ${color black}: ${color #510289}${texeci 1000 wget -O - -q http://www.wikebec.org/ | grep '<li>' | tail -1 | cut -d'>' -f2 | cut -d'<' -f1}
${color black}Météo : ${color #510289}${texeci 3600 curl -s 'wttr.in/dijon?qT0&lang=fr' | head -7}
${color black}DIFFUSION FM MAISON (108.0 FM) :${color #510289}
${color black}Programmation actuelle : ${color #510289}${texeci 30 wget -O - -q http://cluster.linuxtricks.fr/radio/api/prog.php }
${color black}En ce moment : ${color #510289}${texeci 30 wget -O - -q http://cluster.linuxtricks.fr/radio/api/song.php}
${color black}DIVIA TOTEM :${color #510289}
${color black}BUS : ${color #510289}${texeci 20 /home/adrien/.adrien/divia-totem-parser/divia-totem-parser.pl -l=90 -a=688 }
${color black}TRAM : ${color #510289}${texeci 20 /home/adrien/.adrien/divia-totem-parser/divia-totem-parser.pl -l=96 -a=1477 }
${color black}TRAM : ${color #510289}${texeci 20 /home/adrien/.adrien/divia-totem-parser/divia-totem-parser.pl -l=185 -a=1510 }
${color black}TRAM : ${color #510289}${texeci 20 /home/adrien/.adrien/divia-totem-parser/divia-totem-parser.pl -l=81 -a=1576 }
${color black}TRAM : ${color #510289}${texeci 20 /home/adrien/.adrien/divia-totem-parser/divia-totem-parser.pl -l=82 -a=1542 }
${color black}PENSE BETE :${color #510289}
${texeci 60 cat /home/adrien/notes }
]]
Au format texte : conkyrc.txt
Archives Conky 2016
Si vous avez un vieux conky (1.9) c'est l'ancienne syntaxe qu'il faut utiliser. Je vous laisse mon conky de 2016.
Le fichier de config :
Code TEXT :
background yes use_xft yes xftfont Sans:size=10 xftalpha 1 update_interval 1.0 total_run_times 0 own_window yes own_window_transparent yes own_window_argb_visual yes own_window_type normal own_window_hints undecorated,below,skip_taskbar,skip_pager,sticky double_buffer yes minimum_size 800 500 maximum_width 500 text_buffer_size 2000 draw_shades no draw_outline no draw_borders no draw_graph_borders no default_color white default_outline_color white alignment top_left gap_x 10 gap_y 10 no_buffers yes uppercase no cpu_avg_samples 2 override_utf8_locale yes # color1 white # color2 orange # color3 white # color4 lightblue #cornflowerblue # Lua Load # #lua_load ~/.conky/ring.lua #lua_draw_hook_pre clock_rings TEXT ${font Sans:size=8}${color3}SYSTEM : ¨¨¨¨¨¨¨¨${color2} ${color3}OS : ${color2}${exec lsb_release -d | cut -f2 } ${color3}Kernel: ${color2}${exec uname -r} ${goto 160}${color3}Arch: ${color2}$machine ${color3}Uptime:${color2} $uptime ${goto 160}${color3}Load:${color2} $loadavg ${color3}Processes: ${color2} $processes${color3}${goto 160}Running Processes: ${color2} $running_processes ${color3}Battery: ${color2} ${exec acpi -b | awk '{ print "State : " $3 " Capacity : "$4 " (" $5 ")"}'} ${color3}CPU : ¨¨¨¨¨${color2} ${color3}Clock frequency :${color2} ${freq_g} GHz ${color3}Core 0 and 4:${color2} ${cpu cpu0}%${goto 110}${color4}${cpubar cpu0 6,60}${color2}${goto 190}${exec expr `sensors | grep 'Core 0' | cut -d+ -f2 | cut -d\( -f1 | cut -d. -f1`}°C ${color3}Core 1 and 5:${color2} ${cpu cpu1}%${goto 110}${color4}${cpubar cpu1 6,60}${color2}${goto 190}${exec expr `sensors | grep 'Core 1' | cut -d+ -f2 | cut -d\( -f1 | cut -d. -f1`}°C ${color3}Core 2 and 6:${color2} ${cpu cpu2}%${goto 110}${color4}${cpubar cpu2 6,60}${color2}${goto 190}${exec expr `sensors | grep 'Core 2' | cut -d+ -f2 | cut -d\( -f1 | cut -d. -f1`}°C ${color3}Core 3 and 7:${color2} ${cpu cpu3}%${goto 110}${color4}${cpubar cpu3 6,60}${color2}${goto 190}${exec expr `sensors | grep 'Core 3' | cut -d+ -f2 | cut -d\( -f1 | cut -d. -f1`}°C ${color3}CPU Fan Speed: ${color2} ${exec sensors | grep cpu_fan | awk '{ print $2 " tr/mn"; }'} ${color3}MEMORY : ¨¨¨¨¨¨¨¨${color2} ${color3}RAM:${goto 40}${color2} $mem / $memmax ${goto 170}$memperc% ${color3}SWAP:${goto 40}${color2} ${swap} / ${swapmax} ${goto 170} ${swapperc}% ${color3}STORAGE : ¨¨¨¨¨¨¨¨¨${color2} ${color3}Root ${color2}${goto 50}${fs_used /} / ${fs_size /} ${goto 170}${fs_used_perc /}% ${color3}Home ${color2}${goto 50}${fs_used /home} / ${fs_size /home} ${goto 170}${fs_used_perc /home}% ${color3}Var-cl ${color2}${goto 50}${fs_used /var/calculate} / ${fs_size /var/calculate} ${goto 170}${fs_used_perc /var/calculate}% ${color3}DATA ${color2}${goto 50}${fs_used /media/DATA} / ${fs_size /media/DATA} ${goto 170}${fs_used_perc /media/DATA}% # #${color3}Temp HDD : ${color2}${texeci 60 /usr/sbin/hddtemp /dev/sdb 2>/dev/null | grep sdb | awk '{ print $5 }' } ${color3}NETWORK : ¨¨¨¨¨¨¨¨¨${color2} ${color3}eth : ${color2}${addr eth0} ${goto 120}${color3}DL :${color2} ${downspeedf eth0}k/s ${goto 210} ${color3}UP :${color2} ${upspeedf eth0}k/s ${color3}wlan : ${color2}${addr wlan0} ${goto 120}${color3}DL :${color2} ${downspeedf wlan0}k/s ${goto 210} ${color3}UP :${color2} ${upspeedf wlan0}k/s ${color3}Public IP : ${color2}${texeci 1000 wget http://checkip.dyndns.org -O - -o /dev/null | cut -d : -f 2 | cut -d \< -f 1} ${goto 175} ${color3}Latence : ${color2}${texeci 1 ping 8.8.8.8 -c 1 | grep time= | cut -d"=" -f4} ${color3}EPHEMERIDE : ¨¨¨¨¨¨¨¨¨¨¨¨${color2} ${color3}Date : ${color2}${texeci 1000 date "+%A %d %B %Y"} ${color3}Heure : ${color2}${exec date "+%H:%M"} ${color3}Fête du jour : ${color2}${texeci 1000 wget -O - -q http://fetedujour.fr/ --user-agent="Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0" | grep "<span>Fête du jour" | head -1 | cut -d">" -f4 | cut -d"<" -f1 } ${color3}Mot du jour : ${color2}${texeci 1000 wget -O - -q http://www.wikebec.org/ | grep accueil-mdj-title | cut -d">" -f10 | cut -d"<" -f1} ${color3}: ${color2}${texeci 1000 wget -O - -q http://www.wikebec.org/ | grep accueil-mdj-title | cut -d">" -f13 | cut -d"<" -f1} ${color3}MUSIQUE : ¨¨¨¨¨¨¨¨¨¨${color2} ${color3}Dernièrement sur FUN : ${color2}${texeci 20 wget -O - -q http://www.funradio.fr/quel-est-ce-titre | grep -E '(class="song-artist"|class="song-title")' | head -2 | sed -e 'N;s/\n/ /' -e 's/>/\|/g' -e 's/</\|/g' | awk -F'|' '{ print $3 " - " $7}'}