Contenu | Rechercher | Menus

Annonce

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.

#1101 Le 18/10/2011, à 02:22

neecride

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

Me re-vla encore du changement que boulot piuff

1318900386.png

tu en pense quoi wlourf ? sur celui la je me suis fait plaisir, deadspace oblige !!.

Hors ligne

#1102 Le 18/10/2011, à 19:53

wlourf

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

neecride a écrit :

tu en pense quoi wlourf ? sur celui la je me suis fait plaisir, deadspace oblige !!.

je ne pense que du bien ! je me suis bien amusé à écrire ce script, content de le voir par-ci par là wink

Hors ligne

#1103 Le 21/10/2011, à 12:38

Phyllinux

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

Ami(e)s conky(stadores) bonjour !

Si vous avez passé de nombreuses heures à peaufiner vos différents conkys, et plus particulièrement à travailler sur des conkys météo, je pense que vous avez reçu tout comme moi un mail de weather.com vous indiquant que leur service de fourniture des données allait changer d'ici la mi novembre.
Pour continuer à pouvoir recevoir les données météo, il faut souscrire un abonnement, aux tarifs prohibitifs ! De 20$ à 186$ par mois. Je ne pense pas que beaucoup de particuliers souscrivent à cette offre pour obtenir une météo alors qu'il existe de nombreux sites permettant d'accéder gratuitement à ces informations.
Alors, j'ai commencé à rechercher des solutions alternatives pour continuer à faire tourner mes conkys. J'ai trouvé 2 possibilités : Celle de Yahoo! Weather RSS Feed Yahoo Weather et celle de Wunderground Wunderground.
Si quelqu'un sait comment :
1/ Automatiser la requête pour télécharger ces données et
2/ Les intégrer dans le conky pour permettre l'affichage comme avec celles provenant de weather.com, je suis preneur, et je pense que je ne serais pas le seul wink

Actuellement, c'est un peu la crise :
J'utilise en fond d'écran XplanetFX, qui est un excellentissime  fond d'écran dynamique, dont Clapico avait parlé dans son blog.
Voir ici : XplanetFX
Depuis un mois environ, le provider des photos satellites de la couverture nuageuse est passé payant, pour avoir une mise à jour toutes les 3 heures comme c'était le cas depuis des années... Heureusement, après des négociations, le développeur du projet a obtenu la fourniture gratuite d'une photo par jour, pour pouvoir garder un tant soit peu de réalisme.
Je suis passé à Oneiric sur mon desktop, et depuis, je n'ai plus aucun conky qui tourne correctement. Toutes les polices, les mises en formes, les scripts Lua sont explosés, donnant un résultat atroce et inexploitable. Je vais donc devoir reprendre tous mes conkys ligne par ligne, les uns après les autres. Mais si conkyforecast ne peut être alimenté, alors autant abandonner tout de suite le travail sur mes conkys intégrant la météo.

Voici pour mon coup de gueule du jour, et si l'un d'entre vous à des idées sur la solution de rechange pour conkyforecast, je suis preneur tongue

Bon conky à tous


The ship is sinking normally...

Hors ligne

#1104 Le 21/10/2011, à 22:30

Kayzhar

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

Salut !  smile
J'ai récemment découvert et installé Conky.

Je préfère venir poser ma question ici, car il me semble qu'il y a beaucoup de membres qui l'utilisent, et que je pourrai donc obtenir une réponse ici.
Mon problème se situe au lancement de Conky (dans le terminal :

conky

)

Je lance donc conky, et voici les erreurs :

caesar@caesar-h8-1010be:~$ conky
Conky: /home/caesar/.conkyrc: 30: no such configuration: 'on_bottom'
Conky: /home/caesar/.conkyrc: 60: no such configuration: 'border_margin'
Conky: use_spacer should have an argument of left, right, or none.  'no' seems to be some form of 'false', so defaulting to none.
Conky: can't open '/sys/bus/i2c/devices/i2c-0/temp2_input': No such file or directory
please check your device or remove this var from Conky
Conky: Error destroying thread
Conky: Error destroying thread
Conky: Error destroying thread
Conky: Error destroying thread
Conky: Error destroying thread
Conky: Error destroying thread
Conky: Error destroying thread
Conky: Error destroying thread
***** Imlib2 Developer Warning ***** :
        This program is calling the Imlib call:

        imlib_context_free();

        With the parameter:

        context

        being NULL. Please fix your program.

Et mon fichier .conkyrc (pris depuis la doc) :

# set to yes if you want Conky to be forked in the background
background yes

cpu_avg_samples 2
net_avg_samples 2

out_to_console no

# X font when Xft is disabled, you can pick one with program xfontsel
#font 7x12
#font 6x10
#font 7x13
#font 8x13
#font 7x12
#font *mintsmild.se*
#font -*-*-*-*-*-*-34-*-*-*-*-*-*-*
#font -artwiz-snap-normal-r-normal-*-*-100-*-*-p-*-iso8859-1

# Use Xft?
use_xft yes

# Xft font when Xft is enabled
xftfont Bitstream Vera Sans Mono:size=8

own_window_transparent yes
own_window_colour hotpink
# Text alpha when using Xft
xftalpha 0.8

on_bottom yes

# mail spool
mail_spool $MAIL

# Update interval in seconds
update_interval 1
# Create own window instead of using desktop (required in nautilus)
own_window no

# Use double buffering (reduces flicker, may not work for everyone)
double_buffer yes

# Minimum size of text area
#minimum_size 280 5
#maximum_width 150

# Draw shades?
draw_shades no

# Draw outlines?
draw_outline no

# Draw borders around text
draw_borders no

# Stippled borders?
stippled_borders 10

# border margins
border_margin 4

# border width
border_width 1

# Default colors and also border colors
default_color white
default_shade_color white
default_outline_color white

# Text alignment, other possible values are commented
#alignment top_left
#minimum_size 10 10
gap_x 13
gap_y 34
alignment top_right
#alignment bottom_left
#alignment bottom_right

# Gap between borders of screen and text

# Add spaces to keep things from moving about?  This only affects certain objects.
use_spacer no

# Subtract file system buffers from used memory?
no_buffers yes

# set to yes if you want all text to be in uppercase
uppercase no

# boinc (seti) dir
# seti_dir /opt/seti

