Table des matières
Affichage des ressources système : Conky
Ce logiciel libre permet l'affichage d'informations sur le bureau Gnome. Il est entièrement paramétrable.
Pour voir des exemples de configuration de conky, consultez ce topic :
Téléchargement
Pour le télécharger : vous pouvez utiliser Synaptic avec l'outil de recherche ou bien le terminal et apt-get :
sudo apt-get install conky
Configuration
Pour configurer conky, il faut créer un fichier .conkyrc dans votre $HOME
gedit .conkyrc (Ubuntu) kate .conkyrc (Kubuntu) mousepad .conkyrc (Xubuntu)
Ici, vous pouvez mettre du code spécial conky, par exemple :
alignment top_right # position cpu_avg_samples 2 # nombre d'echantillons a utiliser pour calculer la moyenne d'utilisation net_avg_samples 2 # nombre d'echantillons a utiliser pour calculer la moyenne d'utilisation update_interval 1.0 # taux de raffraichissement de la fenetre (en secondes) own_window yes own_window_transparent yes own_window_type override double_buffer yes # pour eviter le cligontement (necessite load "dbe" dans xorg.conf) TEXT ${color #bbbbbb}$stippled_hr ${color #bbbbbb}${time %A %d %B %Y} - ${time %H:%M:%S} $sysname $kernel sur $machine $freq_g GHz ${color #bbbbbb}IP Locale : ${color #ffffff}${addr eth0} - ${color #bbbbbb}IP Publique : ${color #ffffff}${execi 1800 wget -O - http://ip.tupeux.com | tail} ${color #bbbbbb}Allumer depuis :${color #ffffff} $uptime ${color #bbbbbb}$stippled_hr ${color #bbbbbb}Usage CPU :${color #ffffff} $cpu% ${color #ffffff} ${cpubar} ${color #ffffff} ${cpugraph ffffff ffffff} ${color #bbbbbb}Usage RAM :${color #ffffff} $mem/$memmax - $memperc% ${membar} ${color #bbbbbb}Processus :${color #ffffff} $processes ${color #ffffff}Running:${color #ffffff} $running_processes ${alignc 0}${color #bbbbbb} PID CPU% MEM% ${color #bbbbbb}CPU usage${color #ffffff} ${color yellow}${top name 1}${alignc 0} ${top pid 1} ${alignc -25}${top cpu 1} ${alignc -46}${top mem 1}${color #ffffff} ${top name 2}${alignc 0} ${top pid 2} ${alignc -25}${top cpu 2} ${alignc -46}${top mem 2} ${top name 3}${alignc 0} ${top pid 3} ${alignc -25}${top cpu 3} ${alignc -46}${top mem 3} ${top name 4}${alignc 0} ${top pid 4} ${alignc -25}${top cpu 4} ${alignc -46}${top mem 4} ${top name 5}${alignc 0} ${top pid 5} ${alignc -25}${top cpu 5} ${alignc -46}${top mem 5} ${color #bbbbbb}Mem usage${color #ffffff} ${color yellow}${top_mem name 1}${alignc 0} ${top_mem pid 1} ${alignc -25}${top_mem cpu 1} ${alignc -46}${top_mem mem 1}${color #ffffff} ${top_mem name 2}${alignc 0} ${top_mem pid 2} ${alignc -25}${top_mem cpu 2} ${alignc -46}${top_mem mem 2} ${top_mem name 3}${alignc 0} ${top_mem pid 3} ${alignc -25}${top_mem cpu 3} ${alignc -46}${top_mem mem 3} ${top_mem name 4}${alignc 0} ${top_mem pid 4} ${alignc -25}${top_mem cpu 4} ${alignc -46}${top_mem mem 4} ${top_mem name 5}${alignc 0} ${top_mem pid 5} ${alignc -25}${top_mem cpu 6} ${alignc -46}${top_mem mem 5} ${color #bbbbbb}$stippled_hr ${color bbbbbb}Ethernet (eth0) :${alignr}DL :${color #ffffff} ${totaldown eth0} ${color bbbbbb}/ UP :${color #ffffff} ${totalup eth0} ${color bbbbbb}Down :${color #ffffff} ${downspeed eth0} k/s${color bbbbbb} ${offset 100}Up:${color #ffffff} ${upspeed eth0} k/s ${color #bbbbbb}$stippled_hr ${color #bbbbbb}Espace Disque : Principal : ${color #ffffff}${fs_free /}/${fs_size /} ${fs_bar /} ${color #bbbbbb}Home : ${color #ffffff}${fs_free /home}/${fs_size /home} ${fs_bar /home} ${color #bbbbbb}$stippled_hr ${color #bbbbbb}Port(s) ouvert(s) :${color #ffffff}${tcp_portmon 1 65535 count} ${color #ffffff} ${tcp_portmon 1 65535 rhost 0} $alignr${tcp_portmon 1 65535 lservice 0} ${tcp_portmon 1 65535 rhost 1} $alignr${tcp_portmon 1 65535 rport 1} ${tcp_portmon 1 65535 rhost 2} $alignr${tcp_portmon 1 65535 rport 2} ${tcp_portmon 1 65535 rhost 3} $alignr${tcp_portmon 1 65535 rport 3} ${tcp_portmon 1 65535 rhost 4} $alignr${tcp_portmon 1 65535 rport 4} ${tcp_portmon 1 65535 rhost 5} $alignr${tcp_portmon 1 65535 rport 5} ${color #bbbbbb}$stippled_hr
Cette configuration est très simple, mais vous pouvez la modifier, changer les couleurs etc …
Autres exemples
Sur le site officiel : site officiel
Sur le forum ubuntu : http://forum.ubuntu-fr.org/viewtopic.php?id=99471
Exécution
Pour exécuter conky, faites ALT + F2 et vous tapez conky.
Si vous voulez le charger au démarrage : Système → Préférence → Sessions → Programme au démarrage Cliquez sur Ajouter et vous tapez “conky”.
Problèmes rencontrés
Problème de clignotement
Pour éviter le clignotement :
gedit $HOME/.conkyrc
Et vous mettez “yes” pour :
- own_window
- double_buffer
On peut aussi rajouter “yes” pour:
- own_window_transparent
Pour que l'option double_buffer fonctionne, le module “dbe” (Double Buffer Extension) doit être activé dans /etc/X11/xorg.conf. On ajoute donc Load “dbe” dans la section Module du xorg.conf après l'avoir sauvegardé:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.backup gksudo gedit /etc/X11/xorg.conf</code> chercher <code>Section "Module" ... EndSection
et insérer Load “dbe” dans la liste des modules chargés. Relancer le serveur X (ctrl+alt+backspace) pour que les changements prennent effet.
En cas de problème,
sudo cp /etc/X11/xorg.backup /etc/X11/xorg.conf
Voilà ;)
Éviter une fenêtre dans la barre des taches
Deux méthodes :
1. (conky 1.4.2) Il faut rajouter dans le .conkyrc, avant la section TEXT (cette méthode permet de ne pas avoir à lancer un deuxième processus au démarrage) :
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
Les propriétés sont :
- undecorated qui enlève le tour de la fenêtre
- below qui permet de mettre la fenêtre de conky sous les autres fenêtres
- sticky qui laisse la fenêtre de conky sur tous les bureaux
- skip_taskbar qui enlève conky de la barre des taches
- skip_pager qui enlève conky du pager (alt-tab)
Ce type ne permet pas de conserver conky visible lorsque l'on clique sur faire apparaître le bureau. En mettant la ligne : own_window_type override
On conserve la plupart des options évoquées précédemment et en plus on conserve conky même lorsque l'on clique sur faire apparaître le bureau (il peut y avoir un problème d'affichage des icones du bureau).
(plus d'info dans le man conky qui est reproduit sur http://conky.sourceforge.net/docs.html).
2. Il faut utiliser le packet devilspie (ce qui nécessite le lancement de conky et devilspie au démarrage, l'intérêt est que l'on peut gérer plusieurs processus avec devilspie) :
sudo apt-get install devilspie
Deux méthodes de configuration de devilspie : Pour devilspie ⇐ 0.12
Méthode 1 : créer un fichier :
gedit $HOME/.devilspie.xml
Et vous mettez dedans :
<?xml version="1.0"?> <!DOCTYPE devilspie SYSTEM "devilspie.dtd"> <devilspie> <!-- This flurb configures devilspie to watch for a window called "conky" --> <flurb name="conky"> <matchers> <matcher name="DevilsPieMatcherWindowName"> <property name="application_name" value="conky"/> </matcher> </matchers> <!-- The following controls what actions are preformed --> <actions> <!-- Hide conky from the taskbar and the pager --> <action name="DevilsPieActionHide"> <property name="skip-tasklist" value="TRUE"/> <property name="skip-pager" value="TRUE"/> </action> <!-- Show conky on all workspaces --> <action name="DevilsPieActionSetWorkspace"> <property name="pinned" value="TRUE"/> </action> </actions> </flurb> </devilspie>
Méthode 2 :
Créez un dossier caché dans le home:
mkdir ~/.devilspie
Aller dans ce dossier :
cd ~/.devilspie/
Editer le fichier de configuration (on peut lui donner n'importe quel nom) :
gedit conky.ds
Coller les s-expressions utilisées par devilspie (infos supplémentaires sur http://wiki.foosel.net/linux/devilspie). Un fichier classique pour conky serait :
(if (is (application_name) "ubuntu - conky") (begin (pin) (skip_pager) (skip_tasklist) (below) (wintype "dock") ) )
Quelques explications :
- application_name : nom de l'application
- pin : permet de mettre conky sur tous les bureaux
- skip_pager : conky n'apparait pas quand on fait alt-tab
- skip_tasklist : conky n'apparait pas dans la barre des taches
- below : conky est toujours dessous les autres fenêtres
- wintype “dock” : permet d'avoir conquis encore apparant même lorsque l'on clique l'icône pour faire apparaître le bureau la classe ultime…
Il est possible qu'il faille adapter le champ application_name. Il y a surement une méthode plus simple mais j'ai pas encore trouvé… On fait un fichier test.ds dans le dossier caché devilspie avec dedans :
(debug)
Ensuite on lance l'application dont on cherche le nom (conky dans notre cas). Puis on lance devilspie dans la console. Il apparait dans la console des informations sur les fenêtres ouvertes en ce moment, donc notre application, il suffit de repérer le nom de conky. Une fois cela fait on efface le fichier test.ds
Puis il faut le charger au démarrage : Système → Préférence → Sessions → Programme au démarrage Cliquez sur Ajouter et vous tapez devilspie
Voilà
Scripts pour votre .conkyrc
AmaroK
Si vous desirez voir sur votre Conky, ce que vous ecoutez sur AmaroK, voici la portion à rajouter dans votre .conkyrc
${if_running amarok} ${color}AmaroK${color white} ${alignc}${execi 10 ~/.conky/amarok artist} ${alignc}${execi 10 ~/.conky/amarok title} ${execibar 1 ~/.conky/amarok progress} ${alignc}"${execi 10 ~/.conky/amarok album}" ${alignc}${execi 10 ~/.conky/amarok year} - ${color white}${alignc}${execi 10 ~/.conky/amarok genre}$endif
Ensuite vous créez un dossier caché dans le home nommé “.conky”
Créez un dossier caché dans le home:
mkdir ~/.conky
Aller dans ce dossier :
cd ~/.conky/
Puis créez un fichier nommé “amarok”
gedit ~/.conky/amarok
Et ajouter :
#!/bin/bash # amaroK info display script by eirc <eirc.eirc@gmail.com> case "$1" in # Now Playing Info artist) dcop amarok player artist ;; title) dcop amarok player title ;; album) dcop amarok player album ;; year) dcop amarok player year ;; genre) dcop amarok player genre ;; progress) curr=`dcop amarok player trackCurrentTime` tot=`dcop amarok player trackTotalTime` if (( $tot )); then expr $curr \* 100 / $tot fi ;; esac sudo chmod +x ~/.conky/amarok
Voila :)
Problèmes
clignotements
Si vous avez des problèmes de clignotements, ajoutez dans /etc/X11/xorg.conf :
Load "dbe"
Puis ajouter dans votre .conkyrc :
double_buffer yes
Ecran noir
Si vous avez un écran noir avec ces options :
own_window yes own_window_transparent yes own_window_type override double_buffer yes
lancez alors ce script au démarrage de votre session :
#!/bin/bash OLDWALLPAPER=`dcop kdesktop KBackgroundIface currentWallpaper 1` killall conky conky& sleep 5 dcop kdesktop KBackgroundIface setBackgroundEnabled false sleep 1 && dcop kdesktop KBackgroundIface setBackgroundEnabled true dcop kdesktop KBackgroundIface setWallpaper "$OLDWALLPAPER" 7
J'ai remarqué que l'écran noir disparaissait lorsque l'on changeait de fond décran, le script ci-dessus reload votre wallpaper, donc votre conky restera noir que quelques secondes !