Contenu | Rechercher | Menus

Annonce

La nouvelle clé USB Ubuntu-fr est en prévente
Rendez-vous sur la boutique En Vente Libre

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1651 Le 22/07/2008, à 15:23

akoirium

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Salut !

En fait, conky n'est pas intégré au bureau mais s'affiche par dessus en "redessinant" en fond de fenêtre la partie de ton wallpaper qui se trouve sous lui.

Le problème, c'est qu'il ne sais pas retrouver les icônes ...

Donc sois tu déplaces ton conky, soit tu déplaces tes icônes, soit tu t'arranges pour qu'il n'y ait plus d'icônes sur ton bureau ...

A moins que quelqu'un ait une autre solution que j'ai zappée ...


Desmogone, conky ? conquis !

[edit] grosse faute qui pique les yeux !

c'est bien ce que j'avais compris... wink

par contre je serais interresser par une solution pour afficher un autre arriere plan que le fond d'ecran pour la fenetre de conky pour pallier au pb de lisibilité dans le cas de l'utilisation de wallpaertray ou wallpapoz lorsque que le fonds d'ecran change.
ca doit surrement pouvoir se faire mais je n'ai pas encore eu le courage d'eplucher en detaille la doc tongue

edit:
en fait l'ideal serais de pouvoir faire de la semi-transparence et de pouvoir regler l'opacitée de la fenetre .

Dernière modification par akoirium (Le 22/07/2008, à 15:27)


"Software is like sex ... It's better when it's free !..." : Linus Torvalds

Hors ligne

#1652 Le 23/07/2008, à 20:58

erdnaxeli

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Ajout d'une barre en haut. Elle se trouve entre 2 tableau de bord ce qui permet qu'elle soit toujours visible.

146062Capture.png


Xitaflup vaincra !

Hors ligne

#1653 Le 24/07/2008, à 14:24

Stanux

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

bonjour a tous,

j'ai realisé mon conky et depuis quelques temps il clignote de maniere réguliere, j'ai installé compiz fusion et lorsque je désactive compiz le clignotement disparer.. j'ai modifier mon Xorg.conf en rajoutant le module "dbe" et "glx" et toujours rien... le probleme est apparue d'un coup avant je n'avait pas ce souci.

ma config: Ubuntu Hardy 8.04 a jour
               PC Asus F3SV AK143C

voici mon conky:

#emplacement
alignment top_right

#pour que conky tourne en arriere plan
background yes

#nombre d'echantillons a utiliser pour calculer la moyenne d'utilisation
cpu_avg_samples 2
net_avg_samples 2

#affiche le texte sur la sortie standard
out_to_console no

# Utiliser Xft (polices lissées etc)
use_xft yes

#police a utiliser : use_xft doit etre a "yes"
xftfont Terminal Bitstream Vera Sans Mono:size=8

#Couleur par défaut (texte et bordure)
default_color FF6600
default_shade_color 000000

#Pour eviter le clignotement
double_buffer yes

#type de fenetre : normal(avec le cadre) / override / desktop
own_window_type override

#pseudo transparence?
own_window_transparent yes

#pour eviter le conflit avec les icones
own_window yes

#Nom de la fenetre pour compiz
own_window_title gfxconky

# taux de raffraichissement de la fenetre (en secondes)
update_interval 2