TEXT
$nodename - $sysname $kernel on $machine
$stippled_hr
${color lightgrey}Uptime:$color $uptime ${color lightgrey}- Load:$color $loadavg
${color lightgrey}CPU Usage:${color #5000a0} ${cpu}% ${cpubar}
${color black}${cpugraph 000000 5000a0}
${color lightgrey}RAM Usage:$color $mem/$memmax - $memperc% $membar
${color lightgrey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar}
${color lightgrey}Processes:$color $processes  ${color grey}Running:$color $running_processes
$color$stippled_hr
${color lightgrey}Networking:
 Down:${color #8844ee} ${downspeed eth0} k/s${color lightgrey} ${offset 70}Up:${color #22ccff} ${upspeed eth0} k/s
${color black}${downspeedgraph eth0 32,150 ff0000 0000ff} $alignr${color black}${upspeedgraph eth0 32,150 0000ff ff0000}
${color lightgrey}File systems:
 / $color${fs_used /}/${fs_size /} ${fs_bar /}
${color lightgrey}Temperatures:
 CPU:$color ${i2c temp 2}C${color grey} - MB:$color ${i2c temp 1}C
${font Dungeon:style=Bold:pixelsize=12}${color #88aadd}MPD: ${alignc}$mpd_artist - $mpd_title
${color #88aadd}$mpd_bar
${color #88aadd}${alignc}$mpd_status
${color}Name              PID     CPU%   MEM%
${color #ddaa00} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
${color}Mem usage
${color #ddaa00} ${top_mem name 1} ${top_mem pid 1} ${top_mem cpu 1} ${top_mem mem 1}
${color lightgrey} ${top_mem name 2} ${top_mem pid 2} ${top_mem cpu 2} ${top_mem mem 2}
${color lightgrey} ${top_mem name 3} ${top_mem pid 3} ${top_mem cpu 3} ${top_mem mem 3}

${color #FFFFFF} ${top_mem name 1} ${top_mem pid 1} ${top_mem cpu 1} ${top_mem mem 1}
${color #FFFFFF} ${top_mem name 2} ${top_mem pid 2} ${top_mem cpu 2} ${top_mem mem 2}
${color #FFFFFF} ${top_mem name 3} ${top_mem pid 3} ${top_mem cpu 3} ${top_mem mem 3}
${color #FFFFFF} ${top_mem name 4} ${top_mem pid 4} ${top_mem cpu 4} ${top_mem mem 4}

Sauriez-vous m'aider ?

Merci d'avance ! big_smile

Hors ligne

#1105 Le 24/10/2011, à 07:25

Didier-T

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

bonjour Kayzhar,

pour commencer tu devrais désactiver les lignes 30 et 60 (avec #)
Je ne connais pas l'utilité de on_bottom, et border_margin n'a jamais fonctionné chez moi.

use_spacer ne connais pas no, mais none

je ne vois pas l'info own_window_type tu peu y spécifier trois arguments différent :
   normal (une vraie fenêtre avec bordure bouton, etc...)
   override (incruster dans le fond d’écran)
   desktop (incruster sur le bureau)

et enfin il semble que tu n'as pas installé i2c pour ton monitoring ( perso je préfère lm-sensors )

j’espère t'avoir aidé un peut. smile

Hors ligne

#1106 Le 24/10/2011, à 14:40

GorgBV

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

Bonjour à tous,

Ayant découvert Conky et ses merveilles, je suis depuis un lecteur assidu de ce forum, a la recherche de trouvailles pour mes propres Conky.
Grâce a tous les codes postés j'ai réussi a bricoler quelque chose qui me plait bien.
capturedu20111024152053.th.png

(les conky ne sont pas spécialement agencés pour s'adapter au fond d'écran, car je change de fond d'écran a chaque démarrage ou presque grâce à nitrogen)

Cependant, je voudrais savoir s'il était possible de modifier le script Lua "clock_ring.lua", pour avoir une couleur sur les cercles qui dépende de la valeur de la variable affichée. (dans le cas qui m’intéresse j'aimerai avoir le cercle qui indique la charge de la batterie qui passe par exemple du vert au rouge quand j'arrive a moins de 20% de batterie).
J'ai trouvé comment faire pour le texte du conky, mais comme je ne sais pas programmer en Lua, je m'adresse aux experts de ce forum, pour savoir s'ils ont des idées.

Le script en question est le résultat de la mise bout à bout de 2 scripts que j'ai trouvé sur ce forum : un qui au début traçait les aiguilles et les cercles autour, et un autre qui permet d'avoir des cercles découpés en secteurs.
J'ai essayé plusieurs choses pour les faire fonctionner sur le même conky, la seule méthode que j'ai trouvé qui marche est celle ci : j'ai mis bout a bout les deux codes, changé le nom de la fonction draw_rings qui revenait dans les deux en draw_rings1 dans le premier.

Il en résulte un code assez laid, j'en suis bien conscient mais fonctionnel.
J'ai essayé de rajouter quelques commentaire pour qu'il reste a peu prés lisible, mais bon cela reste très succint.


Voici les conkyrc

.conkyrcclock

######################
# - Conky settings - #
######################
background no
update_interval 1
 
cpu_avg_samples 2
net_avg_samples 2
 
override_utf8_locale yes
 
double_buffer yes
no_buffers yes
 
text_buffer_size 10240
imlib_cache_size 0
 
#############################
# - Window specifications - #
#############################
own_window yes
own_window_type override

own_window_transparent yes

border_inner_margin 0
border_outer_margin 0
 
minimum_size 600 300
maximum_width 300
 
alignment tr
gap_x 150
gap_y 0
 
#########################
# - Graphics settings - #
#########################
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no
 
#####################
# - Text settings - #
#####################
use_xft yes
xftfont Santana:size=18
xftalpha 0.8
 
uppercase no
 
# default_color 2d7db3
# default_color FFFFFF
 default_color DBDBDB

################
# - LUA Load - #
################
lua_load ~/.conky/clock_rings.lua
lua_draw_hook_post clock_rings
lua_draw_hook_pre main_rings

############
# - Code - #
############
TEXT
${voffset 105}${goto 123}${font Nimbus Sans L:size=24:style=Bold}${time %H:%M}

${voffset 16}${goto 66}${font Nimbus Sans L:size=10}${time %A %d %B %Y}

${voffset 6}${goto 123}${font Nimbus Sans L:size=9:style=Bold}${color 949494}Batterie ${if_match ${battery_percent BAT0} >= 80}${color 616161}${battery_percent BAT0}%${else}${if_match ${battery_percent BAT0} >= 50}${color 008000}${battery_percent BAT0}%${else}${if_match ${battery_percent BAT0} >= 20}${color CC6D29}${battery_percent BAT0}%${else}${color CC2929}${battery_percent BAT0}%${endif}${endif}${endif}${color}

et le script clock_rings.lua


--Premier script: aiguilles, et arcs de cercles continus.
settings_table = {
    
    {
        name='cpu',
        arg='cpu0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x18FFF9,
        fg_alpha=0.5,
        x=160, y=155,
        radius=78.5,
        thickness=10,
        start_angle=93,
        end_angle=208
    },
    
    {
        name='memperc',
        arg='',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x003078,
        fg_alpha=0.5,
        x=160, y=155,
        radius=78.5,
        thickness=10,
        start_angle=212,
        end_angle=329
    },
    {
        name='wireless_link_qual_perc',
        arg='wlan0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x8288BD,
        fg_alpha=0.5,
        x=160, y=155,
        radius=78.5,
        thickness=10,
        start_angle=-27,
        end_angle=85
    }, 
    {
        name='fs_used_perc',
        arg='/',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x7C0BB9,
        fg_alpha=0.5,
        x=160, y=155,
        radius=105,
        thickness=3,
        start_angle=-120,
        end_angle=-13
    },
    {
        name='fs_used_perc',
        arg='/home/gorg/gorg',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x7C0BB9,
        fg_alpha=0.5,
        x=160, y=155,
        radius=105,
        thickness=3,
        start_angle=-10,
        end_angle=120
    },
}    
    
bars_settings={
{
name="eth0",
arg="eth0",
max=100,
--(max is set to 100 because maximum value of $cpu is 100%)
}
}    
    

clock_r=125
clock_x=160
clock_y=155
clock_colour=0xffffff
clock_alpha=0.5
show_seconds=true

require 'cairo'

function rgb_to_r_g_b(colour,alpha)
    return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end

function draw_ring1(cr,t,pt)
    local w,h=conky_window.width,conky_window.height

    local xc,yc,ring_r,ring_w,sa,ea=pt['x'],pt['y'],pt['radius'],pt['thickness'],pt['start_angle'],pt['end_angle']
    local bgc, bga, fgc, fga=pt['bg_colour'], pt['bg_alpha'], pt['fg_colour'], pt['fg_alpha']

    local angle_0=sa*(2*math.pi/360)-math.pi/2
    local angle_f=ea*(2*math.pi/360)-math.pi/2
    local t_arc=t*(angle_f-angle_0)

    

    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_f)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(bgc,bga))
    cairo_set_line_width(cr,ring_w)
    cairo_stroke(cr)

    

    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_0+t_arc)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(fgc,fga))
    cairo_stroke(cr)
end

function draw_clock_hands(cr,xc,yc)
    local secs,mins,hours,secs_arc,mins_arc,hours_arc
    local xh,yh,xm,ym,xs,ys

    secs=os.date("%S")
    mins=os.date("%M")
    hours=os.date("%I")

    secs_arc=(2*math.pi/60)*secs
    mins_arc=(2*math.pi/60)*mins+secs_arc/60
    hours_arc=(2*math.pi/12)*hours+mins_arc/12

    

    xh=xc+0.7*clock_r*math.sin(hours_arc)
    yh=yc-0.7*clock_r*math.cos(hours_arc)
    cairo_move_to(cr,xc,yc)
    cairo_line_to(cr,xh,yh)

    cairo_set_line_cap(cr,CAIRO_LINE_CAP_ROUND)
    cairo_set_line_width(cr,5)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(clock_colour,clock_alpha))
    cairo_stroke(cr)

    

    xm=xc+clock_r*math.sin(mins_arc)
    ym=yc-clock_r*math.cos(mins_arc)
    cairo_move_to(cr,xc,yc)
    cairo_line_to(cr,xm,ym)

    cairo_set_line_width(cr,3)
    cairo_stroke(cr)

    

    if show_seconds then
        xs=xc+clock_r*math.sin(secs_arc)
        ys=yc-clock_r*math.cos(secs_arc)
        cairo_move_to(cr,xc,yc)
        cairo_line_to(cr,xs,ys)

        cairo_set_line_width(cr,1)
        cairo_stroke(cr)
    end
end

function conky_clock_rings()
    local function setup_rings(cr,pt)
        local str=''
        local value=0

        str=string.format('${%s %s}',pt['name'],pt['arg'])
        str=conky_parse(str)

        value=tonumber(str)
        if value == nil then value = 0 end
        pct=value/pt['max']

        draw_ring1(cr,pct,pt)
    end

    

    if conky_window==nil then return end
    local cs=cairo_xlib_surface_create(conky_window.display,conky_window.drawable,conky_window.visual, conky_window.width,conky_window.height)

    local cr=cairo_create(cs)    

    local updates=conky_parse('${updates}')
    update_num=tonumber(updates)

    if update_num>5 then
        for i in pairs(settings_table) do
            setup_rings(cr,settings_table[i])
        end
    end

    draw_clock_hands(cr,clock_x,clock_y)
        cairo_destroy(cr)

end

--[[2e Script Extrait et modifié a partir de
    RINGS with SECTORS widget
    v1.0 by wlourf (08.08.2010)
    this widget draws a ring with differents effects 
    http://u-scripts.blogspot.com/2010/08/rings-sectors-widgets.html
    ]]

function conky_main_rings()
-- START PARAMETERS HERE
rings_settings={

    {
    --ring 1-1 :cpu
    name="battery_percent",
    arg="BAT0",
    max=100,
    radius=130,
    thickness=8,
    start_angle=-160,
    end_angle=160,
    sectors=100,
    xc=160, yc=155,
    bg_colour1={{0,0xdedede,0.05},{0,0xdedede,0.05}, {0,0xdedede,0.05}},
    fg_colour1={{0,0XFF6E00,0},{0,0xFF6E00,1}, {1,0xFF6E00,0}},
    fg_colour2={{0,0XFF6E00,0},{0,0xFF6E00,1}, {1,0xFF6E00,0}},
    bd_colour1={{0,0XFF6E00,1},{0,0xFF6E00,1}, {1,0xFF6E00,1}},
    },
    {
    
    name="time",
    arg="%S",
    max=60,
    radius=62,
    thickness=5,
    start_angle=0,
    end_angle=360,
    sectors=60,
    xc=160, yc=155,
    bg_colour1={{0,0xdedede,0.000001},{0,0xdedede,0.000001}, {0,0x1916F0,0.1}},
    fg_colour1={{0,0X309DBD,1},{0,0x309DBD,1}, {1,0x309DBD,1}},
    fg_colour2={{0,0X309DBD,1},{0,0x309DBD,1}, {1,0x309DBD,1}},
    bd_colour1={{0,0XFF6E00,1},{0,0xFF6E00,1}, {1,0xFF6E00,1}},
    },
    {   
    name="time",
    arg="%M.%S",
    max=60,
    radius=56,
    thickness=5,
    start_angle=0,
    end_angle=360,
    sectors=60,
    xc=160, yc=155,
    fg_colour1={{0,0x1916F0,0.6}},
    bg_colour1={{0,0Xffffff,0.01}},
    fg_colour2={{0,0x1916F0,0.6}},
    bd_colour1={{0,0XFF6E00,1},{0,0xFF6E00,1}, {1,0xFF6E00,1}},
    },
    {
    name="time",
    arg="%I.%M",
    max=12,
    radius=50,
    thickness=5,
    start_angle=0,
    end_angle=360,
    sectors=12,
    xc=160, yc=155,
    fg_colour1={{0,0x745EC3,0.6}},
    bg_colour1={{0,0Xffffff,0.01}},
    fg_colour2={{0,0x745EC3,0.6}},
    bd_colour1={{0,0XFF6E00,1},{0,0xFF6E00,1}, {1,0xFF6E00,1}},
    } 
    
}
--END OF PARAMETERS HERE

--main function

    if conky_window==nil then return end

    local cs=cairo_xlib_surface_create(conky_window.display,conky_window.drawable, conky_window.visual, conky_window.width, conky_window.height)
    cr=cairo_create(cs)

    if tonumber(conky_parse('${updates}'))>3 then
        for i in pairs(rings_settings) do
            draw_ring(rings_settings[i])
        end
    end

    cairo_destroy(cr)

end




function draw_ring(t)

    local function rgba_to_r_g_b_a(tcolour)
        colour,alpha=tcolour[2],tcolour[3]
        return ((colour / 0x10000) % 0x100) / 255., 
            ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
    end
            
            
    local function calc_delta(tcol1,tcol2)
        --calculate deltas P R G B A to table_colour 1

        for x = 1, #tcol1 do
            tcol1[x].dA    = 0
            tcol1[x].dP = 0
             tcol1[x].dR = 0
            tcol1[x].dG = 0
            tcol1[x].dB = 0
            if tcol2~=nil and #tcol1 == #tcol2 then
                local r1,g1,b1,a1 = rgba_to_r_g_b_a(tcol1[x])
                local r2,g2,b2,a2 = rgba_to_r_g_b_a(tcol2[x])
                tcol1[x].dP = (tcol2[x][1]-tcol1[x][1])/t.sectors
                 tcol1[x].dR = (r2-r1)/t.sectors
                tcol1[x].dG = (g2-g1)/t.sectors
                tcol1[x].dB = (b2-b1)/t.sectors
                tcol1[x].dA = (a2-a1)/t.sectors        
                
            end
        end
        
        return tcol1
    end

    --check values
    local function setup(t)
        if t.name==nil and t.arg==nil then 
            print ("No input values ... use parameters 'name' with 'arg' or only parameter 'arg' ") 
            return
        end

        if t.max==nil then
            print ("No maximum value defined, use 'max'")
            print ("for name=" .. t.name)
            print ("with arg=" .. t.arg)
            return
        end
        if t.name==nil then t.name="" end
        if t.arg==nil then t.arg="" end

        if t.xc==nil then t.xc=conky_window.width/2 end
        if t.yc==nil then t.yc=conky_window.height/2 end
        if t.thickness ==nil then t.thickness = 10 end
        if t.radius ==nil then t.radius =conky_window.width/4 end
        if t.start_angle==nil then t.start_angle =0 end
        if t.end_angle==nil then t.end_angle=360 end
        if t.bg_colour1==nil then 
            t.bg_colour1={{0,0x00ffff,0.1},{0.5,0x00FFFF,0.5},{1,0x00FFFF,0.1}}
        end
        if t.fg_colour1==nil then
            t.fg_colour1={{0,0x00FF00,0.1},{0.5,0x00FF00,1},{1,0x00FF00,0.1}}
        end
        if t.bd_colour1==nil then
            t.bd_colour1={{0,0xFFFF00,0.5},{0.5,0xFFFF00,1},{1,0xFFFF00,0.5}}
        end
        if t.sectors==nil then t.sectors=10 end
        if t.gap_sectors==nil then t.gap_sectors=1 end 
        if t.fill_sector==nil then t.fill_sector=false end
        if t.sectors==1 then t.fill_sector=false end
        if t.border_size==nil then t.border_size=0 end
        if t.cap==nil then t.cap="p" end
        --some checks
        if t.thickness>t.radius then t.thickness=t.radius*0.1 end
        t.int_radius = t.radius-t.thickness

        --check colors tables 
        for i=1, #t.bg_colour1 do 
            if #t.bg_colour1[i]~=3 then t.bg_colour1[i]={1,0xFFFFFF,0.5} end
        end
        for i=1, #t.fg_colour1 do 
            if #t.fg_colour1[i]~=3 then t.fg_colour1[i]={1,0xFF0000,1} end
        end
        for i=1, #t.bd_colour1 do 
            if #t.bd_colour1[i]~=3 then t.bd_colour1[i]={1,0xFFFF00,1} end
        end
    
        if t.bg_colour2~=nil then
            for i=1, #t.bg_colour2 do 
                if #t.bg_colour2[i]~=3 then t.bg_colour2[i]={1,0xFFFFFF,0.5} end
            end
        end
        if t.fg_colour2~=nil then
            for i=1, #t.fg_colour2 do 
                if #t.fg_colour2[i]~=3 then t.fg_colour2[i]={1,0xFF0000,1} end
            end
        end
        if t.bd_colour2~=nil then
            for i=1, #t.bd_colour2 do 
                if #t.bd_colour2[i]~=3 then t.bd_colour2[i]={1,0xFFFF00,1} end
            end
        end     
        
        if t.start_angle>=t.end_angle then
         local tmp_angle=t.end_angle
         t.end_angle= t.start_angle
         t.start_angle = tmp_angle
         -- print ("inversed angles")
            if t.end_angle-t.start_angle>360 and t.start_angle>0 then
                t.end_angle=360+t.start_angle
                print ("reduce angles")
            end
        
            if t.end_angle+t.start_angle>360 and t.start_angle<=0 then
                t.end_angle=360+t.start_angle
                print ("reduce angles")
            end
        
            if t.int_radius<0 then t.int_radius =0 end
            if t.int_radius>t.radius then
                local tmp_radius=t.radius
                t.radius=t.int_radius
                t.int_radius=tmp_radius
                print ("inversed radius")
            end
            if t.int_radius==t.radius then
                t.int_radius=0
                print ("int radius set to 0")
            end 
        end
        
        t.fg_colour1 = calc_delta(t.fg_colour1,t.fg_colour2)
        t.bg_colour1 = calc_delta(t.bg_colour1,t.bg_colour2)
        t.bd_colour1 = calc_delta(t.bd_colour1,t.bd_colour2)
    end
    
    --initialize table
    setup(t)
    --[[grid
    h=conky_window.height
    w=conky_window.width
    cairo_set_source_rgba(cr,1,1,1,1)
    cairo_set_line_width(cr,0.5)
    cairo_move_to(cr,0,t.yc)
    cairo_line_to(cr,w,t.yc)
    cairo_stroke(cr)
    cairo_move_to(cr,t.xc,0)
    cairo_line_to(cr,t.xc,h)
    cairo_stroke(cr)
    cairo_move_to(cr,t.xc,t.yc)
    cairo_line_to(cr,t.xc+200*math.sin(math.pi/4),t.yc-200*math.cos(math.pi/4))
    cairo_stroke(cr)
    cairo_move_to(cr,0,t.yc-t.radius)
    cairo_line_to(cr,w,t.yc-t.radius)
    cairo_stroke(cr)
    cairo_move_to(cr,0,t.yc-t.int_radius)
    cairo_line_to(cr,w,t.yc-t.int_radius)
    cairo_stroke(cr)
    cairo_move_to(cr,0,t.yc-t.gap_sectors)
    cairo_line_to(cr,w,t.yc-t.gap_sectors)
    cairo_stroke(cr)
    cairo_set_source_rgba(cr,1,0,0,0.5)
    cairo_arc(cr,t.xc,t.yc,t.radius,0,2*math.pi)
    cairo_stroke(cr)
    cairo_arc(cr,t.xc,t.yc,t.int_radius,0,2*math.pi)    
    cairo_stroke(cr)    
    cairo_set_source_rgba(cr,0,1,0,1)    
    cairo_move_to(cr,t.xc+t.gap_sectors,t.yc-t.gap_sectors)
    cairo_line_to(cr,t.xc+400*math.sin(math.pi/4),t.yc-400*math.cos(math.pi/4))
    cairo_stroke(cr)
    --END GRID
    ]]
    
    --initialize cairo context
    cairo_save(cr)
    cairo_translate(cr,t.xc,t.yc)
    cairo_set_line_join (cr, CAIRO_LINE_JOIN_ROUND)
    cairo_set_line_cap (cr, CAIRO_LINE_CAP_ROUND)

    --get value
    local value = 0
    if t.name ~="" then
        value = tonumber(conky_parse(string.format('${%s %s}',t.name,t.arg)))
    else
        value = tonumber(BAT0)
    end
    if value==nil then value =0 end

    --initialize sectors
    --angle of a sector :
    angleA = ((t.end_angle-t.start_angle)/t.sectors)*math.pi/180
    --value of a sector : 
    valueA = t.max/t.sectors
    --first angle of a sector : 
    lastAngle = t.start_angle*math.pi/180


    local function draw_sector(type_arc,angle0,angle,valpc, idx)
     
        --this function draws a portion of arc
         --type of arc, angle0 = strating angle, angle= angle of sector,
         --valpc = percentage inside the sector, idx = sctor number #
         if type_arc=="bg" then         --background
             if valpc==1 then return end
             tcolor=t.bg_colour1
         elseif type_arc=="fg" then    --foreground
             if valpc==0 then return end
             tcolor=t.fg_colour1
         elseif type_arc=="bd" then    --border
             tcolor=t.bd_colour1
         end 

        --angles equivalents to gap_sector
        local ext_delta=math.atan(t.gap_sectors/(2*t.radius))
        local int_delta=math.atan(t.gap_sectors/(2*t.int_radius))

        --angles of arcs
        local ext_angle=(angle-ext_delta*2)*valpc
        local int_angle=(angle-int_delta*2)*valpc

        --define colours to use for this sector
        if #tcolor==1 then 
            --plain color
            local vR,vG,vB,vA = rgba_to_r_g_b_a(tcolor[1])
            cairo_set_source_rgba(cr,vR+tcolor[1].dR*idx,
                                    vG+tcolor[1].dG*idx,
                                    vB+tcolor[1].dB*idx,
                                    vA+tcolor[1].dA*idx    )
        else
            --radient color
            local pat=cairo_pattern_create_radial(0,0,t.int_radius,0,0,t.radius)
            for i=1, #tcolor do
                local vP,vR,vG,vB,vA = tcolor[i][1], rgba_to_r_g_b_a(tcolor[i])
                cairo_pattern_add_color_stop_rgba (pat, 
                                    vP+tcolor[i].dP*idx,
                                    vR+tcolor[i].dR*idx,
                                    vG+tcolor[i].dG*idx,
                                    vB+tcolor[i].dB*idx,
                                    vA+tcolor[i].dA*idx    )
            end
            cairo_set_source (cr, pat)
            cairo_pattern_destroy(pat)
        end

        --start drawing
         cairo_save(cr)
        --x axis is parrallel to start of sector
        cairo_rotate(cr,angle0-math.pi/2)

        local ri,re = t.int_radius ,t.radius

        --point A 
        local angle_a
    
        if t.cap == "p" then 
            angle_a = int_delta
            if t.inverse_arc and type_arc ~="bg" then
                angle_a = angle-int_angle-int_delta
            end
            if not(t.inverse_arc) and type_arc =="bg" then
                angle_a = int_delta+int_angle
            end
        else --t.cap=="r"
            angle_a = ext_delta
            if t.inverse_arc and type_arc~="bg" then
                angle_a = angle-ext_angle-ext_delta
            end
            if not(t.inverse_arc) and type_arc=="bg" then
                angle_a = ext_delta+ext_angle
            end
        end
        local ax,ay = ri*math.cos(angle_a),ri*math.sin(angle_a)


        --point B
        local angle_b = ext_delta
        if t.cap == "p" then 
            if t.inverse_arc and type_arc ~="bg" then
                angle_b = angle-ext_angle-ext_delta
            end
            if not(t.inverse_arc) and type_arc=="bg" then
                angle_b = ext_delta+ext_angle
            end
        else
            if t.inverse_arc and type_arc ~="bg" then
                angle_b = angle-ext_angle-ext_delta
            end
            if not(t.inverse_arc) and type_arc=="bg" then
                angle_b = ext_delta+ext_angle
            end
        end
        local bx,by = re*math.cos(angle_b),re*math.sin(angle_b)

        -- EXTERNAL ARC B --> C
        if t.inverse_arc then
            if type_arc=="bg" then
                b0,b1= ext_delta, angle-ext_delta-ext_angle
            else
                b0,b1= angle-ext_angle-ext_delta, angle-ext_delta
            end
        else
            if type_arc=="bg" then
                b0,b1= ext_delta+ext_angle, angle-ext_delta
            else
                b0,b1= ext_delta, ext_angle+ext_delta
            end
        end
        
        ---POINT D
        local angle_c 
        if t.cap == "p" then 
            angle_d = angle-int_delta
            if t.inverse_arc and type_arc=="bg" then
                angle_d = angle-int_delta-int_angle    
            end
            if not(t.inverse_arc) and type_arc~="bg" then
                angle_d=int_delta+int_angle
            end
        else
            angle_d = angle-ext_delta
            if t.inverse_arc and type_arc=="bg" then
                angle_d =angle-ext_delta-ext_angle
            end
            if not(t.inverse_arc) and type_arc~="bg" then
                angle_d = ext_angle+ext_delta
            end
        end
        local dx,dy = ri*math.cos(angle_d),ri*math.sin(angle_d)
        
        -- INTERNAL ARC D --> A
        if t.cap=="p" then    
            if t.inverse_arc then    
                if type_arc=="bg" then
                    d0,d1= angle-int_delta-int_angle,int_delta
                else
                    d0,d1= angle-int_delta, angle- int_angle-int_delta
                end
            else
                if type_arc=="bg" then
                    d0,d1= angle-int_delta, int_delta+int_angle
                else
                    d0,d1= int_delta+int_angle, int_delta
                end
            end
        else
            if t.inverse_arc then    
                if type_arc=="bg" then    
                    d0,d1= angle-ext_delta-ext_angle,ext_delta
                else
                    d0,d1= angle-ext_delta, angle- ext_angle-ext_delta
                end
            else
                if type_arc=="bg" then    
                    d0,d1= angle-ext_delta,ext_delta+ext_angle
                else    
                    d0,d1= ext_angle+ext_delta, ext_delta
                end
            end            
        end
            
        --draw sector
        cairo_move_to(cr,ax,ay)
        cairo_line_to(cr,bx,by)
        cairo_arc(cr,0,0,re,b0,b1)
        cairo_line_to(cr,dx,dy) 
        cairo_arc_negative(cr,0,0,ri,d0,d1)
         cairo_close_path (cr);

        --stroke or fill sector
         if type_arc=="bd" then
             cairo_set_line_width(cr,t.border_size)
             cairo_stroke(cr)
         else
             cairo_fill(cr)
         end

         cairo_restore(cr)

     end
    --draw sectors
    local n0,n1,n2 = 1,t.sectors,1
    if t.inverse_arc then n0,n1,n2 = t.sectors,1,-1 end
    local index = 0
    for i = n0,n1,n2 do 
        index = index +1
        local valueZ=1
        local cstA, cstB = (i-1),i
        if t.inverse_arc then cstA,cstB = (t.sectors-i), (t.sectors-i+1) end
        
        if value>valueA *cstA and value<valueA*cstB then
            if not t.fill_sector then
                valueZ = (value-valueA*cstA)/valueA
            end
        else
            if value<valueA*cstB then valueZ=0 end
        end
        
        local start_angle= lastAngle+(i-1)*angleA
        if t.foreground ~= false then 
            draw_sector("fg",start_angle,angleA,valueZ, index)
        end
        if t.background ~= false then 
            draw_sector("bg",start_angle,angleA,valueZ, i)
        end
        if t.border_size>0 then draw_sector("bd",start_angle,angleA,1, i) end
    end

    cairo_restore(cr)
end


--[[END OF RING-SECTORS WIDGET]]

--Je ne sais pas a quoi sert cette fonction, mais elle a toujours été là, donc je la laisse par précaution.

function axis(ctx,alpha)
    cairo_set_line_width(ctx,1)
    cairo_set_source_rgba(ctx,1,0,0,alpha)
    cairo_move_to(ctx,0,0)
    cairo_line_to(ctx,150,0)
    cairo_stroke(ctx)
    cairo_set_source_rgba(ctx,0,1,0,alpha)
    cairo_move_to(ctx,0,0)
    cairo_line_to(ctx,0,150)
    cairo_stroke(ctx)
end

.conkyrc (cpu et ram en haut a gauche)

# 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_left
maximum_width 300

# écart avec le bord x=gauche ou droit y= haut ou bas
gap_x 10
gap_y -20

#  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

#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 Nimbus Sans :size=7
# 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 616161 #blanc

# -- Lua Load -- #
lua_load ~/.conky/rond
lua_draw_hook_pre ring_stats
 
TEXT

${color 18FFF9}${offset 5}${voffset 20}C1: ${cpu cpu1} %
${color 18FFF9}${offset 5}C2: ${cpu cpu2} %
${color 8288BD}${offset 5}RAM : $memperc %  

${color FF0000}${offset 100}${voffset -60}${voffset 0}CPU
${offset 100}${hwmon 0 temp 1}C° ${color}

${voffset 100}

le lua qui va avec:

rond

--[[
Ring Meters by londonali1010 (2009)
 
This script draws percentage meters as rings. It is fully customisable; all options are described in the script.
 
IMPORTANT: if you are using the 'cpu' function, it will cause a segmentation fault if it tries to draw a ring straight away. The if statement on line 145 uses a delay to make sure that this doesn't happen. It calculates the length of the delay by the number of updates since Conky started. Generally, a value of 5s is long enough, so if you update Conky every 1s, use update_num > 5 in that if statement (the default). If you only update Conky every 2s, you should change it to update_num > 3; conversely if you update Conky every 0.5s, you should use update_num > 10. ALSO, if you change your Conky, is it best to use "killall conky; conky" to update it, otherwise the update_num will not be reset and you will get an error.
 
To call this script in Conky, use the following (assuming that you save this script to ~/scripts/rings.lua):
    lua_load ~/scripts/rings-v1.2.1.lua
    lua_draw_hook_pre ring_stats
 
Changelog:
+ v1.2.1 -- Fixed minor bug that caused script to crash if conky_parse() returns a nil value (20.10.2009)
+ v1.2 -- Added option for the ending angle of the rings (07.10.2009)
+ v1.1 -- Added options for the starting angle of the rings, and added the "max" variable, to allow for variables that output a numerical value rather than a percentage (29.09.2009)
+ v1.0 -- Original release (28.09.2009)
]]
 
settings_table = {
    {
        name='cpu',
        arg='cpu1',
        max=100,
        bg_colour=0x616161,
        bg_alpha=0.1,
        fg_colour=0x003078,
        fg_alpha=0.5,
        x=0, y=28,
        radius=70,
        thickness=6,
        start_angle=90,
        end_angle=180
    },
    {
        name='cpu',
        arg='cpu2',
        max=100,
        bg_colour=0x616161,
        bg_alpha=0.1,
        fg_colour=0x003078,
        fg_alpha=0.5,
        x=0, y=28,
        radius=78,
        thickness=6,
        start_angle=90,
        end_angle=180
    },
    {
        name='memperc',
        arg='',
        max=100,
        bg_colour=0x616161,
        bg_alpha=0.1,
        fg_colour=0x8288BD,
        fg_alpha=0.51,
        x=0, y=28,
        radius=95,
        thickness=9,
        start_angle=90,
        end_angle=180
    },
    { 
        name='hwmon',
        arg='0 temp 1',
        max=95,
        bg_colour=0x616161,
        bg_alpha=0.05,
        fg_colour=0xFF0000,
        fg_alpha=0.3,
        x=0, y=28,
        radius=120,
        thickness=10,
        start_angle=100,
        end_angle=150
    },
} 
require 'cairo'
 
function rgb_to_r_g_b(colour,alpha)
    return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end
 
function draw_ring(cr,t,pt)
    local w,h=conky_window.width,conky_window.height
 
    local xc,yc,ring_r,ring_w,sa,ea=pt['x'],pt['y'],pt['radius'],pt['thickness'],pt['start_angle'],pt['end_angle']
    local bgc, bga, fgc, fga=pt['bg_colour'], pt['bg_alpha'], pt['fg_colour'], pt['fg_alpha']
 
    local angle_0=sa*(2*math.pi/360)-math.pi/2
    local angle_f=ea*(2*math.pi/360)-math.pi/2
    local t_arc=t*(angle_f-angle_0)
 
    -- Draw background ring
 
    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_f)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(bgc,bga))
    cairo_set_line_width(cr,ring_w)
    cairo_stroke(cr)
 
    -- Draw indicator ring
 
    cairo_arc(cr,xc,yc,ring_r,angle_0,angle_0+t_arc)
    cairo_set_source_rgba(cr,rgb_to_r_g_b(fgc,fga))
    cairo_stroke(cr)        
end
 
function conky_ring_stats()
    local function setup_rings(cr,pt)
        local str=''
        local value=0
 
        str=string.format('${%s %s}',pt['name'],pt['arg'])
        str=conky_parse(str)
 
        value=tonumber(str)
        if value == nil then value = 0 end
        pct=value/pt['max']
 
        draw_ring(cr,pct,pt)
    end
 
    if conky_window==nil then return end
    local cs=cairo_xlib_surface_create(conky_window.display,conky_window.drawable,conky_window.visual, conky_window.width,conky_window.height)
 
    local cr=cairo_create(cs)    
 
    local updates=conky_parse('${updates}')
    update_num=tonumber(updates)
 
    if update_num>5 then
        for i in pairs(settings_table) do
            setup_rings(cr,settings_table[i])
        end
    end
end

.conkyrc2 (le petit en haut a droite)

# set to yes if you want Conky to be forked in the background
background yes

cpu_avg_samples 2
net_avg_samples 2

out_to_console no

# Use Xft?
use_xft yes

# Xft font when Xft is enabled
xftfont Nimbus Sans L:size=8

# Text alpha when using Xft
xftalpha 0.8

# on_bottom yes

# mail spool
mail_spool $MAIL

# Update interval in seconds
update_interval 1

own_window yes # définir sa propre fenêtre
# own_window_colour black
own_window_hints undecorated
own_window_hints sticky
own_window_hints skip_taskbar
own_window_hints skip_pager
own_window_hints below
own_window_type override #type de fenêtre override, normal ou desktop
own_window_transparent yes #pseudo transparence
# own_window_argb_visual yes
# own_window_argb_value 125

# Use double buffering (CC2929uces flicker, may not work for everyone)
double_buffer yes

# Draw shades?
draw_shades no

# Draw outlines?
draw_outline no

# Draw borders around text
draw_borders no
draw_graph_borders no

# Stippled borders?
stippled_borders 10

# border margins
border_margin 1

# border width
border_width 1

# Paramétrage des couleurs
default_color 616161                # couleur par défaut du texte
default_shade_color ffffff            # couleur par défaut de l'ombre
default_outline_color ffffff            # couleur par défaut du contour
color0 949494                          # Titre
color1 616161                    # Texte
color2 CC2929                    # valeur > 80
color3 CC6D29                    # 50 <= Valeur < 80
color4 008000                    # 20 <= valeur < 50
color5 2d7db3                    # DL
color6 844796                    # UL
default_shade_color white
default_outline_color white

# Text alignment, other possible values are commented
alignment top_right
#minimum_size 10 10
gap_x 10
gap_y 5
#alignment top_right
#alignment bottom_left
#alignment bottom_right

# Gap between borders of screen and text

# Add spaces to keep things from moving about?  This only affects certain objects.
use_spacer none

# Subtract file system buffers from used memory?
no_buffers yes

# set to yes if you want all text to be in uppercase
uppercase no

maximum_width 100

TEXT
${font Nimbus Sans L:style=Bold:size=9}${color 949494}Internet ${hr }
${if_existing /proc/net/route wlan0}${font Nimbus Sans L:size=8}${color 616161}Wifi : ${alignr}${wireless_essid wlan0}
${font Nimbus Sans L:size=8}${color 616161}Quality : ${alignr}${wireless_link_qual_perc wlan0}%
${else}${font Nimbus Sans L:size=8}${color 616161}Wifi déconnecté${endif}

${font Nimbus Sans L:style=Bold:size=8}${color 949494}Espaces ${hr }
${font Nimbus Sans L:size=8}${color 616161}Racine ${alignr}${if_match ${fs_used_perc /} >= 80}${color CC2929}${fs_used_perc /}%${else}${if_match ${fs_used_perc /} >= 50}${color CC6D29}${fs_used_perc /}%${else}${if_match ${fs_used_perc /} >= 20}${color 008000}${fs_used_perc /}%${else}${color 616161}${fs_used_perc /}%${endif}${endif}${endif}${color}
${font Nimbus Sans L:size=8}Home ${alignr}${if_match ${fs_used_perc /home/gorg/gorg} >= 80}${color CC2929}${fs_used_perc /home/gorg/gorg}%${else}${if_match ${fs_used_perc /home/gorg/gorg} >= 50}${color CC6D29}${fs_used_perc /home/gorg/gorg}%${else}${if_match ${fs_used_perc /home/gorg/gorg} >= 20}${color 008000}${fs_used_perc /home/gorg/gorg}%${else}${color 616161}${fs_used_perc /home/gorg/gorg}%${endif}${endif}${endif}${color}

.conkyrc3 (celui avec les processus)

alignment top_left
background yes
border_width 1
cpu_avg_samples 2
double buffer yes
default_color blue
default_outline_color white
default_shade_color white
draw_borders no
draw_graph_borders yes
draw_outline no
draw_shades no
use_xft yes
xftfont Nimbus Sans :size=8
gap_x 0
gap_y 0
net_avg_samples 2
out_to_console no
out_to_stderr no
extra_newline no
own_window yes
own_window_class Conky
own_window_type override
own_window_transparent yes
stippled_borders 0
update_interval 1.0
uppercase no
use_spacer none
show_graph_scale yes
show_graph_range no

# Paramétrage des couleurs
default_color 616161                # couleur par défaut du texte
default_shade_color ffffff            # couleur par défaut de l'ombre
default_outline_color ffffff            # couleur par défaut du contour
color0 949494                          # Titre
color1 616161                    # Texte
color2 CC2929                    # Température et valeur > 80
color3 CC6D29                    # 50 <= Valeur < 80
color4 008000                    # 20 <= valeur < 50
color5 2d7db3                    # DL
color6 844796                    # UL
default_shade_color white
default_outline_color white

# Text alignment, other possible values are commented
alignment top_right
#minimum_size 10 10
gap_x 10
gap_y 300

#alignment top_right
#alignment bottom_left
#alignment bottom_right
TEXT


${color 949494}${font Nimbus Sans L:style=Bold:size 8}Processus${color white}${hr }
${color 949494}${font Deja Vu Sans Mono:size=7}Process : $processes
${color 949494}${font Deja Vu Sans Mono:size=7}Running : $running_processes
${font Deja Vu Sans Mono:size=7}${color 616161}Name               CPU%   MEM%
${color lightgrey} ${top name 1} ${top cpu 1} ${top mem 1}
${color lightgrey} ${top name 2} ${top cpu 2} ${top mem 2}
${color lightgrey} ${top name 3} ${top cpu 3} ${top mem 3}
${color lightgrey} ${top name 4} ${top cpu 4} ${top mem 4}
${color lightgrey} ${top name 5} ${top cpu 5} ${top mem 5}
${color lightgrey} ${top name 6} ${top cpu 6} ${top mem 6}
${color lightgrey} ${top name 7} ${top cpu 7} ${top mem 7}
${color lightgrey} ${top name 8} ${top cpu 8} ${top mem 8}

Hors ligne

#1107 Le 25/10/2011, à 13:28

fanou18000

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

Tux POOOWWWEEERRR  ^^


"C'est en faisant des erreurs qu'on avance..."
                             Donc ici pour apprendre.
            Ubuntu 10.04 Lucid Lynx et GNOME 2.30.2       (Depuis le 14/12/09)

Hors ligne

#1108 Le 26/10/2011, à 14:04

Didier-T

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

Bonjour à tous,

J’étais chagriné par l’annonce de weather.com concernant leur prochain passage en service payant sad (tous comme Phyllinux)

donc après maintes recherche voici une solution (infos météo sur 8 jours). smile

le script d'origine est emprunté a TeoBigusGeekus du forum anglais de ubuntu vous le trouverez ici avec d'autres scripts (il est très actif)

Une petite capture :
1319632759.png

Le conkyrc

# 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
imlib_cache_size 0

# 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 4

# taille et positon
alignment tm
minimum_size 320 320
maximum_width 700

# écart avec le bord x=gauche ou droit y= haut ou bas
gap_x 0
gap_y 40

#  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
#own_window_hints undecorated,below,skip_taskbar,skip_pager

# 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 Comic sans MS:size=8
xftalpha 0.8
# 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

# Taille de la jauge par défault
default_gauge_size 0 10

# Couleurs
default_color FFFFFF #blanc
default_shade_color 333333
default_outline_color black

color1 e49c16 
color2 CA0000 #rouge
color3 FFFFFF
color6 EEEEEE
color7 DDDDDD
color8 CCCCCC
color9 BBBBBB

TEXT
${color red}${font Bitstream Vera Sans Mono:style=Bold:size=14}Météo ${hr 2}${font}
${color green}${font Comic sans MS:style=Bold:size=14}Maintenant
${execpi 1800 ~/conky/script/wunderground-script.sh}${execpi 1800 ~/conky/script/formatage-icones-meteo.sh} # Récuperation et formatage des infos météo
${image ~/conky/meteo/images/conky/j1.png -p 0,50 -s 90x90}
${color light grey}${font Bitstream Vera Sans Mono:style=Bold:size=14}${voffset -15}${offset 100}${execi 1800 sed -n '2p' ~/conky/meteo/messages.wun}
${offset 100}Température ${execi 1800 sed -n '3p' ~/conky/meteo/messages.wun}
${offset 130}${voffset 5}${execi 1800 sed -n '4p' ~/conky/meteo/messages.wun}
${image ~/conky/meteo/images/conky/v1.png -p 100,100 -s 30x30}
${color green}${font Comic sans MS:style=Bold:size=14}${execi 1800 sed -n '5p' ~/conky/meteo/messages.wun}
${image ~/conky/meteo/images/conky/j2.png -p 0,178 -s 90x90}
${color light grey}${font Bitstream Vera Sans Mono:style=Bold:size=14}${voffset -15}${offset 100}${execi 1800 sed -n '6p' ~/conky/meteo/messages.wun}
${offset 100}Température ${execi 1800 sed -n '7p' ~/conky/meteo/messages.wun}
${offset 130}${voffset 5}${execi 1800 sed -n '8p' ~/conky/meteo/messages.wun}
${image ~/conky/meteo/images/conky/v2.png -p 100,228 -s 30x30}

le script modifier (nommé wunderground-script.sh)

#!/bin/bash

#function: test_weather_message
test_weather_message () {
  if [[ $1 == "Chance of Flurries" || $1 == Flurries ]]; then
      echo p
    elif [[ $1 == "Chance of Rain" ]]; then
      echo h
    elif [[ $1 == "Chance of Freezing Rain" || $1 == "Light Freezing Rain" || $1 == "Freezing Rain" ]]; then
      echo v
    elif [[ $1 == "Chance of Sleet" || $1 == Sleet ]]; then
      echo w
    elif [[ $1 == "Chance of Snow" ]]; then
      echo q 
    elif [[ $1 ==  "Chance of Thunderstorms" || $1 == Thunderstorms || $1 == Thunderstorm ]]; then
      echo n
    elif [[ $1 ==  "Chance of a Thunderstorm" ]]; then
      echo m
    elif [[ $1 ==  Clear || $1 == Sunny ]]; then
      echo a
    elif [[ $1 ==  Cloudy ]]; then
      echo d
    elif [[ $1 ==  Fog || $1 == Haze ]]; then
      echo 0
    elif [[ $1 ==  "Mostly Cloudy" || $1 == "Partly Cloudy" || $1 == "Partly Sunny" ]]; then
      echo c
    elif [[ $1 ==  "Mostly Sunny" || $1 == "Scattered Clouds" ]]; then
      echo b
    elif [[ $1 ==  Rain ]]; then
      echo i
    elif [[ $1 ==  Snow ]]; then
      echo r
    elif [[ $1 ==  Overcast ]]; then
      echo e
    else echo -
  fi    
} 

#function: test_weather_message_night
test_weather_message_night () {
  if [[ $1 == "Chance of Flurries" || $1 == Flurries || $1 == "Chance of Snow" || $1 ==  Snow ]]; then
      echo O
    elif [[ $1 == "Chance of Rain" || $1 == "Chance of Freezing Rain" || $1 == "Light Freezing Rain" || $1 == "Freezing Rain" || $1 == "Chance of Sleet" || $1 == Sleet || $1 ==  Rain ]]; then
      echo G
    elif [[ $1 ==  "Chance of Thunderstorms" || $1 == Thunderstorms || $1 == Thunderstorm ]]; then
      echo K
    elif [[ $1 ==  "Chance of a Thunderstorm" ]]; then
      echo m
    elif [[ $1 ==  Clear || $1 == Sunny ]]; then
      echo A
    elif [[ $1 ==  Cloudy ]]; then
      echo D
    elif [[ $1 ==  Fog || $1 == Haze ]]; then
      echo 0
    elif [[ $1 ==  "Mostly Cloudy" || $1 == "Partly Cloudy" || $1 == "Partly Sunny" ]]; then
      echo C
    elif [[ $1 ==  "Mostly Sunny" || $1 == "Scattered Clouds" ]]; then
      echo B
    elif [[ $1 ==  Overcast ]]; then
      echo D
    else echo -
  fi    
} 

#function: test_wind_message
test_wind_message () {
  if [[ $1 == Sou ]]; then
      echo 1
    elif [[ $1 == SSW ]]; then
      echo 2
    elif [[ $1 == "SW " ]]; then
      echo 3
    elif [[ $1 == WSW || $1 == Sleet ]]; then
      echo 4
    elif [[ $1 == Wes ]]; then
      echo 5 
    elif [[ $1 ==  WNW ]]; then
      echo 6
    elif [[ $1 ==  "NW " ]]; then
      echo 7
    elif [[ $1 ==  NNW ]]; then
      echo 8
    elif [[ $1 ==  Nor ]]; then
      echo 9
    elif [[ $1 ==  NNE ]]; then
      echo ":"
    elif [[ $1 ==  "NE " ]]; then
      echo ";"
    elif [[ $1 ==  ENE ]]; then
      echo "<"
    elif [[ $1 ==  Eas ]]; then
      echo "="
    elif [[ $1 ==  ESE ]]; then
      echo ">"
    elif [[ $1 ==  "SE " ]]; then
      echo "?"
    elif [[ $1 ==  SSE ]]; then
      echo "@"
    else echo "-"
  fi    
} 

rm ~/conky/meteo/yes
rm ~/conky/meteo/weather_icons
wget -O ~/conky/meteo/ics http://ical.wunderground.com/auto/ical/global/stations/07150.ics?units=metric
egrep -i 'DESCRIPTION' ~/conky/meteo/ics > ~/conky/meteo/messages.wun
sed -i 's/\\n/\n/g' ~/conky/meteo/messages.wun
sed -i 's/DESCRIPTION://g' ~/conky/meteo/messages.wun
sed -i 's/ - /\n/g' ~/conky/meteo/messages.wun
sed -i 's/High/\nHigh/g' ~/conky/meteo/messages.wun
sed -i 's/Low/\nLow/g' ~/conky/meteo/messages.wun
sed -i 's/Wind /\n/g' ~/conky/meteo/messages.wun
sed -i 's/.Chance/\./g' ~/conky/meteo/messages.wun
sed -i 's/\..*//g' ~/conky/meteo/messages.wun

for (( i=2; i<=100; i+=8 ))
  do
   test_line=$(sed -n "${i}p" ~/conky/meteo/messages.wun)
   if [[ $test_line == "" ]]; then
     break
   fi
   test_weather_message "$test_line" >> ~/conky/meteo/weather_icons
   j=$((i+2))
   test_line=$(sed -n "${j}p" ~/conky/meteo/messages.wun|cut -c1-3)
   if [[ $test_line == "" ]]; then
     break
   fi
   test_wind_message "$test_line" >> ~/conky/meteo/weather_icons
   j=$((i+4))
   test_line=$(sed -n "${j}p" ~/conky/meteo/messages.wun)
   if [[ $test_line == "" ]]; then
     break
   fi
   test_weather_message_night "$test_line" >> ~/conky/meteo/weather_icons
   j=$((i+6))
   test_line=$(sed -n "${j}p" ~/conky/meteo/messages.wun|cut -c1-3)
   if [[ $test_line == "" ]]; then
     break
   fi
   test_wind_message "$test_line" >> ~/conky/meteo/weather_icons
  done
days_no=$(($(cat ~/conky/meteo/weather_icons|wc -l)/4))
if [[ $days_no == 8 ]]; then
   touch ~/conky/meteo/yes
fi

# Traduction en francais
sed -i 's/Scattered Clouds/\Nuages épars/g' ~/conky/meteo/messages.wun
sed -i 's/Chance of Flurries/\Quelques averses de neige/g' ~/conky/meteo/messages.wun
sed -i 's/Chance of Rain/\Risques de pluie/g' ~/conky/meteo/messages.wun
sed -i 's/Chance of Snow/\Risques de neige/g' ~/conky/meteo/messages.wun
sed -i 's/Chance of Freezing Rain/\Risque de pluie verglaçante/g' ~/conky/meteo/messages.wun
sed -i 's/Light Freezing Rain/\Faible pluie verglaçante/g' ~/conky/meteo/messages.wun
sed -i 's/Freezing Rain/\Pluie verglaçante/g' ~/conky/meteo/messages.wun
sed -i 's/Chance of Sleet/\Risque de verglas/g' ~/conky/meteo/messages.wun
sed -i "s/Chance of Thunderstorms/\Risque d'orages/g" ~/conky/meteo/messages.wun
sed -i "s/Chance of a Thunderstorm/\Risque d'orage/g" ~/conky/meteo/messages.wun
sed -i 's/Mostly Cloudy/\Partiellement nuageux/g' ~/conky/meteo/messages.wun
sed -i 's/Partly Cloudy/\Partiellement nuageux/g' ~/conky/meteo/messages.wun
sed -i 's/Partly Sunny/\Partiellement ensoleillé/g' ~/conky/meteo/messages.wun
sed -i 's/Mostly Sunny/\Partiellement ensoleillé/g' ~/conky/meteo/messages.wun
sed -i 's/Scattered Clouds/\Nuages épars/g' ~/conky/meteo/messages.wun
sed -i 's/Overcast/\Couvert/g' ~/conky/meteo/messages.wun
sed -i 's/Snow/\Neige/g' ~/conky/meteo/messages.wun
sed -i 's/Flurries/\Averses de neige/g' ~/conky/meteo/messages.wun
sed -i "s/Clear/\.Ensoleillé/g" ~/conky/meteo/messages.wun
sed -i "s/Sunny/\.Ensoleillé/g" ~/conky/meteo/messages.wun
sed -i 's/Cloudy/\Nuageux/g' ~/conky/meteo/messages.wun
sed -i 's/Fog/\Brouillard/g' ~/conky/meteo/messages.wun
sed -i 's/Haze/\Brume/g' ~/conky/meteo/messages.wun
sed -i 's/Thunderstorms/\Orages/g' ~/conky/meteo/messages.wun
sed -i 's/Thunderstorm/\Orage/g' ~/conky/meteo/messages.wun
sed -i 's/Sleet/\Verglas/g' ~/conky/meteo/messages.wun
sed -i 's/ C/\ °C/g' ~/conky/meteo/messages.wun
sed -i 's/Low/\Mini/g' ~/conky/meteo/messages.wun
sed -i 's/High/\Maxi/g' ~/conky/meteo/messages.wun
sed -i 's/Night/\Soir/g' ~/conky/meteo/messages.wun
sed -i 's/Monday/\.Lundi/g' ~/conky/meteo/messages.wun
sed -i "s/Tuesday/\Mardi/g" ~/conky/meteo/messages.wun
sed -i 's/Wednesday/\Mercredi/g' ~/conky/meteo/messages.wun
sed -i 's/Thursday/\Jeudi/g' ~/conky/meteo/messages.wun
sed -i 's/Friday/\Vendredi/g' ~/conky/meteo/messages.wun
sed -i 's/Saturday/\Samedi/g' ~/conky/meteo/messages.wun
sed -i 's/Sunday/\Dimanche/g' ~/conky/meteo/messages.wun
sed -i 's/\.//g' ~/conky/meteo/messages.wun

il reste un peut à travailler dessus mais le plus gros est fait

le script pour pouvoir afficher les images
formatage-icones-meteo.sh

#!/bin/bash
n=0
for (( i=1 ; i<=32 ; i+=2 ))
  do
    n=$((n+1))
    fichier=$(sed -n "${i}p" ~/conky/meteo/weather_icons)
    cp ~/conky/meteo/images/meteo/$fichier.png ~/conky/meteo/images/conky/j$n.png
    j=$((i+1))
    fichier=$(sed -n "${j}p" ~/conky/meteo/weather_icons)
    cp ~/conky/meteo/images/vent/$fichier.png ~/conky/meteo/images/conky/v$n.png
  done

voici le fichier compressé des icônes, en fait je me suis contenté de renommer certaines icônes de conkyforcast

edit : j'oubliais, pour recupérer les infos il faut se rendre sur le site wunderground.com

  1. rechercher sa ville

  2. glisser sa sourie sur la petite icone bleu avec une triangle blanc tête en bas (tout à droite)

  3. faire un clique droit sur Download iCal

  4. choisir copier l'adresse du lien (qui devrait ressembler à ceci http://ical.wunderground.com/auto/ical/ … its=metric)

  5. et la coller dans le script wunderground-script.sh à la ligne 105

A+ Didier

Dernière modification par Didier-T (Le 27/10/2011, à 05:27)

Hors ligne

#1109 Le 26/10/2011, à 18:00

Phyllinux

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

Merci Didier-T pour cette excellente nouvelle.
Je vais donc essayer cela, pour voir ce que cela donne avant la fermeture de l'accès aux données de weather.com
Petite question complémentaire : Combien de jours de prévisions peut on avoir ?
Car sur ta capture je ne vois que la météo du jour (+ nuit).
Merci


The ship is sinking normally...

Hors ligne

#1110 Le 26/10/2011, à 18:10

Didier-T

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

en fait tu obtiens les infos sur 8 jours
là c'est juste une ébauche (fait à la vas vite) big_smile

Hors ligne

#1111 Le 26/10/2011, à 19:18

Levi59

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

Cool! Au moins il existe maintenant une alternative à weather.com.

Par contre le script en lui même est pas super... Les tests multiples par exemple peuvent je pense être remplacés par un case. à vérifier...

Hors ligne

#1112 Le 26/10/2011, à 23:01

Levi59

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

Quelqu'un pour tester ceci?
C'est une version corrigée du script. Je n'ai pas testé donc à utiliser avec prudence :

#!/bin/bash
# Version amélioré de wunderground-script.sh
# Copyright (C) 27 Oct. 2011, Rombeaut Rodolphe
# Released into the public domain.

DirShell="~/conky/meteo/"

#####
#####

#function: test_weather_message
test_weather_message () {
    case $1 in
        "Chance of Flurries"|Flurries ) echo p ;;
        "Chance of Rain" ) echo h ;;
        "Chance of Freezing Rain"|"Light Freezing Rain"|"Freezing Rain" ) echo v ;;
        "Chance of Sleet"|Sleet ) echo w ;;
        "Chance of Snow" ) echo q  ;;
        "Chance of Thunderstorms"|Thunderstorms|Thunderstorm ) echo n ;;
        "Chance of a Thunderstorm" ) echo m ;;
        Clear|Sunny ) echo a ;;
        Cloudy ) echo d ;;
        Fog|Haze ) echo 0 ;;
        "Mostly Cloudy"|"Partly Cloudy"|"Partly Sunny" ) echo c ;;
        "Mostly Sunny"|"Scattered Clouds" ) echo b ;;
        Rain ) echo i ;;
        Snow ) echo r ;;
        Overcast ) echo e ;;
        * ) echo -
