Ceci est une ancienne révision du document !
Conky : affichage des ressources système
Conky permet la surveillance de pratiquement toutes les variables du système : CPU, mémoire, swap, espace disque, température, téléchargements, messages du système, et bien d'autres encore. L'affichage peut se faire en arrière plan sur le bureau.
Conky est extrêmement configurable bien que sa configuration puisse être difficile. Pour voir des exemples de configuration de conky, consultez ce sujet ou cette archive.
Pré-requis
- Disposer des droits d'administration.
- Disposer d'une connexion à Internet configurée et activée.
- Avoir activé l'accès au dépôt Universe.
Installation
Depuis les dépôts
Pour installer ce logiciel, il suffit d'installer le paquet conky.
Depuis le PPA
Pour installer la version la plus récente sous Ubuntu 10.10 (1.8.1 à ce jour) :
- Ajoutez le PPA ppa:norsetto/ppa1) dans vos sources de logiciels. Soit la commande
sudo add-apt-repository ppa:norsetto/ppa
- Rechargez la liste des paquets. Soit la commande
sudo apt-get update
- Installer le paquet conky-all. Soit la commande
sudo apt-get install conky-all
Configuration
Pour configurer conky, créez le fichier .conkyrc dans votre dossier personnel et mettez à l'intérieur de celui-ci du code spécial conky, par exemple : Intégrée au fond d'écran ou Interface simple fenêtrée
Retrouvez les Fonctions de Conky.
Retrouvez les Variables de Conky.
Conky avant text
- La première partie du conky sert a configurer le conky, il ne faut pas oublier de mettre à la suite la partie TEXT qui comporte ce que va afficher conky sans quoi il ne démarrera pas.
# temps pour fermer conky en seconde. 0 = toujours actif total_run_times 0 # affiche le texte sur la sortie standard out_to_console no # réglage de la mémoire, pour éviter le clignotement double_buffer yes # Soustraire les mémoires tampons de la mémoire utilisée no_buffers yes text_buffer_size 2048 # taux de rafraichissement de la fenêtre (en secondes) update_interval 1 # nombre d'échantillons à utiliser pour calculer la moyenne d'utilisation cpu_avg_samples 4 net_avg_samples 2 # taille et positon alignment top_right minimum_size 320 5 maximum_width 320 # écart avec le bord x=gauche ou droit y= haut ou bas gap_x 5 gap_y 100 # afficher les ombres draw_shades yes # afficher des contours draw_outline no # contours autour des blocs de texte draw_borders no # largeur du contour border_width 1 # largeur des marges border_margin 4 #pour que conky tourne en arrière plan background no pour les tests background yes # utiliser sa propre fenêtre own_window yes #type de fenêtre : normal(avec le cadre) / override / desktop own_window_type override # normal / override / desktop #pseudo transparence si vous avez des icones sous le conky elle ne seront plus accessible une fois conky activé own_window_transparent yes # Utiliser Xft (polices lissées etc) use_xft yes xftalpha .1 override_utf8_locale yes # force UTF8 #police a utiliser : use_xft doit être a "yes" xftfont Fixed:size=7#OCR A Std:size=6 # Tout le texte en majuscule uppercase no # Ajoute des espaces après certains objets pour éviter de les faire bouger. # Fonctionne uniquement avec les polices Fixes use_spacer right # Couleurs default_color FFFFFF #blanc default_shade_color 333333 default_outline_color black color1 e49c16 color2 CA0000 #rouge color6 EEEEEE color7 DDDDDD color8 CCCCCC color9 BBBBBB
Autres exemples
Sur le site officiel : site officiel
Sur le forum : "Conky : Postez vos conkyrc ou certaines parties intéressantes" et la suite du topic ici, et puis encore la suite et je suis gentil alors une autre suite pour faire plaisir… ;)
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 → Programmes au démarrage (sur jaunty: Système → préférences → Application au démarrage).
Cliquez sur Ajouter et vous tapez "conky". Éventuellement, il faudra retarder son exécution afin que votre bureau (GNOME/KDE/XFCE) soit initialisé :
conky -d
Si la commande de retardement ne fonctionne pas avec un Conky par dessus les autres fenêtres suite au démarrage de votre session, voir le chapitre 4.2 de cette documentation ou cliquer ICI pour y accéder directement.
Problèmes rencontrés
Conflit entre conky et les icônes du bureau
Il arrive lorsque l'on configure Conky en intégration bureau que les icônes soient masquées par l'option "double_buffer" mise à yes. Vous pouvez tester en la mettant à "no" mais le code clignote à chaque réactualisation.
Ce problème est connu pour arriver systématiquement avec Nautilus, mais aussi avec xfdesktop (donc affecte a priori Ubuntu et Xubuntu 9.04+ mais pas Kubuntu)
On peut régler ce problème de différentes façons, voici une façon simple rapide et ne dépendant pas d'autres applications (On peut classiquement utiliser Compiz pour mettre en œuvre une solution similaire).
Éditer le .conkyrc pour changer la valeur de own_window à yes et rajouter deux options :
own_window yes # On dit à Conky de ne pas se mettre sur le bureau mais dans une fenêtre propre own_window_type override # type de fenêtre "maison" (le type desktop convient si on n'a pas d'ombre) own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager # définition du type
Cette solution provient de la FAQ de Conky, légèrement adaptée (override au lieu de desktop) afin de supprimer l'ombre.
Pour s'en sortir avec Compiz, il s'agit essentiellement de créer une règle grâce au plugin regexp matching pour n'appliquer la décoration et l'ombrage qu'aux fenêtres autres que celle de Conky.
Edit : Essayer le paramètre :
own_window_argb_visual yes
Si Conky reste sur les fenêtres au démarrage de votre session
Première solution
Il faut le faire démarrer en retard à l'aide d'un script que nous nommerons .conkyboot, que nous placerons dans le répertoire contenant .conkyrc c'est à dire /home/$USER/
Contenue du script .conkyboot
#!/bin/bash sleep 20; conky;
Penser à modifier dans les Propriétés → Permissions de .conkyboot à cocher Autoriser l'exécution du fichier comme un programme
chmod +x .conkyboot
Puis dans Système → Préférence → Application au démarrage
Cliquer sur Ajouter
- Nom : Conky
- Commande : /home/$USER/.conkyboot
Redémarrer le système cela devrait fonctionner
Autre solution plus simple
Au lieu de créer un script qui lancera conky au bout de vingt secondes, vous pouvez faire la même chose en une seule ligne directement dans la commande à lancer au démarrage :
sh -c "sleep 20; conky;"
Problème de clignotement
Pour éviter le clignotement éditez le fichier .conkyrc
Et vous mettez "yes" pour:
- 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
chercher
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à ;)
PS_1 : pour les personnes ou ça continue toujours de clignoter introduire ceci dans .conkyrc /etc/X11/xorg.conf :
Load "glx" Load "dbe" Load "i2c" Load "bitmap" Load "ddc" Load "extmod" Load "freetype" Load "int10" Load "vbe"
Puis, pour vérifier si Conky utilise le double buffer, lancez conky dans le terminal. Si ces lignes apparaissent :
Conky: failed to set up double buffer Conky: drawing to single buffer
Alors Conky n'utilise pas le double buffer.
PS_2: (Ou plus simple, cas perso, ne fonctionne pas si le problème vient de la gestion du double buffer.) Pour supprimer tout clignotement, il faut créer une ligne de "texte pur" légèrement plus large que la plus large des lignes affichées avec des variables ou graph. exemple de ligne texte ajoutée dans .conkyrc (ajuster le nombre de tiré "-" en fontion) : ${color #666666}———————————————————–
É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 les 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) : installez le paquet 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>
CETTE METHODE NE MARCHE PAS…
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 conky encore visible même lorsque l'on clique sur 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à
Le conky réapparaît parfois brièvement au premier plan, devant mes applications
J'ai rencontré ce problème avec les Conky de largeur variable (quand on affiche les ports ouverts et l'adresse distante par exemple).
Pour y remédier il faut fixer la largeur du Conky, en spécifiant une largeur minimale et une largeur maximale identiques :
minimum_size 260 maximum_width 260
Mon conky est tronqué
Par défaut la taille du buffer de conky est de 128. Si votre conky comporte une grande quantité de textes et d'images, il est possible que tout ne s'affiche pas correctement.
Pour y remédier il faut rajouter au .conkyrc avant la section TEXT :
text_buffer_size 1024
Scripts pour votre .conkyrc
Système
Multimédia
La météo
Divers
- Conky GUI un GUI qui permet de générer votre script Conky rapidement
Voir aussi
- (en) Site officiel
- (en) Réglages
- Pour voir quelques jolis bureaux postés par les utilisateurs et intégrant Conky, découvrir de nouveaux scripts et poser vos questions, vous pouvez consultez ces sujets de discussion sur le forum Ubuntu-fr (les sujets fermés restent bien entendu consultables) :