TEXT
${font Sans:style=Bold:pixelsize=12}
${font Sans:style=Bold:pixelsize=12}
${color #FF0000}Bonjour ${exec whoami}!                          ${color #ddaa00}Uptime : $color$uptime
${color #ddaa00}Nous sommes le : $color ${time %A %d %B %Y} - ${time %H:%M:%S}

${color #888888}${font Webdings:style=Regular:pixelsyze=12}i${font Sans:style=Bold:pixelsize=12}Ethernet (eth0) : ${alignr}DL :${color #00FF00} ${totaldown eth0} ${color #888888}/ UP :${color #FF0000} ${totalup eth0}

${color #ddaa00}Adresse IP Public : ${color #00FF00}${execi 1800 ~/.ip.sh}
${color #888888}Down :${color #00FF00} ${downspeed eth0} k/s${color #888888} ${offset 100}Up:${color #FF0000} ${upspeed eth0} k/s
${color #888888}${downspeedgraph eth0 25,150 ff1717 1717ff} $alignr${color #888888}${upspeedgraph eth0 25,150 1717ff ff1717}

${color #888888}${font Webdings:style=Regular:pixelsyze=12}i${font Sans:style=Bold:pixelsize=12}Wifi (wlan0) : ${alignr}DL :${color #00FF00} ${totaldown wlan0} ${color #888888}/ UP :${color #FF0000} ${totalup wlan0}

${color #ddaa00}Adresse IP Public : ${color #00FF00}${execi 1800 ~/.ip.sh}
${color #ddaa00}Taux : ${color #00FF00}${wireless_bitrate wlan0}${color #ddaa00}   Qualité : ${color #00FF00}${wireless_link_qual_perc wlan0}
${color #888888}Down :${color #00FF00} ${downspeed wlan0} k/s${color #888888} ${offset 100}Up:${color #FF0000} ${upspeed wlan0} k/s
${color #888888}${downspeedgraph wlan0 25,150 ff1717 1717ff} $alignr${color #888888}${upspeedgraph wlan0 25,150 1717ff ff1717}

${color #888888}${font Webdings:style=Regular:pixelsyze=12}i${font Sans:style=Bold:pixelsize=12}Performences : 

${color #ddaa00}Core 1 :                                 ${color #ddaa00}Core 2 :
${color #ff1717}${cpu cpu0}%${color #888888}-${color #ff1717}${freq}MHz${color #888888}-${color #ff1717}${execi 2 sensors | grep 'Core 0' | sed -e 's/.*  +//' | sed -e 's/.0°C.*//'}°C $alignr${color #00FF00}${cpu cpu1}%${color #888888}-${color #00FF00}${freq}MHz${color #888888}-${color #00FF00}${execi 2 sensors | grep 'Core 1' | sed -e 's/.*  +//' | sed -e 's/.0°C.*//'}°C 
${color #888888}${cpugraph cpu0 25,150 ff1717 1717ff} $alignr${color #888888}${cpugraph cpu1 25,150 1717ff ff1717}

${color #ddaa00}Processus :${color #00FF00} $processes  ${color #ddaa00}Running :${color #ff1717} $running_processes
${color #ddaa00}Swap Usage:${color #00FF00} $swap/$swapmax - $swapperc% $swapbar
${color #ddaa00}RAM Usage :${color #00FF00}$mem/$memmax - $memperc% $membar
${color #ddaa00}Geforce 8600M GS :$color ${execi 60 nvclock -i | grep "GPU clock" | sed -e 's/.*k://'}${alignr}${color #ddaa00}Temp : ${color #00FF00}${exec nvidia-settings -q gpucoretemp | grep '):' | awk '{print $4}'}°C

${color #888888}${font Webdings:style=Regular:pixelsyze=12}i${font Sans:style=Bold:pixelsize=12}Etat Disque dur :

${color #ddaa00}Temp HDD :        ${color #00FF00}${execi 2 hddtemp /dev/sda | grep '0:'| sed -e 's/.*: //' | sed -e 's/°C.*//'}°C
${color #ddaa00}Power Time :      ${color #00FF00}${execi 1800 smartctl -A /dev/sda | grep Power_On_Hours | awk '{print $10}'} heures.
${color #ddaa00}Parcage Têtes:   ${color #00FF00}${execi 1800 smartctl -A /dev/sda | grep Load_Cycle | awk '{print $10}'}
${color #ddaa00}durée de vie % : ${color #00FF00}${execi 1800 smartctl -A /dev/sda | grep Load_Cycle | awk '{print $4}'}%

${color #888888}${font Webdings:style=Regular:pixelsyze=12}i${font Sans:style=Bold:pixelsize=12}File systems :

${color #ddaa00}Linux System   ${color #00FF00}${fs_used /}/${fs_size /}${alignr}${fs_used_perc /}%
${fs_bar 8 /}
${color #ddaa00}Home    ${color #ff1717}${fs_used /home}/${fs_size /home}${alignr}${fs_used_perc /home}%
${fs_bar 8 /home}
${color #ddaa00}Windows    ${color #00FF00}${fs_used /media/disk}/${fs_size /media/disk}${alignr}${fs_used_perc /media/disk}%
${fs_bar 8 /media/disk}  

${color #888888}${font Webdings:style=Regular:pixelsyze=15}i${font Sans:style=Bold:pixelsize=12}CPU usage :

${offset 80}${color #ddaa00}Nom ${alignr 50}PID ${alignr 20}CPU%
${offset 80}${color #ffffff} ${top name 1} ${alignr 30}${top pid 1} ${alignr 15}${top cpu 1}
${offset 80}${color #bbbbbb} ${top name 2} ${alignr 30}${top pid 2} ${alignr 15}${top cpu 2}
${offset 80}${color #bbbbbb} ${top name 3} ${alignr 30}${top pid 3} ${alignr 15}${top cpu 3}
${offset 80}${color #bbbbbb} ${top name 4} ${alignr 30}${top pid 4} ${alignr 15}${top cpu 4}
${color #888888}${font Webdings:style=Regular:pixelsyze=15}i${font Sans:style=Bold:pixelsize=12}Mem usage :

${offset 80}${color #ddaa00}Nom ${alignr 50}PID ${alignr 15}Mem%
${offset 80}${color #ffffff} ${top_mem name 1} ${alignr 30}${top_mem pid 1} ${alignr 15}${top_mem mem 1}
${offset 80}${color #bbbbbb} ${top_mem name 2} ${alignr 30}${top_mem pid 2} ${alignr 15}${top_mem mem 2}
${offset 80}${color #bbbbbb} ${top_mem name 3} ${alignr 30}${top_mem pid 3} ${alignr 15}${top_mem mem 3}
${offset 80}${color #bbbbbb} ${top_mem name 4} ${alignr 30}${top_mem pid 4} ${alignr 15}${top_mem mem 4}

Si vous avez une idée...

Merci par avance


Quand Chuck Norris joue à la roulette russe il joue le chargeur plein...
Linux Ubuntu

Hors ligne

#1654 Le 24/07/2008, à 22:39

Askelon

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Salut à tous !

Voilà le miens aussi, pas très élaboré, et pas sous ubuntu, mais je le poste tout de même, car il comporte une ou deux petites fonctionnalités de mon cru qui pourraient intéresser les gens smile

capture32ph2.th.jpg

~/conky.sh :

#!/bin/bash

sleep 5
conky -c /home/keltan/.conkyrc-main  &
conky -c /home/keltan/.conkyrc-fun &
conky -c /home/keltan/.conkyrc-clock &
conky -c /home/keltan/.conkyrc-lemonde &
conky -c /home/keltan/.conkyrc-amarok_cover &

exit

~/.conkyrc-main

background		no
update_interval		1.0
double_buffer		yes

use_xft			yes
override_utf8_locale
xftfont			Sans:size=8
xftalpha		0.8

own_window		yes
own_window_transparent	yes
own_window_type		override
own_window_hints	undecorated,below,sticky,skip_taskbar,skip_pager
#on_bottom		yes

minimum_size		300 50
draw_shades		no
draw_outline		yes
draw_borders		yes
draw_graph_borders	no
stippled_borders	0
border_margin		3
border_width		0

default_color		white
default_shade_color	black
default_outline_color	black

alignment		top_right
gap_x			6
gap_y			48

no_buffers		yes

TEXT

${alignc} .: ${sysname}-${machine}-${kernel} :.${color #707070}
${hr}
${color #af59ff}Battery${color #707070}:${color white} ${execi 15 ~/.conky/bat.pl}%	${color #af59ff}Memory${color #707070}:${color white} ${memperc}%	${color #af59ff}CPU${color #707070}:${color white} ${cpu}% ${freq}MHz
${color #af59ff}M${color #707070}:${color white} ${mem}${color #707070}/${color white}${memmax}	${color #af59ff}S${color #707070}:${color white} ${swap}${color #707070}/${color white}${swapmax}	${color #af59ff}P${color #707070}:${color white} ${running_processes}${color #707070}/${color white}${processes}
${color #af59ff}Uptime${color #707070}:${color white} ${uptime} ${alignc}${color #af59ff}Battery${color #707070}:${color white} ${battery_time} ${battery}

${color #af59ff}CPU${color #707070}:${color white} ${cpubar}
${color #af59ff}MEM${color #707070}:${color white} ${membar}
${color #af59ff}SWP${color #707070}:${color white} ${swapbar}
${color #af59ff}BAT${color #707070}:${color white} ${execibar 15 ~/.conky/bat.pl}

${color #af59ff}eth0${color #707070}:${color white} ${addr eth0}${alignr}${color #707070}(${color white}${downspeed eth0}k${color #707070}/${color white}${upspeed eth0}k${color #707070})${color white} ${color #707070}[${color white}${totaldown eth0}${color #707070}/${color white}${totalup eth0}${color #707070}]
${color #af59ff}eth1${color #707070}:${color white} ${addr eth1}${alignr}${color #707070}(${color white}${downspeed eth1}k${color #707070}/${color white}${upspeed eth1}k${color #707070})${color white} ${color #707070}[${color white}${totaldown eth1}${color #707070}/${color white}${totalup eth1}${color #707070}]
${color #af59ff}WiFi${color #707070}:${color white} ${wireless_essid eth1} ${color #af59ff}MAC${color #707070}:${color white}${wireless_ap eth1}
${color #af59ff}Mode${color #707070}:${color white} ${wireless_mode eth1} ${alignc}${color #af59ff}Bitrate${color #707070}: ${color white}${wireless_bitrate eth1} ${alignr}${color #707070}[${color white}${wireless_link_qual_perc eth1}${color #707070}]
${color white}${wireless_link_bar eth1}

${if_running amarokapp}











${alignc}${execi 10 ~/.conky/amarok playing}
${alignc}"${execi 10 ~/.conky/amarok album}" - ${execi 10 ~/.conky/amarok year} - ${execi 10 ~/.conky/amarok genre}
${color white}${execi 1 ~/.conky/amarok current}${alignr}${execi 1 ~/.conky/amarok total}
${execibar 1 ~/.conky/amarok progress}${else}$endif
${color #707070}${hr}

~/.conkyrc-fun

background		no
update_interval		1.0
double_buffer		yes

use_xft			yes
override_utf8_locale
xftfont			Sans:size=8
xftalpha		0.8

own_window		yes
own_window_transparent	yes
own_window_type		override
own_window_hints	undecorated,below,sticky,skip_taskbar,skip_pager
#on_bottom		yes

minimum_size		300 50
draw_shades		no
draw_outline		yes
draw_borders		yes
draw_graph_borders	no
stippled_borders	0
border_margin		3
border_width		0

default_color		white
default_shade_color	black
default_outline_color	black

alignment		top_left
gap_x			6
gap_y			32

no_buffers		yes

TEXT
${color white} .: Bashfr.org :.
${color #707070}${hr}${color white}
${execi 200 ~/.conky/bashfr.pl -random | fold -s -w 100}

${color white} .: VieDeMerde.fr :.
${color #707070}${hr}${color white}
${execi 200 ~/.conky/vdm.pl -aleatoire}

~/.conkyrc-clock

#avoid flicker

double_buffer yes



#own window to run simultanious 2 or more conkys

own_window  yes

own_window_transparent no

own_window_type normal

own_window_hints undecorate,sticky,skip_taskbar,skip_pager 



#borders

draw_borders yes

border_margin 0



#shades

draw_shades no



#position

gap_x 6

gap_y 32

alignment top_right



#behaviour

update_interval 1



#colour

default_color  8f8f8f

#default_shade_color 000000

own_window_colour 262626



#font

use_xft			yes
override_utf8_locale
xftfont			Visitor TT1 BRK:size=15



#to prevent window from moving

use_spacer no

minimum_size 300 0



#mpd

#mpd_host localhost

#mpd_port 6600



TEXT
${voffset 2}${alignc}${color white} ${time}

~/.conkyrc-lemonde

background		no
update_interval		1.0
double_buffer		yes

use_xft			yes
override_utf8_locale
xftfont			Sans:size=7
xftalpha		0.8

own_window		yes
own_window_transparent	yes
own_window_type		override
own_window_hints	undecorated,below,sticky,skip_taskbar,skip_pager
#on_bottom		yes

minimum_size		250 0
maximum_size		250
draw_shades		no
draw_outline		yes
draw_borders		yes
draw_graph_borders	no
stippled_borders	0
border_margin		3
border_width		0

default_color		white
default_shade_color	black
default_outline_color	black

alignment		bottom_left
gap_x			6
gap_y			10

no_buffers		yes


TEXT

${alignc}${color #707070}.:${color white} ${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 feed_title 1} ${color #707070}:.
${hr}
   :: ${color white}${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 item_title 1}
${color #707070}   :: ${color white}${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 item_title 2}
${color #707070}   :: ${color white}${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 item_title 3}
${color #707070}   :: ${color white}${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 item_title 4}

~/.conkyrc-amarok_cover

background		no
update_interval		1.0
double_buffer		yes

use_xft			yes
override_utf8_locale
xftfont			Sans:size=8
xftalpha		0.8

own_window		yes
own_window_transparent	yes
own_window_type		override
own_window_hints	undecorated,below,sticky,skip_taskbar,skip_pager
#on_bottom		yes

minimum_size		300 50
draw_shades		no
draw_outline		yes
draw_borders		yes
draw_graph_borders	no
stippled_borders	0
border_margin		3
border_width		0

default_color		white
default_shade_color	black
default_outline_color	black

alignment		top_right
gap_x			1600
gap_y			1600

no_buffers		yes

TEXT



${exec ~/.conky/acd 10 1205 300}

~/.conky/amarok

#!/bin/bash
# amaroK info display script by eirc <eirc.eirc@gmail.com>

case "$1" in

# Now Playing Info
playing) dcop amarok player nowPlaying ;;
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 ;;
current) dcop amarok player currentTime ;;
total) dcop amarok player totalTime ;;


progress)
    curr=`dcop amarok player trackCurrentTime`
    tot=`dcop amarok player trackTotalTime`
    if (( $tot )); then
        expr $curr \* 100  / $tot
    fi
    ;;

esac

~/.conky/bashfr.pl

#!/usr/bin/env perl

       #*********************************************#
       #              quote-from-bashfr              #
       #              écrit par tOkeshu              #
       #                02 août. 2006                #
       #                   bashfr.pl                    #
       #                 version 1.1                 #
       #                                             #
       #    Récupère les citations de votre site     #
       #              préféré: bashfr.org            #
       #*********************************************#
       

# ----------------------------------------------------------- #
# Ce script prépare et traite les citations du site Bashfr.org#
# Il accepte 6 arguments possible :                           #
# -latest | -random | -random2 | -top50                                  #
# Ils correspondent ou 4 pages de citation de bashfr :        #
#                                                             #
# http://www.bashfr.org/?sort=latest                          #
# http://www.bashfr.org/?sort=random                          #
# http://www.bashfr.org/?sort=random2                          #
# http://www.bashfr.org/?sort=top50                           #
#                                                             #
# -quote x (avec x>0)                                         #
# Correspond à la page : http://www.bashfr.org/?x             #
#                                                             #
# -n est un argument qui est utilisé avec les 3 premiers:     #
# Il permet de selectionner une quote parmis les 3 différentes#
# pages énoncées. (ex: -latest -n 2 )                         #
#                                                             #
# Le choix par défaut est random.                             #
# ----------------------------------------------------------- #

# Variable qui permet de décompter le nombre de citations parcourues.
$quote_number=1;

$caracterebizarre=0;

# On vérifie les arguments.
# Cas génériques : top50, aléatoire, et dernier ajout.
if ( $ARGV[0] eq "-latest" || $ARGV[0] eq "-random" || $ARGV[0] eq "-top50" || $ARGV[0] eq "-random2" )
{
    $choix=substr ($ARGV[0],1,8);
    $choix="sort="."$choix";
    
# Argument qui permet d'afficher une citation en particulier.
}elsif ( $ARGV[0] eq "-quote" )
{
    $choix="$ARGV[1]";
    
# Argument par défaut.
}else{
    $choix="sort=random2";
    
}

# Argument qui permet de selectionner une citation en particulier avec 
# les arguments précédents. (ex : quote.pl -latest -n 2 )
if ( $ARGV[1] eq "-n" )
{
    $quote_number=$ARGV[2];
}

# Variable d'état (somme-nous dans une citation ? : vrai(>0) ou non(0)).
$in_the_quote=0;

# On récupère directement la page HTML.
use LWP::Simple;
$url="http://www.bashfr.org/?"."$choix";
$source = get($url);
# On récupère chaque ligne dans un tableau.
@tab = split(/\n/,$source);

# On parcours tout le tableau.
# A chaque tour de boucle on ne considère qu'une seule ligne ( $_ ).
 foreach $_ (@tab) {
    # Condition d'arret (somme nous sortis de la citation ?).
    # SI oui alors on arrete la boucle.
    # Si non on continue à parcourir le fichier.
    if ( ("$_" =~ m!div!) && $in_the_quote!=0 )
    {
    last;
    }

    # Somme nous dans la citation ?
    # Si index trouve quote1 ou quote-1 (!=-1) nous venons de trouver une citation.
    $i=index($_,'quote1');
    $j=index($_,'quote-1');
    if ( $i!=-1 || $j!=-1 )
    {
        if ( $quote_number == 1 )
        {
            # Changement d'état (dans la citation).
            $in_the_quote=1;
        }else 
        {
            $quote_number--;
        }
    }

    # Si nous avons changé d'état nous traitons la citation.
    if ( $in_the_quote!=0 )
    {
        # Enlève les balises superflues de début de citation.
        if ( $in_the_quote==1 )
        {
            $_ =~ m/\?([0-9]+)/g;
            # Repère le tout début de la citation dans la ligne (après <br />).
            $pos_debut=index($_,'<br />');
            $pos_debut+=6;
            $pos_fin=length($_);
            # Modifie la ligne actuellement considérée en récupérant
            # uniquement ce qui nous intéresse.
            $_=substr ($_,$pos_debut,$pos_fin);
            # Changement d'état (corps et fin de la citation, rien à enlever).
            $in_the_quote=2;
        }
            # Toute la partie suivante vise à enlever le formatage HTML.
            # ( certaines méthodes existent déjà mais ici rien de compliqué ).
            # Comme substituer une chaine longue à une chaine + courte est 
            # fastidieuse, on remplace l'espace des caractère en trop par un
            # marqueur ( ici % ).
            s/&quot;/%%%%%%\"/g;
            s/&amp;/%%%%%&/g;
            s/&lt;/%%%</g;
            s/&gt;/%%%>/g;
            s/&oelig;/%%%%%%Œ/g;
            s/&nbsp;/%%%%% /g;
            s/&copy;/%%%%%©/g;
            s/&not;/%%%%¬/g;
            s/&ordf;/%%%%%ª/g;
            s/&deg;/%%%%°/g;
            s/&sup2;/%%%%%²/g;
            s/&Agrave;/%%%%%%%%À/g;
            s/&Atilde;/%%%%%%%%à/g;
            s/&Ccedil;/%%%%%%%%Ç/g;
            s/&Egrave;/%%%%%%%%È/g;
            s/&Eacute;/%%%%%%%%É/g;
            s/&Ecirc;/%%%%%%%Ê/g;
            s/&iuml;/%%%%%%ï/g;
            s/&\#039;/%%%%%\'/g;
            s/&eacute;/%%%%%%%é/g;
            s/&agrave;/%%%%%%%à/g;
            s/&acirc;/%%%%%%â/g;
            s/&ccedil;/%%%%%%%ç/g;
            s/&egrave;/%%%%%%%è/g;
            s/&eacute;/%%%%%%%é/g;
            s/&ecirc;/%%%%%%ê/g;
            s/&euml;/%%%%%ë/g;
            s/&icirc;/%%%%%%î/g;
            s/&ocirc;/%%%%%%ô/g;
            s/&ugrave;/%%%%%%%ù/g;
            s/&ucirc;/%%%%%%û/g;    
            s/<br \/>/%%%%%/g;            

        $caracterebizarre+=1;
        if ($caracterebizarre>=1)  {$_=substr ($_,0,-1);}
        s/%+//g;

        # Pour conclure on supprime les marqueurs.
        # On affiche enfin la ligne de citation traitée.
        print "$_ \n";
        
    }
}
print "\n";

~/.conky/bat.pl

#!/usr/bin/env perl

##
# ACPI Battery Monitor Script for conky
# (c) 2006 BinaryShadow.org
# 
# Recommend compiling into bytecode with:
# $ perlcc -B -o bat bat.pl
##

use strict;
use warnings;

opendir(PROC_BATTERIES, '/proc/acpi/battery') or die;

my($tot_capacity,$cur_capacity,$curdir) = (0, 0, '');

while($curdir = readdir(PROC_BATTERIES)) {
  my($line) = '';
  if($curdir =~/^\./) {
    next;
  }
  open(BATTERY_STATE, '/proc/acpi/battery/'.$curdir.'/state') or next;
  while($line = <BATTERY_STATE>) {
    if($line =~/^present:\s+(yes|no)/) {
      if($1 eq 'yes') {
        while($line = <BATTERY_STATE>) {
          if($line =~/^remaining capacity:\s+([0-9]+)/) {
            $cur_capacity += $1;
            last;
          }
        }
        open(BATTERY_INFO, '/proc/acpi/battery/'.$curdir.'/info') or last;
        while($line = <BATTERY_INFO>) {
          if($line =~/^last full capacity:\s+([0-9]+)/) {
            $tot_capacity += $1;
            last;
          }
        }
        close(BATTERY_INFO);
      }
      last;
    }
  }
  close(BATTERY_STATE);
}

closedir(PROC_BATTERIES);

if ($tot_capacity != 0) {
	printf "%0.0f\n", (($cur_capacity / $tot_capacity) * 100);
} else {
	print "0.0\n";
}

~/.conky/vdm.pl

#!/usr/bin/env perl

  #**********************************************
  #			         citation de viedemerde.fr
  #     adapté du script quote-from-bashfr de tOkeshu
  #						    07 juillet 2008
  #						          vdm.pl
  #
  #			   Récupère les citations de votre site
  #			         préféré: viedemerde.fr  
  #
  #**********************************************


# ----------------------------------------------------------------------------------------------------------------------------- #
# Ce script prépare et traite les citations du site VDM.fr 
#
# Je n'ai jamais réellement appris à coder en perl, mais mes connaissances dans d'autres langages comme
# PHP ou le C m'ont permis d'atteindre mon objectif : adapter le très bon script de tOkeshu qui affiche les
# quotes de Bashfr.org afin d'ajouter des citations de viedemerde.fr à mon conkyrc. J'ai donc repris le code
# de base en y apportant les modifications nécessaires.
#
# Il accepte 4 arguments possible :
# -latest | -aleatoire | -top | -flop
# Ils correspondent aux 4 pages de citations :
#
# http://www.viedemerde.fr/
# http://www.viedemerde.fr/aleatoire
# http://www.viedemerde.fr/top
# http://www.viedemerde.fr/flop
#
# Le choix par défaut est aleatoire.
# ----------------------------------------------------------------------------------------------------------------------------- #

# Variable qui permet de décompter le nombre de citations parcourues.
$quote_number=1;

$caracterebizarre=0;

# On vérifie les arguments.
# Cas génériques : top, aléatoire, et dernier ajout.

if ( $ARGV[0] eq "-latest" )
{
	# si l'on veut la dernière VDM,
	# $choix est vide, car l'adresse des dernières VDM est http://www.viedemerde.fr/
	$choix="";
}
elsif ( $ARGV[0] eq "-aleatoire" || $ARGV[0] eq "-top" || $ARGV[0] eq "-flop" )
{
	# sinon, on récupère la valeur de $choix sans le tiret.
	$choix=substr ($ARGV[0],1,9);
}
else
{
	# le choix par défaut sera l'aléa.
	$choix="aleatoire";   
}

# Variable d'état (somme-nous dans une VDM ? : vrai(>0) ou non(0)).
$in_the_quote=0;

# On récupère directement la page HTML.
use LWP::Simple;
$url="http://www.viedemerde.fr/"."$choix";

$source = get($url);
# On récupère chaque ligne dans un tableau.
@tab = split(/\n/,$source);

# On parcours tout le tableau.
# A chaque tour de boucle on ne considère qu'une seule ligne ( $_ ).
 foreach $_ (@tab)
{
	# Condition d'arret (somme nous sortis de la citation ?).
	# SI oui alors on arrete la boucle.
	# Si non on continue à parcourir le fichier.
	if ( ("$_" =~ m!div!) && $in_the_quote!=0 ) { last; }

	# Somme nous dans la VDM ?
	# Si index trouve une ligne contenant un div.post commencant par 'Aujourd'hui',
	# avec un 'VDM' un peu plus, c'est bon. On vérifie précisément, avec la présence
	# du div, et du '. ' (un point et un espace) avant 'VDM' de manière à éviter
	# une confusion, le terme VDM revenant parfois plusieurs fois.

	$i=index($_,'<div class="post">Aujour\'hui, ');
	$j=index($_,'. VDM');
	if ( $i!=-1 || $j!=-1 )
	{
		#Changement d'état (dans la citation).
        	if ( $quote_number == 1 ) { $in_the_quote=1; }
		else 	{ $quote_number--; }
	}

	# Si nous avons changé d'état nous traitons la citation.
	if ( $in_the_quote!=0 )
	{
		# Enlève les balises superflues de début de citation.
		if ( $in_the_quote==1 )
		{
			$_ =~ m/\?([0-9]+)/g;
			# Repère le tout début de la citation dans la ligne.
			$pos_debut=index($_,'Aujourd\'hui');
			#$pos_debut+=6;
			$pos_fin= length($_);

			#$pos_fin=index($_,'VDM');
			# Mdifie la ligne actuellement considérée en récupérant
			# uniquement ce qui nous intéresse.
			$_=substr ($_,$pos_debut,$pos_fin);
			# Changement d'état (corps et fin de la citation, rien à enlever).
			$in_the_quote=2;
		}

		# viedemerde.fr utilisant l'encodage ISO-8859-1, on passe tout en UTF8
		# afin d'éviter un bug d'affichage.
		use Encode;
		$_ = encode("utf8", $_);

		# Toute la partie suivante vise à enlever le formatage HTML.
		# ( certaines méthodes existent déjà mais ici rien de compliqué ).
		# Comme substituer une chaine longue à une chaine + courte est 
		# fastidieuse, on remplace l'espace des caractère en trop par un
		# marqueur ( ici % ).

		s/&quot;/%%%%%%\"/g;
		s/&amp;/%%%%%&/g;
		s/&lt;/%%%</g;
		s/&gt;/%%%>/g;
		s/&oelig;/%%%%%%Œ/g;
		s/&nbsp;/%%%%% /g;
		s/&copy;/%%%%%©/g;
		s/&not;/%%%%¬/g;
		s/&ordf;/%%%%%ª/g;
		s/&deg;/%%%%°/g;
		s/&sup2;/%%%%%²/g;
		s/&Agrave;/%%%%%%%%À/g;
		s/&Atilde;/%%%%%%%%à/g;
		s/&Ccedil;/%%%%%%%%Ç/g;
		s/&Egrave;/%%%%%%%%È/g;
		s/&Eacute;/%%%%%%%%É/g;
		s/&Ecirc;/%%%%%%%Ê/g;
		s/&iuml;/%%%%%%ï/g;
		s/&\#039;/%%%%%\'/g;
		s/&eacute;/%%%%%%%é/g;
		s/&agrave;/%%%%%%%à/g;
		s/&acirc;/%%%%%%â/g;
		s/&ccedil;/%%%%%%%ç/g;
		s/&egrave;/%%%%%%%è/g;
		s/&eacute;/%%%%%%%é/g;
		s/&ecirc;/%%%%%%ê/g;
		s/&euml;/%%%%%ë/g;
		s/&icirc;/%%%%%%î/g;
		s/&ocirc;/%%%%%%ô/g;
		s/&ugrave;/%%%%%%%ù/g;
		s/&ucirc;/%%%%%%û/g;    
		s/<br \/>/%%%%%/g;			

		$caracterebizarre+=1;
        	#if ($caracterebizarre>=1)  {$_=substr ($_,0,-1);}

		# Il semble qu'il n'y ait pas besoin de ce test, qui chez moi
        	# ne fait apparamment que supprimer la dernière lettre de la ligne ...
        	# donc on le commente :)

		# Pour conclure on supprime les marqueurs.
		s/%+//g;

		# Maintenant petite mise en forme du texte, histoire d'éviter que la VDM
		# s'affiche en une seule ligne gigantesque. On peut se débrouiller en éditant
		# le conkyrc je pense, mais autant traiter à la source si c'est possible =) et
		# puis ça m'a occupé ^^" On éclate donc la ligne mot à mot

		@vdm = split(/ /, $_);

		# Petit détail esthétique
		print "::";
		
		# On place un compteur, de manière à afficher un retour à la ligne
		# tous les 14 mots. Sinon on laisse courir.
		# Editer $retour à votre convenance.

		$retour=14;
		$c=1;
		foreach $_ (@vdm)
		{
			$c++;
			if ( ($c % $retour) == 0 ) { print " $_\n  "; }
			else { print " $_"; }
		}

		# Et on quitte proprement =)

		print "\n";
		exit;
	}
}

Et enfin le petit programme que j'ai codé pour afficher la pochette d'amarok wink

~/.conky/acd

/*
   *
   *                        acd.c
   *                       -------
   *                 Amarok Cover Display
   *             21/07/2008 - Charlie Merland
   *             ----------------------------
   *
   *  Fonction: affiche la pochette de la chanson jouée par Amarok, à l'intervalle
   *  donné en argv[1], et à la position donnée en argv[2] et argv[3].
   *
   *  Exemple d'usage: ./acd 5 25 25
   *
   *  Compilation: ce programme utilise Xlib pour l'affichage de la fenetre
   *  et Imlib2 pour l'affichage de l'image. Vous devez donc avoir installé
   *  Imlib2, et il faut ajouter les flags adéquats à la commande de compilation :
   *
   *      cc acd.c -lX11 -lImlib2 -o acd
   *
   *
   *  Réutilisez ce code comme bon vous semble, c'est fait pour =)
   *
   *      
*/

#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <Imlib2.h>
#include <X11/Xlib.h>
#include <X11/Xatom.h>
#include <X11/Xutil.h>
#include <X11/Xmd.h>

#include "acd.h"


int main( int argc, char **argv )
{
	int inter = atoi( argv[1] );
	int pos_x = atoi( argv[2] );
	int pos_y = atoi( argv[3] );
	char cmd[30] = "dcop amarok player coverImage";
	char cmd_status[26] = "dcop amarok player status";
	char path[128];
	char *fin;
	
	/* définissez ici la couleur de la "bordure" autour de la pochette en fonction
	   de votre fond d'écran. Ici gris, mon wallpaper étant très sombre */
	unsigned long bg_color = 0x505050;

	FILE *fd;
	Atom xa, xa_prop;
	

	/* on vérifie l'état d'amarok : s'il est bien lancé et s'il joue une musique */
	fd=popen(cmd_status,"r");
	if(!fd)
	{
		fprintf(stderr,"Error popen\nQuitting.\n" );
		return 1;
	}

	/* on récupère le status d'amarok */
	if(!fgets(path,128,fd))
	{
		fprintf(stderr,"Error fgets\nQuitting.\n" );
		return 1;
	}

	/* ici je testais si amarok était lancé, mais de tout manière s'il n'est pas lancé,
	   la commande dcop échoue et donc fgets renvoie une erreur et arrête le programme */
	/*if(strstr(path,"ERROR")!=NULL)
	{
		fprintf(stderr,"Error: Amarok is not running");
		return 1;
	}
	else */if(strstr(path,"0")!=NULL)
	{
		printf("Amarok status is 0 : not playing\nQuitting.\n");
		return 1;
	}
	
	
	// On vérifie la présence des arguments nécessaires
	if( argc < 3 )
	{
		printf("  Usage: ./acd intervalle x y");
		printf("  Exemple: ./acd 10 580 480");
		return 1;
	}
	
	/* La base : on définit le server X à utiliser */
	/* l'écran, etc., et on récupère la fenêtre root */
	Display *display = XOpenDisplay( NULL );
	int screen = DefaultScreen( display );
	Visual *visuel = DefaultVisual( display, screen );
	Colormap colormap = DefaultColormap( display, screen );

	Window fenetre_root = RootWindow( display, screen );

	/* On définit les attributs, puis la fenêtre avec un fond gris */
	XSetWindowAttributes attrs = {  ParentRelative, 0L, 0, 0L, 0, 0,
					Always, 0L, 0L, False, ExposureMask | OwnerGrabButtonMask, 0L, True, 0, 0 };
	
	Window fenetre = XCreateWindow(display, fenetre_root, pos_x, pos_y, 154, 154, 0,
				       CopyFromParent, InputOutput, CopyFromParent, CWEventMask, &attrs);
	
	XSetWindowBackground(display, fenetre, bg_color);

	/* Paramétrage d'imlib */
	Imlib_Load_Error *error_return;
	Imlib_Image cover;
		
	imlib_context_set_display(display);
	imlib_context_set_visual(visuel);
	imlib_context_set_colormap(colormap);
	imlib_context_set_drawable(fenetre);
	
	/* On affiche la fenêtre */
	XMapWindow( display, fenetre );	
	XSelectInput( display, fenetre, ExposureMask | OwnerGrabButtonMask );
	
	/* On enlève les décorations de la fenetre */
	xa = ATOM(_MOTIF_WM_HINTS);
	long prop2[5] = { 2, 0, 0, 0, 0 };
	XChangeProperty(display, fenetre, xa, xa, 32, PropModeReplace, (unsigned char *) prop2, 5);
	
	/* on déplace */
	XMoveWindow(display, fenetre, pos_x, pos_y);
	
	for(;;)
	{
		/* On empeche la fenetre d'apparaitre dans la taskbar :  */
		xa = ATOM(_NET_WM_STATE);
		xa_prop = ATOM(_NET_WM_STATE_SKIP_TASKBAR);
		XChangeProperty(display, fenetre, xa, XA_ATOM, 32, PropModeAppend, (unsigned char *) &xa_prop, 1);
		
		/* On affiche la fenetre sous toutes les autres */
		XLowerWindow(display, fenetre);
		
		/* on récupère le résultat dans la commande cmd */
		fd = popen(cmd,"r");
		if(!fd)
		{
			fprintf(stderr,"Error popen\nQuitting.\n");
			return 1;
		}
		
		if(!fgets(path,128,fd))
		{
			fprintf(stderr,"Error fgets\nQuitting.\n" );
			return 1;
		}
		
		fin = strrchr(path, '\n');
		if(fin != NULL) *fin = '\0';
		
		/* On charge et affiche l'image en la redimmensionnant un brin */
		cover = imlib_load_image_with_error_return(path,error_return);
		if(!cover)
		{
			printf("Error %d loading image : %s\nQuitting.\n", *error_return, error[*error_return]);
			return 1;
		}

		imlib_context_set_image(cover);
		imlib_render_image_on_drawable_at_size(2,2,150,150);
		
		/* Et on attend ... */
		usleep(inter*50000);
		
		pclose(fd);
	}
	
	/* Et finalement on détruit la fenetre */
	XDestroyWindow(display,fenetre);
	return 0;
}

Comme précisé en commentaire, vous faites ce que vous voulez de ce code, il est là pour être réutilisé smile

Le principe est tout simple ; puisque conky ne permet pas d'afficher des images, j'ai développé, en me basant sur certaines parties des sources de conky, un programme qui récupère la pochette de la chanson jouée par amarok, et l'affiche en gros de la même manière que conky, à une position et un delay que l'on spécifie. Il a surement quelques points qui peuvent être paufinés, par exemple je n'ai pas réussi à rendre la fenêtre fixe, il est toujours possible de la déplacer avec Alt+clic droit. De même, défaut majeur, la fenêtre n'apparait que sur un seul bureau alors que conky peut apparaitre sur tous. Il y a d'autres exemples, du genre que la fenêtre apparait dans la liste des fenêtres quand on fait Alt+Tab. Mais globalement cela fonctionne plutôt bien smile

Attention toutefois, ce programme utilise Xlib et Imlib, n'oubliez pas de les préciser à gcc et d'installer Imlib2 si ce n'est déjà fait :

sudo apt-get install libimlib2 libimlib2-dev

cc acd.c -lX11 -lImlib2 -o acd

Voilà, en espérant que cela sera profitable à quelqu'un smile

#1655 Le 25/07/2008, à 06:54

olive33

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

trop fort!
ça fait a peu prés 60 pages qu'on avais rien vu de réélement nouveau sur ce post, du super boulot!
continu!!
Perso j'utilise quodlibet et un petit script maison pour afficher la pochette en fond d'écran, mais cette solution m'interesse beaucoup.

Dernière modification par olive33 (Le 25/07/2008, à 06:56)


Ubuntu 14.04 LTS... -Intel i5 -nvidia gt520 ...joli boitier de salon bien silencieux :D
Lubuntu pour la musique dans un boitier encore plus joli et encore plus silencieux !!

Hors ligne

#1656 Le 25/07/2008, à 08:17

cam

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Beau boulot Askelon wink On en rêvait et tu nous colles ça comme si de rien n'était... lol Merci pour cette magnifique contribution!

Dernière modification par cam (Le 25/07/2008, à 14:00)

Hors ligne

#1657 Le 25/07/2008, à 12:44

Askelon

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Merci à vous, ça fait plaisir de voir que mes bricolages intéressent du monde smile

Petite mise à jour, j'ai modifié un ou deux trucs. Je remplace usleep(inter) par sleep(inter), c'était un oubli, en utilisant usleep l'intervalle de rafraichissement est beaucoup trop court, et chez moi ça fait ramer l'affichage des autres fenêtres. De même, j'avais oublié imlib_free_image en fin de boucle. De plus, j'ai déplacé la vérification de la l'état d'Amarok dans la boucle qui affiche la fenêtre. Comme ça le programme affiche une petite image d'attente si Amarok arrête de diffuser de la musique. Ce n'est pas forcément la meilleure solution, mais si l'on tente de quitter, conky relance la programme, et on se retrouve avec une fenêtre qui clignote, c'est encore pire neutral

Je redonne le code ici vu que je ne peux pas éditer l'ancien post ^^

#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <Imlib2.h>
#include <X11/Xlib.h>
#include <X11/Xatom.h>
#include <X11/Xutil.h>
#include <X11/Xmd.h>

#include "acd.h"


int main( int argc, char **argv )
{
	int inter = atoi( argv[1] );
	int pos_x = atoi( argv[2] );
	int pos_y = atoi( argv[3] );
        char default_image[48] = "/usr/share/apps/amarok/images/amarok_rocks.jpg";
	char cmd[30] = "dcop amarok player coverImage";
	char cmd_status[26] = "dcop amarok player status";
	char path[128], path_status[128];
	char *fin;
	
	/* définissez ici la couleur de la "bordure" autour de la pochette en fonction
	   de votre fond d'écran. Ici gris, mon wallpaper étant très sombre */
	unsigned long bg_color = 0x505050;

	FILE *fd, *fd_status;
	Atom xa, xa_prop;
	
	// On vérifie la présence des arguments nécessaires
	if( argc < 3 )
	{
		printf("  Usage: ./acd intervalle x y");
		printf("  Exemple: ./acd 10 580 480");
		return 1;
	}
	
	/* La base : on définit le server X à utiliser */
	/* l'écran, etc., et on récupère la fenêtre root */
	Display *display = XOpenDisplay( NULL );
	int screen = DefaultScreen( display );
	Visual *visuel = DefaultVisual( display, screen );
	Colormap colormap = DefaultColormap( display, screen );

	Window fenetre_root = RootWindow( display, screen );

	/* On définit les attributs, puis la fenêtre avec un fond gris */
	XSetWindowAttributes attrs = {  ParentRelative, 0L, 0, 0L, 0, 0,
					Always, 0L, 0L, False, ExposureMask | OwnerGrabButtonMask, 0L, True, 0, 0 };
	
	Window fenetre = XCreateWindow(display, fenetre_root, pos_x, pos_y, 154, 154, 0,
				       CopyFromParent, InputOutput, CopyFromParent, CWEventMask, &attrs);
	
	XSetWindowBackground(display, fenetre, bg_color);

	/* Paramétrage d'imlib */
	Imlib_Load_Error *error_return;
	Imlib_Image cover;
		
	imlib_context_set_display(display);
	imlib_context_set_visual(visuel);
	imlib_context_set_colormap(colormap);
	imlib_context_set_drawable(fenetre);
	
	/* On affiche la fenêtre */
	XMapWindow( display, fenetre );	
	XSelectInput( display, fenetre, ExposureMask | OwnerGrabButtonMask );
	
	/* On enlève les décorations de la fenetre */
	xa = ATOM(_MOTIF_WM_HINTS);
	long prop2[5] = { 2, 0, 0, 0, 0 };
	XChangeProperty(display, fenetre, xa, xa, 32, PropModeReplace, (unsigned char *) prop2, 5);
	
	/* on déplace */
	XMoveWindow(display, fenetre, pos_x, pos_y);
	
	for(;;)
	{
                /* on vérifie l'état d'amarok : s'il est bien lancé et s'il joue une musique */
                fd_status=popen(cmd_status,"r");
                if(!fd_status)
                {
        		fprintf(stderr,"Error popen\nQuitting.\n" );
                       	return 1;
        	}

        	/* on récupère le status d'amarok */
        	if(!fgets(path_status,128,fd_status))
        	{
        		fprintf(stderr,"Error fgets\nQuitting.\n" );
        		return 1;
                }

        	/* ici je testais si amarok était lancé, mais de tout manière s'il n'est pas lancé,
        	   la commande dcop échoue et donc fgets renvoie une erreur et arrête le programme */
        	/*if(strstr(path,"ERROR")!=NULL)
        	{
        		fprintf(stderr,"Error: Amarok is not running");
        		return 1;
        	}*/
                
                /* On empeche la fenetre d'apparaitre dans la taskbar :  */
                xa = ATOM(_NET_WM_STATE);
                xa_prop = ATOM(_NET_WM_STATE_SKIP_TASKBAR);
                XChangeProperty(display, fenetre, xa, XA_ATOM, 32, PropModeAppend, (unsigned char *) &xa_prop, 1);
		                	/* On affiche la fenetre sous toutes les autres */
                XLowerWindow(display, fenetre);
		                	/* on récupère le résultat dans la commande cmd */
                fd = popen(cmd,"r");
                if(!fd)
                {
                	fprintf(stderr,"Error popen\nQuitting.\n");
                	return 1;
                }
                
                if(!fgets(path,128,fd))
                {
                	fprintf(stderr,"Error fgets\nQuitting.\n" );
                	return 1;
                }
                
                fin = strrchr(path, '\n');
                if(fin != NULL) *fin = '\0';
                
                       
                /* si amarok ne lit rien, on affiche une petite image d'attente.
                   Ce n'est pas forcément très esthétique, mais sinon conky relance
                   le programme en boucle et ça donne une fenêtre qui clignote,
                   c'est moche est chiant ^^ */
                if(strstr(path_status,"0")!=NULL)
                {
                	printf("Amarok status is 0 : not playing\n");
                        cover = imlib_load_image(default_image);
                	imlib_context_set_image(cover);
                	imlib_render_image_on_drawable_at_size(2,2,150,150);
                }
                
                /* Sinon on charge et affiche l'image en la redimmensionnant un brin */
                else
                {
                        cover = imlib_load_image_with_error_return(path,error_return);
                       
                        if(!cover)
                        {
                        	printf("Error %d loading image : %s\nQuitting.\n", *error_return, error[*error_return]);
                        	return 1;
                        }
                       	imlib_context_set_image(cover);
                       	imlib_render_image_on_drawable_at_size(2,2,150,150);
                }
               	
               	/* Et on attend ... */
               	sleep(inter);
               	imlib_free_image();
                pclose(fd_status);
               	pclose(fd);
        }
        
	/* Et finalement on détruit la fenetre */
	XDestroyWindow(display,fenetre);
	return 0;
}

Et je m'aperçois que comme un boulet j'ai aussi oublié de fournir le fichier d'entête roll

~/.conky/acd.h

#define ATOM(a) XInternAtom(display, #a, False)

char *error[15] = 
{
   "IMLIB_LOAD_ERROR_NONE",
   "IMLIB_LOAD_ERROR_FILE_DOES_NOT_EXIST",
   "IMLIB_LOAD_ERROR_FILE_IS_DIRECTORY",
   "IMLIB_LOAD_ERROR_PERMISSION_DENIED_TO_READ",
   "IMLIB_LOAD_ERROR_NO_LOADER_FOR_FILE_FORMAT",
   "IMLIB_LOAD_ERROR_PATH_TOO_LONG",
   "IMLIB_LOAD_ERROR_PATH_COMPONENT_NON_EXISTANT",
   "IMLIB_LOAD_ERROR_PATH_COMPONENT_NOT_DIRECTORY",
   "IMLIB_LOAD_ERROR_PATH_POINTS_OUTSIDE_ADDRESS_SPACE",
   "IMLIB_LOAD_ERROR_TOO_MANY_SYMBOLIC_LINKS",
   "IMLIB_LOAD_ERROR_OUT_OF_MEMORY",
   "IMLIB_LOAD_ERROR_OUT_OF_FILE_DESCRIPTORS",
   "IMLIB_LOAD_ERROR_PERMISSION_DENIED_TO_WRITE",
   "IMLIB_LOAD_ERROR_OUT_OF_DISK_SPACE",
   "IMLIB_LOAD_ERROR_UNKNOWN"
};

Voilà voilà, si vous avez des suggestions, voire des améliorations à proposer, n'hésitez pas smile

Dernière modification par Askelon (Le 25/07/2008, à 13:54)

Hors ligne

#1658 Le 25/07/2008, à 16:48

hartman

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Bonjour,

demain je dois installer une bécane sous Ubuntu pour un pote, et je vais lui metter conky.
Pour des soucis de rapidité, je voudrais que son conky lui affiche son adresse IP public (histoire de prendre la main dessus rapidement). J'y pense au dernier moment, et je n'est plus le temps de chercher en profondeur (même si j'ai trouvé un script sur le forum anglais, je ne m'y suis pas trop penché), je pars justement ce soir.
Quelqu'un aurait-il la bonté de me faire dons de son script?

Marki à vous


P4 2.8Ghz 32bits / 1Go de RAM / GeForce FX5700LE.
Ubuntu Dapper Drake et Gutsy gibbon
Documentation sur Ubuntu, pour les débutants voir moins débutant :P

Hors ligne

#1659 Le 25/07/2008, à 17:14

StyphaX13

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

IP PUBLIQUE : ${execi 3600 wget -O - http://ip.tupeux.com | tail}

wink


Serveur LAMP : Lubuntu 8.04 | AMD AthlonXP 1800+ | 1024Mo PC133
PC taff : Win. 7 sur HP DV5 | Core 2 Duo P8400 | 3Go DDR2 | Nvidia GeForce 9600M GT
PC jeu : Win. 7 | INTEL Core2 Quad Q6600 @3.2Ghz | 3Go DDR2 @890 | ATI Radeon HD4890 1024mo
eee_PC : Win. 7 | ASUS 1008HA

Hors ligne

#1660 Le 25/07/2008, à 17:15

mydoom666

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Mon Conkyrc :

423313b001085161204ff076ff981t.jpg

#avoid flicker
double_buffer yes
out_to_console no

#own window to run simultanious 2 or more conkys
own_window  yes
own_window_transparent yes
own_window_type normal
own_window_hints undecorate,sticky,skip_taskbar,skip_pager 

#borders
draw_borders no
border_margin 2

#shades
draw_shades no

#position
gap_x 135
gap_y 40
alignment top_left

#behaviour
update_interval 1

#colour
default_color  FFFFFF
#default_shade_color 000000
own_window_colour 262626

#font
use_xft yes
xftfont bauhaus:pixelsize=10

#to prevent window from moving
use_spacer no
minimum_size 1010

TEXT
${alignc}Kernel: ${color 009BF9}$kernel ${color} |${voffset -1} Cpu1: ${color 009BF9}${font}${cpu cpu1}% ${color} - ${color} Cpu2: ${color 009BF9}${font}${cpu cpu2}% ${color} Mem: ${color 009BF9}${font}${mem} ${color} | ${color} Up: ${color 009BF9}${font}${uptime_short} ${color} | ${color} Net: ${color 009BF9}${execi 120 wget -O - http://ip.tupeux.com | tail} ${color} - ${color} D ${color 009BF9}${font}${downspeed eth0} Kb/s ${color} (${totaldown eth0}) - ${color} U ${color 009BF9}${upspeed eth0} Kb/s ${color} (${totalup eth0}) ${color} | ${color} Root: ${color 009BF9}${font}${fs_free /} ${color} Home: ${color 009BF9}${font}${fs_free /home} ${color} Win: ${color 009BF9}${font}${fs_free /media/windows}

Voici ce que tu cherches hartman :

${execi 120 wget -O - http://ip.tupeux.com | tail}

EDIT : Grilled roll

Dernière modification par mydoom666 (Le 25/07/2008, à 17:40)

Hors ligne

#1661 Le 25/07/2008, à 17:57

sakul

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

^^ ca me rappelle quelque chose ca .... tongue


capture1_mini.png


commandes de bases ||  Debian testing 64bit - xfce / Intel-Core-2 Quad @ 2.33GHz / 9600 GT

Hors ligne

#1662 Le 25/07/2008, à 20:14

erdnaxeli

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

@Askelon : les scripts pour bashfr et vdm n'affichent rien chez moi sad.


Xitaflup vaincra !

Hors ligne

#1663 Le 25/07/2008, à 20:54

oim

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Salut, j'ai repris le script de Askelon (merci) pour afficher les titres du Monde, par contre est-il possible de rajouter un lien pour y accéder directement ?

Merci !

Hors ligne

#1664 Le 25/07/2008, à 21:20

erdnaxeli

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

@oim : mettre un lien dans conky est à mon avis strictement impossible ...


Xitaflup vaincra !

Hors ligne

#1665 Le 25/07/2008, à 22:11

Askelon

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Pour les liens ce n'est pas réalisable avec conky comme le fait remarquer erdnaxeli.

Et effet, il y a un bug avec les scripts vdm et bashfr. A première vue ils sont masqués par quelque chose, puisque si on met gap_y 432, ils réapparaissent hmm

Je ne sais pas du tout d'ou sort le truc qui les cachent neutral

Hors ligne

#1666 Le 25/07/2008, à 22:13

oim

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

oki, et si on place une image de fond ou autre (si vous avez des idées) et qu'on la positionne ou l'on veut c'est possible ?

Hors ligne

#1667 Le 25/07/2008, à 22:24

Askelon

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Conky ne gère pas les images d'aucune sorte hmm mais tu peux mettre un fond de couleur il me semble.

Pour la position, c'est avec alignment, gap_x et gap_y. Exemple :

alignment		top_left
gap_x			10
gap_y			10

affiche la fenêtre en haut à gauche, avec un décalage de 10 pixel par rapport au coin de l'écran.


@erdnaxeli : j'ai relancé Xorg, et les scripts bashfr et vdm apparaisse à nouveau roll un mystère de plus dans le monde de l'informatique ^^

Hors ligne

#1668 Le 25/07/2008, à 23:30

Jackass059

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Je ne sais pas si ça a déjà été proposé, mais j'ai réalisé un petit script permettant de récupérer les informations de rhythmbox.

Screenshot.jpg

#!/bin/bash

song=$(rhythmbox-client --print-playing --no-start);

if [ "$song" == "" ] 
then
	echo -e "Rhythmbox isn't running";
else
artist=$(rhythmbox-client --print-playing-format "%ta");
album=$(rhythmbox-client --print-playing-format "%at");
title=$(rhythmbox-client --print-playing-format "%tt");
duration=$(rhythmbox-client --print-playing-format "%td");
elapsed=$(rhythmbox-client --print-playing-format "%te");
	if [ "$title" != "" ] ; then
		echo -e "title:\t   $title";
	fi
	if [ "$artist" != "" ] ; then
		echo -e "artist:\t  $artist";
	fi
	if [ "$album" != "" ] ; then
		echo -e "album:\t\t$album";
	fi
	if [ "$duration" != "" ] ; then
		if [ "$elapsed" != "" ] ; then
			echo -e "elapsed:\t$elapsed/$duration";
		fi
	elif [ "$elapsed" != "" ] ; then
		echo -e "elapsed time:\t$elapsed";
	fi
fi

J'avoue qu'on pourrait peut être faire ça plus proprement m'enfin, j'ai fait ça vite fait, n'hésitez pas à l'améliorer big_smile .

Dernière modification par Jackass059 (Le 25/07/2008, à 23:32)


Il y a 10 types de personnes sur terre, celles qui comprennent le binaire, et les autres ...

Hors ligne

#1669 Le 26/07/2008, à 09:21

erdnaxeli

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

@Askelon : rien n'à faire ça ne marche pas chez moi. Voilà ce que j'ai (à gauche) :
3f9e153696c8ea9e6146b0ceb1654t.jpg


Xitaflup vaincra !

Hors ligne

#1670 Le 26/07/2008, à 20:11

rOm_08

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Chez moi c'est coupé sad

capture54cs2.th.jpg

le conky :

# Allow each port monitor to track at least this many connections (if 0 or not set, default is 256)
#min_port_monitor_connections 64

#emplacement
alignment top_right

#pour que corky tourne en arriere plan
background yes
#background no #pour les tests

#nombre d'echantillons a utiliser pour calculer la moyenne d'utilisation
cpu_avg_samples 4
net_avg_samples 4

#affiche le texte sur la sortie standard
out_to_console no

# Utiliser Xft (polices lissées etc)
use_xft yes

#police a utiliser : use_xft doit etre a "yes"
xftfont DejaVu Sans Condensed Oblique:size=10

# utiliser sa propre fenetre ?
own_window yes

#type de fenetre : normal(avec le cadre) / override / desktop
own_window_type override

#pseudo transparence?
own_window_transparent yes

# taux de raffraichissement de la fenetre (en secondes)
update_interval 2

# pour eviter le clignotement de la semaine (fonctionne pas chez moi)
double_buffer yes

# afficher les ombres?
draw_shades no

# afficher des contours ?
draw_outline no

#contours autour des blocs de texte?
draw_borders no

# contour en trait-tillés, longueur d'un trait en pixels
stippled_borders 10

#largeur des marges (n'a pas l'air de fonctionner)
border_margin 20

# largeur du contour
border_width 1

# couleur par defaut du texte, de l'ombre et du contour
default_color black
default_shade_color white
default_outline_color white

# ecart avec le bord x=gauche ou droit y= haut ou bas
gap_x 20
gap_y 300

# Ajoute des espaces apres certains objets pour eviter de les faire bouger.
# Fonctionne uniquement avec la police Monospace
use_spacer no

# Soustraire les mémoires tampons de la mémoire utiliser ?
no_buffers yes

# Tout le texte en majuscule ?
uppercase no

# Minimum size of text area
minimum_size 300

#Max
maximum_width 300



TEXT
${alignc}${color} .: VieDeMerde.fr :.
${color}${hr}${color}
${execi 200 ~/.conky/vdm.pl -aleatoire}

comment faire pour qu'il soit complet ?
pour vdm j'ai coupé a 7 mots
et pour bashfr j'aimerais qu'il utilise plusieurs ligne.

Merci


Ubuntu Lucid Lynx 10.4 | Asus P5E Deluxe | Core2Quad Q9550 | ATI HD4870 512Mo | 4Go de RAM | Coolermaster Real Power M620 | Hitachi 1To

Hors ligne

#1671 Le 26/07/2008, à 20:40

rOm_08

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Avec le script pour amarok, j'ai cette erreur : /home/rom/.conky/acd: 13: Syntax error: "(" unexpected

qu'est-ce que j'ai oublié ?

Merci


Ubuntu Lucid Lynx 10.4 | Asus P5E Deluxe | Core2Quad Q9550 | ATI HD4870 512Mo | 4Go de RAM | Coolermaster Real Power M620 | Hitachi 1To

Hors ligne

#1672 Le 26/07/2008, à 23:09

Onlynico57

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Pour ma part je me suis créer un petit script qui permet d'executé conky sur une machine distante et d'affiché le conky sur son bureau.
J'ai repris celui trouvé dans le topic et modifier pour l'utilisé à l'extérieur du reseau et à l'interieur du réseau.

Cela permet aussi d'affiché un message d'erreur et retente la connexion au P.C ou est situé conky.

#!/bin/bash
#à remplir
IP=XX.XX.XXX.XXX
IP_LOCAL=XXX.XXX.XX.XX
USER=nicolas

sleep 20

if ping -c 1 google.fr ; then

if ping -c 1 $IP_LOCAL ; then
     sleep 20 && nohup ssh -X $USER@$IP_LOCAL conky &
     exit
    else
if ping -c 1 $IP ; then
     sleep 20 && nohup ssh -X $USER@$IP conky &
     exit
    else
       zenity --info --title="Conky Serveur" --text="Impossible de se connecté au Conky Serveur par l'ip privé et l'ip public" && sleep 100  &&  sh /home/nicolas/.conky/conky-ser$
    exit
    fi
exit
fi


      exit
    else
       zenity --info --title="Conky Serveur" --text="Pas de Connexion Internet" && sleep 40 && sh /home/nicolas/.conky/conky-serveur.sh && kill $$
     exit
fi

N'oubliez pas de changé le chemin du script aux 2 endroits dans le script.

Pour plus de facilité on peut aussi enlever l'affichage des erreurs et ainsi le script tourne en arriére plan jusqu'au moment où  la connexion internet reviens ou que le PC ou l'on se connecte soit allumé.

#!/bin/bash
#à remplir
IP=81.56.151.103
IP_LOCAL=192.168.0.3
USER=nicolas

sleep 20

if ping -c 1 google.fr ; then

if ping -c 1 $IP_LOCAL ; then
     sleep 20 && nohup ssh -X $USER@$IP_LOCAL conky &
     exit
    else
if ping -c 1 $IP ; then
     sleep 20 && nohup ssh -X $USER@$IP conky &
     exit
    else
       sleep 100  &&  sh /home/nicolas/.conky/conky-ser$
    exit
    fi
exit
fi


      exit
    else
       sleep 40 && sh /home/nicolas/.conky/conky-serveur.sh && kill $$
     exit
fi

Il y a surement des améliorations à faire

Hors ligne

#1673 Le 27/07/2008, à 11:02

px751

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

Voice mon Bureau (asset simple mais  bien intégré a mon "theme" tongue)

Capture%20soft_small.png

Et mon .conkyrc:

#emplacement
alignment top_right

#pour que corky tourne en arriere plan
#background yes
background no #pour les tests

#nombre d'echantillons a utiliser pour calculer la moyenne d'utilisation
cpu_avg_samples 4
net_avg_samples 4

#affiche le texte sur la sortie standard
out_to_console no

# Utiliser Xft (polices lissées etc)
use_xft no

#police a utiliser : use_xft doit etre a "yes"
#xftfont Terminal Bitstream Vera Sans Mono:size=8

# utiliser sa propre fenetre ?
own_window yes

#type de fenetre : normal(avec le cadre) / override / desktop
own_window_type override

#pseudo transparence?
own_window_transparent yes

# taux de raffraichissement de la fenetre (en secondes)
update_interval 1.0

# pour eviter le clignotement de la semaine (fonctionne pas chez moi)
double_buffer yes

# afficher les ombres?
draw_shades no

# afficher des contours ?
draw_outline no

#contours autour des blocs de texte?
draw_borders yes

# contour en trait-tillés, longueur d'un trait en pixels
stippled_borders 3

#largeur des marges (n'a pas l'air de fonctionner)
border_margin 20

# largeur du contour
border_width 2

# couleur par defaut du texte, de l'ombre et du contour
default_color white
default_shade_color black
default_outline_color black

# ecart avec le bord x=gauche ou droit y= haut ou bas
gap_x 30
gap_y 60

# Ajoute des espaces apres certains objets pour eviter de les faire bouger.
# Fonctionne uniquement avec la police Monospace
use_spacer no

# Soustraire les mémoires tampons de la mémoire utiliser ?
no_buffers yes

# Tout le texte en majuscule ?
uppercase no

TEXT
${font Arial:style=Bold:pixelsize=12}${color #00ff00}$nodename - $sysname $kernel on $machine
${color #00ff00}Uptime: $color $uptime 
${color #00ff00}Autonomie batterie : ${color #ffffff}${battery}
${color #00ff00}CPU Temp: ${color #ffffff}${acpitemp}C
$color$stippled_hr

${color #00ff00}Ip Wlan: $color ${execi 3600 wget -O - http://ip.tupeux.com | tail}

${color #00ff00}Ethernet (eth0) :${alignr}DL :${color #ffffff} ${totaldown eth0} ${color #00ff00}/ UP :${color #ffffff} ${totalup eth0} 
${color #00ff00}Adresse IP : ${color #ffffff}${addr eth0}
${color #00ff00}Down :${color #ffffff} ${downspeed eth0} k/s${color #00ff00} ${offset 100}Up:${color #ffffff} ${upspeed eth0} k/s
${color #00ff00}${downspeedgraph eth0 25,150 ff0000 0000ff} $alignr${color #00ff00}${upspeedgraph eth0 25,150 0000ff ff0000}

${color #00ff00}Wifi (wlan0) :${alignr}DL :${color #ffffff} ${totaldown wlan0} ${color #00ff00}/ UP :${color #ffffff} ${totalup wlan0} 
${color #00ff00}Adresse IP : ${color #ffffff}${addr wlan0}
${color #00ff00}Down :${color #ffffff} ${downspeed wlan0} k/s${color #00ff00} ${offset 100}Up:${color #ffffff} ${upspeed wlan0} k/s
${color #00ff00}${downspeedgraph wlan0 25,150 ff0000 0000ff} $alignr${color #00ff00}${upspeedgraph wlan0 25,150 0000ff ff0000}
$color$stippled_hr

${color #00ff00}CPU Usage:${color #ffffff} ${cpu}%
${cpubar 10,300 ff0000 0000ff}
${color #00ff00}RAM Usage:$color $memperc% on $memmax ${color #00ff00}Swap Usage:$color $swapperc% on $swapmax
${membar 10,150 ff0000 0000ff} ${swapbar 10,150 ff0000 0000ff}
${color #00ff00}Processus:$color $processes  ${color #00ff00}Running:$color $running_processes
$color$stippled_hr

${color #00ff00}*File systems* 
${color #ffffff}Linux     ${fs_used /}/${fs_size /}${alignr}${fs_used_perc /}%
${fs_bar 8 /}
${color #ffffff}Windows  ${fs_used /media/disk}/${fs_size /media/disk}${alignr}${fs_used_perc /media/disk}%
${fs_bar 8 /media/disk}
${color #ffffff}Files ${fs_used /media/Files}/${fs_size /media/Files}${alignr}${fs_used_perc /media/Files}%
${fs_bar 8 /media/Files} 
$color$stippled_hr 

${color #00FF00}*CPU usage*
${offset 80}${color #00a800}Nom ${alignr 50}PID ${alignr 20}CPU%
${offset 80}${color #ffffff}${top name 1} ${alignr 30}${top pid 1} ${alignr 15}${top cpu 1}
${offset 80}${color #ffffff}${top name 2} ${alignr 30}${top pid 2} ${alignr 15}${top cpu 2}
${offset 80}${color #ffffff}${top name 3} ${alignr 30}${top pid 3} ${alignr 15}${top cpu 3}
${color #00FF00}*Mem usage*
${offset 80}${color #00a800}Nom ${alignr 50}PID ${alignr 20}Mem%
${offset 80}${color #ffffff}${top_mem name 1} ${alignr 30}${top_mem pid 1} ${alignr 15}${top_mem mem 1}
${offset 80}${color #ffffff}${top_mem name 2} ${alignr 30}${top_mem pid 2} ${alignr 15}${top_mem mem 2}
${offset 80}${color #ffffff}${top_mem name 3} ${alignr 30}${top_mem pid 3} ${alignr 15}${top_mem mem 3}

Mon conky.sh

#!/bin/bash

sleep 5
conky -c /home/px751/.conkyrc  &
conky -c /home/px751/.conkyrc-lemonde &

exit

Je remet le .conkyrc-lemonde qui se trouve dans d'autres poste ulterieur juste au cas où...:cool:

background        no
update_interval        1.0
double_buffer        yes

use_xft            yes
override_utf8_locale
xftfont            Sans:size=9

own_window        yes
own_window_transparent    yes
own_window_type        override
own_window_hints    undecorated,below,sticky,skip_taskbar,skip_pager
#on_bottom        yes

minimum_size        250 0
maximum_size        250
draw_shades        no
draw_outline        yes
draw_borders        yes
draw_graph_borders    no
stippled_borders    0
border_margin        10
border_width       0
border_height       0

default_color        white
default_shade_color    black
default_outline_color    black

alignment        bottom_left
gap_x            20
gap_y            30

no_buffers        yes


TEXT

${alignc}${color #00ff00}*${color 00ff00} ${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 feed_title 1} ${color #00ff00}*
${color white}${hr}
${color #ffffff}   ${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 item_title 1}
${color #ffffff}   ${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 item_title 2}
${color #ffffff}   ${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 item_title 3}
${color #ffffff}   ${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 item_title 4}
${color #ffffff}   ${rss http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml 2 item_title 5}

P.S. Avec compiz c simpa ossi ^^:

Compiz%20Bureau%20Tilda%20et%20conky_small.png

(dsl g pas pu resister lol:lol: )

Dernière modification par px751 (Le 27/07/2008, à 11:03)


Epitech 2014

Ubuntu 9.10 Netbook remix
/* no comment */

Hors ligne

#1674 Le 27/07/2008, à 11:08

rOm_08

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

j'aime bien le style smile
comment tu fais pour mettre l'animal dans le temrinal ? (je sais pas si je m'exprime bien lol)


Ubuntu Lucid Lynx 10.4 | Asus P5E Deluxe | Core2Quad Q9550 | ATI HD4870 512Mo | 4Go de RAM | Coolermaster Real Power M620 | Hitachi 1To

Hors ligne

#1675 Le 27/07/2008, à 11:36

TraGiKomiK

Re : Conky : Postez vos conkyrc ou certaines parties intéressantes

comment tu fais pour mettre l'animal dans le temrinal ?

La ligne juste au dessus: apt-get moo wink

Px751-> pas mal en effet le conky qui se marie parfaitement au theme. Une petite question: quel effet de compiz est ce dans le deuxieme screenshoot?

Dernière modification par TraGiKomiK (Le 27/07/2008, à 11:39)


Merci de mettre [RESOLU] dans le titre de votre post une fois le  probleme reglé!

GNU/Linux -> \o/

Hors ligne