esac
} 

#function: test_weather_message_night
test_weather_message_night () {
    case $1 in
        "Chance of Flurries"|Flurries|"Chance of Snow"|Snow ) echo O ;;
        "Chance of Rain"|"Chance of Freezing Rain"|"Light Freezing Rain"|"Freezing Rain"|"Chance of Sleet"|Sleet|Rain ) echo G ;;
         "Chance of Thunderstorms"|Thunderstorms|Thunderstorm ) echo K ;;
         "Chance of a Thunderstorm" ) echo m ;;
         Clear|Sunny ) echo A ;;
         Cloudy ) echo D ;;
         Fog|Haze ) echo 0 ;;
         "Mostly Cloudy"|"Partly Cloudy"|"Partly Sunny" ) echo C ;;
         "Mostly Sunny"|"Scattered Clouds" ) echo B ;;
         Overcast ) echo D ;;
        *) echo -
    esac
}

#function: test_wind_message
test_wind_message () {
    case $1 in
        Sou ) echo 1 ;;
        SSW ) echo 2 ;;
        "SW " ) echo 3 ;;
        WSW|Sleet ) echo 4 ;;
        Wes ) echo 5  ;;
        WNW ) echo 6 ;;
        "NW " ) echo 7 ;;
        NNW ) echo 8 ;;
        Nor ) echo 9 ;;
        NNE ) echo ":" ;;
        "NE " ) echo ";" ;;
        ENE ) echo "<" ;;
        Eas ) echo "=" ;;
        ESE ) echo ">" ;;
        "SE " ) echo "?" ;;
        SSE ) echo "@" ;;
        * ) echo "-"
    esac
} 

test_break () {
   [[ -n $1 ]] && break
}

rm ${DirShell}/yes
> ${DirShell}/weather_icons
egrep -i 'DESCRIPTION'< <(wget http://ical.wunderground.com/auto/ical/global/stations/07150.ics?units=metric -O - -o /dev/null) > ${DirShell}/messages.wun
sed -i 's/\(\\n\| - \|Wind \)/\n/g
s/DESCRIPTION://g
s/\(High\|Low\)/\n&/g
s/.Chance/\./g
s/\..*//g' ${DirShell}/messages.wun


for (( i=2; i<=100; i+=8 ))
do
    for j in 0 4
    do
        test_line=$(sed -n "$(($i+$j))p" ${DirShell}/messages.wun)
        test_break $test_line

        test_weather_message "$test_line" >> ${DirShell}/weather_icons

        test_line=$(sed -n "$(($i+$j+2))p" ${DirShell}/messages.wun)
        test_break ${test_line:0:3}

        test_wind_message "$test_line" >> ${DirShell}/weather_icons
    done
done

days_no=$(( $(wc -l < ${DirShell}/weather_icons)/4 ))
[[ $days_no -eq 8 ]] && touch ${DirShell}/yes

# Traduction en francais
sed -i 's/Scattered Clouds/\Nuages épars/g
s/Chance of Flurries/\Quelques averses de neige/g
s/Chance of Rain/\Risques de pluie/g
s/Chance of Snow/\Risques de neige/g
s/Chance of Freezing Rain/\Risque de pluie verglaçante/g
s/Light Freezing Rain/\Faible pluie verglaçante/g
s/Freezing Rain/\Pluie verglaçante/g
s/Chance of Sleet/\Risque de verglas/g
s/Chance of \(a \)\?Thunderstorm\(s\)\?/\Risque d'orages/g
s/\(Mostly\|Partly\) Cloudy/\Partiellement nuageux/g
s/\(Mostly\|Partly\) Sunny/\Partiellement ensoleillé/g
s/Scattered Clouds/\Nuages épars/g
s/Overcast/\Couvert/g
s/Snow/\Neige/g
s/Flurries/\Averses de neige/g
s/\(Clear\|Sunny\)/\Ensoleillé/g
s/Cloudy/\Nuageux/g
s/Fog/\Brouillard/g
s/Haze/\Brume/g
s/Thunderstorm\(s\)\?/\Orages/g
s/Sleet/\Verglas/g
s/ C/\ °C/g
s/Low/\Mini/g
s/High/\Maxi/g
s/Night/\Soir/g
s/Monday/\Lundi/g
s/Tuesday/\Mardi/g
s/Wednesday/\Mercredi/g
s/Thursday/\Jeudi/g
s/Friday/\Vendredi/g
s/Saturday/\Samedi/g
s/Sunday/\Dimanche/g
s/\.//g' ${DirShell}/messages.wun

Dernière modification par Levi59 (Le 27/10/2011, à 19:24)

Hors ligne

#1113 Le 27/10/2011, à 09:11

Levi59

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

bizarre... chez moi wget fonctionne parfaitement :

crunchbang:~ egrep -i 'DESCRIPTION'< <(wget http://ical.wunderground.com/auto/ical/global/stations/07150.ics?units=metric -O - -o /dev/null) > ics
crunchbang:~ cat ics
DESCRIPTION:Thursday - Scattered Clouds. High 14 C Wind South 25 km/h. \nThursday Night - Partly Cloudy. Low 7 C  Wind ESE  14 km/h.
DESCRIPTION:Friday - Overcast. High 18 C Wind SSE 21 km/h. \nFriday Night - Fog. Low 10 C  Wind SSE  10 km/h.
DESCRIPTION:Saturday - Overcast. High 17 C Wind East 10 km/h. \nSaturday Night - Fog. Low 9 C  Wind SE  10 km/h.
DESCRIPTION:Sunday - Fog. High 18 C Wind SSE 10 km/h. \nSunday Night - Fog. Low 9 C  Wind SW  10 km/h.
DESCRIPTION:Monday - Overcast. High 17 C Wind SW 14 km/h. \nMonday Night - Fog. Low 8 C  Wind WSW  7 km/h.
DESCRIPTION:Tuesday - Overcast. High 18 C Wind SSW 28 km/h. \nTuesday Night - Fog. Low 10 C  Wind SSW  14 km/h.
DESCRIPTION:Wednesday - Scattered Clouds. High 16 C Wind SW 10 km/h. \nWednesday Night - Overcast. Low 11 C  Wind SSW  21 km/h.
DESCRIPTION:Thursday - Overcast. High 18 C Wind SSE 10 km/h. \nThursday Night - Chance of Rain. Low 10 C  Wind SSW  21 km/h.Chance of precipitation 30%.

Ce n'est pas simplement un problème de connexion au site?

Hors ligne

#1114 Le 27/10/2011, à 15:28

torpedolos

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

@Phyllinux:

1- Il existe un moyen de ne pas avoir "pluie glaçante" (traduction canadienne approximative) mais "bruine".
2- T'es sur Marseille ???


"La convivialité, c'est pas quand un tuto est bien fait, c'est quand il n'y a pas besoin de tuto !" (moi)
"Je ne suis pas un numéro de hotline !" (ploum) http://ploum.net/post/36-je-ne-suis-pas … geek-libre
"Knowledge belongs to everyone" (Kevin Mitnick)
https://bugs.launchpad.net/ubuntu/+bug/1

Hors ligne

#1115 Le 27/10/2011, à 16:13

Phyllinux

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

@ Torpedolos

Effectivement je suis sur Marseille même.
Concernant la 'pluie glaçante', oui, il faut que je fasse la correction (que je connais et dont j'ai même fait profiter certains autres utilisateurs de conkyforecast).
Cela est lié au fait que j'ai fait une réinstallation complète suite au passage à Oneiric.
J'ai eu quelques soucis lors de la mise à niveau : J'ai un peu trop bidouillé après l'upgrade de Natty à Oneiric, et au bilan, mon PC a du sentir que je n'aimais pas trop Unity, et du coup, je n'avais plus que le démarrage en mode classique, ni Unity, ni Gnome Shell ne voulaient se lancer, et un matin, même classique a planté : Je n'avais plus la main sur quoi que ce soit, bien que l'ordinateur démarre correctement, avec un affichage normal, mais plus aucune possibilité de faire quoi que ce soit, d'avoir accès au lancement de logiciels. Je n'avais accès qu'à mon Home par le raccourci.
J'ai donc pris la décision de reprendre à zéro, en installant Ubuntu sur un DD particulier, et je suis en train de finir la remise à ma main, en essayant de me faire à Unity. Je garde mon netbook sous Naty.
Et il faut donc que je télécharge Poedit, et que je modifie le fichier conkyforecast.po.
Mais cela ne va pas durer longtemps car les jours de conkyforecast sont comptés, vu qu'il travaille avec les données de weather.com.


The ship is sinking normally...

Hors ligne

#1116 Le 27/10/2011, à 17:21

pem1664

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

Salut à tous,
Je découvre conky et vos scripts sont une mine d'or, c'est tellement plus facile avec des exemples.
quelques soucis cependant wink
je suis obligé de lancer le conky pour la surveillance systeme en sudo sinon j'ai ce message :

pem@Eee1001PXD:~/.conky$ 
Conky: desktop window (24000e4) is subwindow of root window (10b)
Conky: window type - desktop
Conky: drawing to created window (0x5000001)
Conky: drawing to double buffer
/dev/sda: open: Permission non accordée

Et les températures du disque dur ne s'affichent pas, en revanche la temp cpu ou autre fonctionne, en user..:/ Quelqu'un d'autre a ce souci?

@Didier-T
Je suis en train d'essayer ton script pour la météo animé (super idée au passage smile ) et je rencontre quelques difficultés pour le faire s'afficher dans conky, la meteo animé s'affiche mais dans une fenetre ImageMagick et pas dans le cadre conky.
J'ai du modifier le script et je ne comprend pas bien la commande

animate -window $(xwininfo -name "Conky (didier-P35-DS3R)" |grep xwininfo |awk '{ print $4 }') -delay 10 -pause 1 ~/conky/images/Traitee/*.jpg}

J'ai bien regardé le man de xwininfo mais ca sert a obtenir des informations sur les fenetres non?
Voila ce que j'ai mis (et ca doit etre pour ca que ca s'ouvre dans une fenetre indépendante)

animate  -delay 40 -pause 1 /home/pem/.conky/images/Traitee/*.jpg}${endif}

Si tu pouvais m'éclairer un peu sur cette commande, que je puisse l'adapter wink

merci a vous!


Pas de problème sans solutions, mettre [résolu] dans son premier post permet de rechercher plus facilement une solution... ;)

Hors ligne

#1117 Le 27/10/2011, à 18:41

chepioq

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

pem1664 a écrit :

Salut à tous,
Je découvre conky et vos scripts sont une mine d'or, c'est tellement plus facile avec des exemples.
quelques soucis cependant wink
je suis obligé de lancer le conky pour la surveillance systeme en sudo sinon j'ai ce message :

pem@Eee1001PXD:~/.conky$ 
Conky: desktop window (24000e4) is subwindow of root window (10b)
Conky: window type - desktop
Conky: drawing to created window (0x5000001)
Conky: drawing to double buffer
/dev/sda: open: Permission non accordée

Et les températures du disque dur ne s'affichent pas, en revanche la temp cpu ou autre fonctionne, en user..:/ Quelqu'un d'autre a ce souci?

J'ai le même problème sur ma Fedora, la variable hddtemp de conky ne fonctionne qu'en root.
Pour contourner le problème, j'ai installé le programme hddtemp (je pense qu'il doit aussi exister sous Ubuntu) que je lance dans mon conky avec execi.
Chez moi cela donne :

${execi 90 hddtemp /dev/sda | awk '{print $4}'}

A adapter à ta configuration.

Dernière modification par chepioq (Le 27/10/2011, à 18:45)


Tout est dans tout et réciproquement....

Hors ligne

#1118 Le 27/10/2011, à 19:19

pem1664

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

Salut chepioq, merci pour ta réponse, en effet y'a bien hddtemp sous ubuntu mais lui aussi demande les droits admin... et sous conky pareil.:/


Pas de problème sans solutions, mettre [résolu] dans son premier post permet de rechercher plus facilement une solution... ;)

Hors ligne

#1119 Le 27/10/2011, à 19:26

wlourf

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

Il y a un petit article ici  expliquant comment utiliser hddtemp sans sudo (en anglais)

Hors ligne

#1120 Le 27/10/2011, à 19:28

Levi59

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

pem1664 a écrit :

Salut chepioq, merci pour ta réponse, en effet y'a bien hddtemp sous ubuntu mais lui aussi demande les droits admin... et sous conky pareil.:/

Il faut faire un dpkg-reconfigure sur hddtemp pour autoriser la surveillance par les utilisateurs

@phyllinux
Que veux tu dire par arborescence? Techniquement j'ai repris exactement le même script mais j'ai amélioré l'écriture. le fonctionnement est théoriquement le même.

Je vais essayé d'installer le pack pour voir où se situe l'erreur.

Dernière modification par Levi59 (Le 27/10/2011, à 19:29)

Hors ligne

#1121 Le 27/10/2011, à 19:39

Didier-T

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

bonjour pem1664,

le problème vient du fait que tu ne dis pas à animate ou tu veux qu'il affiche tes images, donc il te crée une nouvelle fenêtre (normal).

pour palier au souci il faut faire une fenêtre avec conky qui te serviras d’écran (comme avec un projecteur)
cette fenêtre doit avoir un nom et un fond, donc tu dois avoir ceci au minimum dans la première section de ton conky :

  1. own_window_type normal

  2. own_window_hints undecorated,below,skip_taskbar,skip_pager

  3. own_window_title conkyanimate

le fait d'avoir le own_window_type en normal permet à xwininfo de pouvoir voir ta fenêtre et donc afficher dessus
et own_window_title donne un nom a ta fenêtre ce qui apporte un certain confort pour cibler celle-ci et afficher dedans

en fait je me rend compte en te répondant que je suis un boulet, j'ai modifier ma ligne de commande et ne l'ais pas changer sur mon post tongue

voici ce que sa donne

${voffset 177}${if_updatenr 2}${exec animate -window $(xwininfo -name "conkyanimate" |grep xwininfo |awk '{ print $4 }') -delay 10 -pause 1 ~/conky/images/Traitee/*.jpg}${endif}

Je vais de ce pas mettre un peut d'ordre dans ce message big_smile

Hors ligne

#1122 Le 27/10/2011, à 20:12

pem1664

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

Merci a vous !

sudo chmod u+s /usr/bin/sensors

et

sudo chmod u+s /usr/sbin/hddtemp

ont résolu le pb ! smile 1 de moins smile


Pas de problème sans solutions, mettre [résolu] dans son premier post permet de rechercher plus facilement une solution... ;)

Hors ligne

#1123 Le 27/10/2011, à 23:03

Levi59

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

Je viens de revoir tout le script... Y'avais pas mal d'erreurs en fait. J'ai encore appris 2-3 trucs! ^^

confere ce topic

Dernière modification par Levi59 (Le 28/10/2011, à 23:37)

Hors ligne

#1124 Le 28/10/2011, à 14:37

Levi59

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

Pas une erreur, le shell ne différencie normalement pas si on a /chemin/vers/dossier ou /chemin//vers/dossier
C'est justement pratique dans le cas ou l'utilisateur se trompe et rajoute un slash.

Hors ligne

#1125 Le 28/10/2011, à 17:31

chepioq

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

Pour le problème avec East ==> Est essaye avec :

sed -i "s/East/Est/g"

Tout est dans tout et réciproquement....

Hors ligne