Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".

#251 Le 08/01/2012, à 11:35

rpj

Re : Postez vos scripts Lua pour Conky !

Salut chepioq, bien vu !!
Ou l'a tu trouvé ? moi je l'est trouvé sur font com
Comment est ce possible ? une idée ?
Merci


La ligne de commande UNIX devrait être obligatoire dès la maternelle ! :-)
Debian,Ubuntu, Mint, Voyager, Gnome, Chromium, FF, .
www.fuerteventura-losaloes-apartamentos.com

Hors ligne

#252 Le 08/01/2012, à 14:46

chepioq

Re : Postez vos scripts Lua pour Conky !

Je l'ai trouvé ici http://fr.fonts2u.com/gemina-expanded-italic.police
Et je ne sais pas pourquoi le fichier téléchargé n'a pas le même nom que la police...
Le principal, c'est que ton problème soit résolu.
Bon dimanche...


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

Hors ligne

#253 Le 08/01/2012, à 19:43

rpj

Re : Postez vos scripts Lua pour Conky !

Ok, merci


La ligne de commande UNIX devrait être obligatoire dès la maternelle ! :-)
Debian,Ubuntu, Mint, Voyager, Gnome, Chromium, FF, .
www.fuerteventura-losaloes-apartamentos.com

Hors ligne

#254 Le 14/04/2012, à 13:35

h2o64

Re : Postez vos scripts Lua pour Conky !

où avez-vous appris à utilisé Lua et Cairo avec Conky ?

Dernière modification par h2o64 (Le 14/04/2012, à 13:41)


Vive Ubuntu ! Et vive le libre !

Hors ligne

#255 Le 16/04/2012, à 22:20

rsuinux

Re : Postez vos scripts Lua pour Conky !

h2o64 a écrit :

où avez-vous appris à utilisé Lua et Cairo avec Conky ?

je suis comme toi, je me suis posé la question, et j'ai trouvé une page avec une explication claire, certes en anglais, mais même moi qui ne parle pas en glais, j'ai réussi à comprendre!
tips and tricks lua

Sinon, j'ai une question,que j'ai posté dans la section conky, mais je pense que cela à plus ça place ici:
j'ai un (petit) lua qui me fait un rectangle semi transparent sous mon conky et ça marche. Ca je suis content de moi.
Mais dans mon conky, jai: mon adresse ip, le % du signal wifi, ainsi que les débits montant/descendant en chiffre et en courbe toujours sur le wifi.
Ca marchait jusque là, tant que je restais en wifi. Mais depuis quelques temps, je passe soit en wifi soit en usb (merci la cyanogene sur mon atrix).
Ce que je voudrai, c'est faire comprendre à conky que l'interface réseau à changé, tout en gardant au minimum l'adresse ip et les débits .
Ma partie conky ressemble à ça (c'est largement tronqué pour plus de clarté) :

${GOTO 5}${color}IP Locale: ${color1}${addr wlan0} ${GOTO 210}${color}Wifi: ${color1}${wireless_link_qual_perc wlan0}% 
${GOTO 5}${color1}${totaldown wlan0} down${goto 85}${downspeedgraph wlan0 8,75 00ff00 007700} ${downspeed wlan0} Kb/s  ${GOTO 235}${color1}${upspeed wlan0} Kb/s${goto 305}${upspeedgraph wlan0 8,75 00ff00 007700} ${color1}${totalup wlan0} up 

Vu le nombre de référence à wlan0, je ne vois pas trop comment faire.
Quelqu'un à une idée, svp?


Si tu ne sais pas: demande; si tu sais: partage!

Hors ligne

#256 Le 17/04/2012, à 13:58

rsuinux

Re : Postez vos scripts Lua pour Conky !

bon, j'ai à 95%, trouvé mon bonheur smile
Pas besoin de lua. Je postedonc la réponse sur le post 'réservé' à conky: http://forum.ubuntu-fr.org/viewtopic.php?id=426625&p=56

Cordialement.
Rémi.


Si tu ne sais pas: demande; si tu sais: partage!

Hors ligne

#257 Le 17/04/2012, à 19:39

Vermouth

Re : Postez vos scripts Lua pour Conky !

h2o64 a écrit :

où avez-vous appris à utilisé Lua et Cairo avec Conky ?

Le site de Conky (sa doc), ya quelques exemples dans le wiki.
Le site officiel de LUA.
Et le site de cairo pour avoir quelques détails sur les fonctions (pas toutes supportées par conky je crois).


Android !
\_/°<

   coin coin...

Hors ligne

#258 Le 05/05/2012, à 19:20

DJ Raging-Bull

Re : Postez vos scripts Lua pour Conky !

Bonjour,

Pour  ma part j'utilise ce conky:
Conky Lua

J'aimerais bien n'avoir que jusqu'à RAM sans rien en dessous.
Pourriez vous m'indiquer comment procéder ? J'ai réussi à virer les textes, mais quand je veux enlever les anneaux ça enlève aussi les aiguilles de l'horloge.


Desktop: Intel Core i7 2600K - 16 Go DDR3 - GeForce GTX 590 - Asus P8P67 - Sound Blaster X-Fi Titanium 7.1 - SSD & HDD
Laptop: Lenovo ThinkPad X201 - Intel Core i5 520M - 8 Go DDR3 - SSD 128 Go
OS: GNU/Linux Ubuntu 13.10 Saucy Salamander - 64 bits & Microsoft Windows 7 Édition Intégrale - 64 bits

Hors ligne

#259 Le 05/05/2012, à 19:28

dragao13

Re : Postez vos scripts Lua pour Conky !

Décidément on est plusieurs à l'utiliser !

Poste ici ce qu'il y a dans ton clock_rings.lua présent dans ton dossier .conky et je t'indiquerai les modifs ...

Dernière modification par dragao13 (Le 05/05/2012, à 19:33)


Macbook AIr 13 - OS X 10.9.1
Toshiba A 200 - Ubuntu 12.04 LTS

Hors ligne

#260 Le 06/05/2012, à 15:19

DJ Raging-Bull

Re : Postez vos scripts Lua pour Conky !

clock_rings.lua

--[[
Clock Rings by Linux Mint (2011) reEdited by despot77

This script draws percentage meters as rings, and also draws clock hands if you want! It is fully customisable; all options are described in the script. This script is based off a combination of my clock.lua script and my rings.lua 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/clock_rings.lua
    lua_draw_hook_pre clock_rings
    
Changelog:
+ v1.0 -- Original release (30.09.2009)
   v1.1p -- Jpope edit londonali1010 (05.10.2009)
*v 2011mint -- reEdit despot77 (18.02.2011)
]]

settings_table = {
    {
        -- Edit this table to customise your rings.
        -- You can create more rings simply by adding more elements to settings_table.
        -- "name" is the type of stat to display; you can choose from 'cpu', 'memperc', 'fs_used_perc', 'battery_used_perc'.
        name='time',
        -- "arg" is the argument to the stat type, e.g. if in Conky you would write ${cpu cpu0}, 'cpu0' would be the argument. If you would not use an argument in the Conky variable, use ''.
        arg='%I.%M',
        -- "max" is the maximum value of the ring. If the Conky variable outputs a percentage, use 100.
        max=12,
        -- "bg_colour" is the colour of the base ring.
        bg_colour=0xffffff,
        -- "bg_alpha" is the alpha value of the base ring.
        bg_alpha=0.1,
        -- "fg_colour" is the colour of the indicator part of the ring.
        fg_colour=0xFF6600,
        -- "fg_alpha" is the alpha value of the indicator part of the ring.
        fg_alpha=0.2,
        -- "x" and "y" are the x and y coordinates of the centre of the ring, relative to the top left corner of the Conky window.
        x=100, y=150,
        -- "radius" is the radius of the ring.
        radius=50,
        -- "thickness" is the thickness of the ring, centred around the radius.
        thickness=5,
        -- "start_angle" is the starting angle of the ring, in degrees, clockwise from top. Value can be either positive or negative.
        start_angle=0,
        -- "end_angle" is the ending angle of the ring, in degrees, clockwise from top. Value can be either positive or negative, but must be larger than start_angle.
        end_angle=360
    },
    {
        name='time',
        arg='%M.%S',
        max=60,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0xFF6600,
        fg_alpha=0.4,
        x=100, y=150,
        radius=56,
        thickness=5,
        start_angle=0,
        end_angle=360
    },
    {
        name='time',
        arg='%S',
        max=60,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0xFF6600,
        fg_alpha=0.6,
        x=100, y=150,
        radius=62,
        thickness=5,
        start_angle=0,
        end_angle=360
    },
    {
        name='time',
        arg='%d',
        max=31,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0xFF6600,
        fg_alpha=0.8,
        x=100, y=150,
        radius=70,
        thickness=5,
        start_angle=-90,
        end_angle=90
    },
    {
        name='time',
        arg='%m',
        max=12,
        bg_colour=0xffffff,
        bg_alpha=0.1,
        fg_colour=0xFF6600,
        fg_alpha=1,
        x=100, y=150,
        radius=76,
        thickness=5,
        start_angle=-90,
        end_angle=90
    },
    {
        name='cpu',
        arg='cpu0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0xFF6600,
        fg_alpha=0.8,
        x=50, y=300,
        radius=25,
        thickness=5,
        start_angle=-90,
        end_angle=180
    },
    {
        name='memperc',
        arg='',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0xFF6600,
        fg_alpha=0.8,
        x=75, y=350,
        radius=25,
        thickness=5,
        start_angle=-90,
        end_angle=180
    },
    {
        name='swapperc',
        arg='',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0xFF6600,
        fg_alpha=0.8,
        x=100, y=400,
        radius=25,
        thickness=5,
        start_angle=-90,
        end_angle=180
    },
    {
        name='fs_used_perc',
        arg='/',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0xFF6600,
        fg_alpha=0.8,
        x=125, y=450,
        radius=25,
        thickness=5,
        start_angle=-90,
        end_angle=180
    },
        {
        name='downspeedf',
        arg='eth0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0x339900,
        fg_alpha=0.8,
        x=150, y=500,
        radius=25,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },
        {
        name='upspeedf',
        arg='eth0',
        max=100,
        bg_colour=0xffffff,
        bg_alpha=0.2,
        fg_colour=0xff6600,
        fg_alpha=0.8,
        x=150, y=500,
        radius=20,
        thickness=4,
        start_angle=-90,
        end_angle=180
    },
}

-- Use these settings to define the origin and extent of your clock.

clock_r=65

-- "clock_x" and "clock_y" are the coordinates of the centre of the clock, in pixels, from the top left of the Conky window.

clock_x=100
clock_y=150

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_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 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
        
    -- Draw hour hand
    
    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,1.0,1.0,1.0,1.0)
    cairo_stroke(cr)
    
    -- Draw minute hand
    
    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)
    
    -- Draw seconds hand
    
    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)
        pct=value/pt['max']
        
        draw_ring(cr,pct,pt)
    end
    
    -- Check that Conky has been running for at least 5s

    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)
end

.conky

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

temperature_unit celsius

# Window specifications #

own_window yes
own_window_type override
own_window_transparent yes
own_window_hints undecorate,sticky,skip_taskbar,skip_pager,below

border_inner_margin 0
border_outer_margin 0

minimum_size 200 250
maximum_width 200

alignment tr
gap_x 35
gap_y 55

# Graphics settings #
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no

# Text settings #
use_xft yes
xftfont caviar dreams:size=8
xftalpha 0.5

uppercase no

temperature_unit celsius


default_color FFFFFF

# Lua Load  #
lua_load ~/.conky/clock_rings.lua
lua_draw_hook_pre clock_rings

TEXT
${voffset 8}${color FF6600}${font caviar dreams:size=16}${time %A}${font}${voffset -8}${alignr 50}${color FFFFFF}${font caviar dreams:size=38}${time %e}${font}
${color FFFFFF}${voffset -30}${color FFFFFF}${font caviar dreams:size=18}${time %b}${font}${voffset -3} ${color FFFFFF}${font caviar dreams:size=20}${time %Y}${font}${color FF6600}${hr}
${voffset 140}${font caviar dreams:size=10}${alignr}Lorient${font}
${font caviar dreams:size=12}${color FFFFFF}${alignr}${weather http://weather.noaa.gov/pub/data/observations/metar/stations/ LFRH temperature temperature 30} °C${font}
${image ~/.conky/new-ubuntu-logo.png -p 64,125 -s 70x20}


${color FFFFFF}${goto 25}${voffset 35}${cpu cpu0}%
${color FF6600}${goto 25}CPU
${color FFFFFF}${goto 50}${voffset 23}${memperc}%
${color FF6600}${goto 50}RAM
${color FFFFFF}${goto 75}${voffset 23}${swapperc}%
${color FF6600}${goto 75}Swap
${color FFFFFF}${goto 100}${voffset 23}${fs_used_perc /}%
${color FF6600}${goto 100}HDD
${color FFFFFF}${goto 125}${voffset 25}${downspeed eth0}
${color FFFFFF}${goto 125}${upspeed eth0}
${color FF6600}${goto 125}Réseau

Ce que j'aimerais c'est soit pouvoir enlever le SWAP, DISK et NET, soir remplacer par la température du CPU, GPU1 et GPU2

Ça me ferait CPU %, CPU °C, RAM %, GPU1 °C, GPU2 °C et pourquoi pas HDD % ou °C.
Malheureusement je ne m'y connais pas tellement en programmation.

Dernière modification par DJ Raging-Bull (Le 06/05/2012, à 15:22)


Desktop: Intel Core i7 2600K - 16 Go DDR3 - GeForce GTX 590 - Asus P8P67 - Sound Blaster X-Fi Titanium 7.1 - SSD & HDD
Laptop: Lenovo ThinkPad X201 - Intel Core i5 520M - 8 Go DDR3 - SSD 128 Go
OS: GNU/Linux Ubuntu 13.10 Saucy Salamander - 64 bits & Microsoft Windows 7 Édition Intégrale - 64 bits

Hors ligne

#261 Le 07/05/2012, à 01:55

dragao13

Re : Postez vos scripts Lua pour Conky !

Je te tiens au courant dans la semaine ... Taf oblige !


Macbook AIr 13 - OS X 10.9.1
Toshiba A 200 - Ubuntu 12.04 LTS

Hors ligne

#262 Le 07/05/2012, à 08:28

DJ Raging-Bull

Re : Postez vos scripts Lua pour Conky !

Pas de soucis, je te remercie déjà de regarder ! smile


Desktop: Intel Core i7 2600K - 16 Go DDR3 - GeForce GTX 590 - Asus P8P67 - Sound Blaster X-Fi Titanium 7.1 - SSD & HDD
Laptop: Lenovo ThinkPad X201 - Intel Core i5 520M - 8 Go DDR3 - SSD 128 Go
OS: GNU/Linux Ubuntu 13.10 Saucy Salamander - 64 bits & Microsoft Windows 7 Édition Intégrale - 64 bits

Hors ligne

#263 Le 13/05/2012, à 08:20

shamen456

Re : Postez vos scripts Lua pour Conky !

Bonjour a tous...

je me lance dans l’écriture 'from scratch' d'un code lua...

countdown.lua qui calcule le temps restant jusqu’à une certaine date, ainsi que les pourcentages ecoulés et restant depuis une date de début

--[[Countdown.lua by shamen456 (forum.ubuntu-fr.org)
calcul du temps restant (en jours, hr, min, sec) jusqu'a une certaine date a determiner par 'endday' ci-dessous
]]

require 'cairo'

function conky_main()
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)
local updates=tonumber(conky_parse('${updates}'))


    local today=os.time()
    local startday=os.time{year=2012, month=5, day=11, hour=8}
    local endday=os.time{year=2012, month=6, day=13, hour=8}
    local totaltime=endday-startday
    local totaldays=math.floor(totaltime/86400)
    local elapsedtime=today-startday
    local remaining=endday-today
    
    local percelapsed=(elapsedtime*100)/totaltime
    local percremain=(remaining*100)/totaltime
    local heure=os.date("%H",today)
    local minute=os.date("%M",today)
    local remdays=math.floor(remaining/86400)
    local elapseddays=math.floor(elapsedtime/86400)
    local remhours=math.floor((remaining-(remdays*86400))/3600)
    local remmin=math.floor((remaining-(remdays*86400)-(remhours*3600))/60)
    local remsec=remaining-(remdays*86400)-(remhours*3600)-(remmin*60)

function conky_today()
    return today
end

function conky_startD()
    local startDay=os.date("%d %b %Y",startday)
    return startDay
end

function conky_endD()
    local endDay=os.date("%d %b %Y",endday)
    return endDay
end

function conky_totalD()
    return totaldays
end


function conky_remainD()
    return remdays
end

function conky_remainH()
    return remhours
end

function conky_remainM()
    return remmin
end

function conky_remainS()
    return remsec
end


function conky_elapsD()
    return elapseddays
end

function conky_percelapsD()
    return percelapsed
end

function conky_percremainD()
    return percremain
end

cairo_destroy(cr)
cairo_surface_destroy(cs)
cr=nil
end

seulement quand j’appelle les fonctions dans conky, celles-ci ne se mettent pas à jour sad

comment faire pour forcer le code lua a s’exécuter à chaque refresh du conky...?
EDIT :

j'ai trouvé, en creant une fonction principale englobant toutes les autres, grace au code lua de base de MrPeachy....


Bon conky à tous...

Dernière modification par shamen456 (Le 13/05/2012, à 19:45)

Hors ligne

#264 Le 26/10/2012, à 13:14

Skops

Re : Postez vos scripts Lua pour Conky !

Bonjour,

Je suis en train de me mettre au lua en essayant le script suivant pour écrire des textes courbés

courbe.lua

--[[
text on bezier curve by mr peachy 12/2011
credit to Daniel Pupius http://13thparallel.com/archive/bezier-curves/
for the bezier equations
also eXpander for the letter split function
]]
require 'cairo'

function conky_beztext()
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)
local updates=tonumber(conky_parse('${updates}'))
if updates>5 then
--#########################################################################################################

--Title


t={
startx=50,--set the start point of the curve
starty=700,--^^
endx=450,--set the end point of the curve
endy=550,--^^
angle1=15,--this is the angle around the start point that controls the curve
length1=160,--see below for explaination of how these settings affect the curve
angle2=230,
length2=140,
color={51,153,255,0.3},--this is the color of the text, red, green, blue, alpha
text=" "..conky_parse("   ${nodename} ").." ",
--font="URW Chancery L",
font="English",
fsize=30,--font size
}--end of setup table


btext(t)--this calls the text drawing function
--to see how the settings above affect the curve set display to 1 and call the curve drawing function below
--if you want the curve set display to 0 and call function
--else comment out the next 3 lines
local display=0--1=turn the setup display on,0=turn display off
local color={51,153,255,0.3}--color of curve, r,g,b,a
curvedraw(t,display)



t2={
startx=50,--set the start point of the curve
starty=700,--^^
endx=500,--set the end point of the curve
endy=590,--^^
angle1=45,--this is the angle around the start point that controls the curve
length1=170,--see below for explaination of how these settings affect the curve
angle2=220,
length2=150,
color={51,153,255,0.3},--this is the color of the text, red, green, blue, alpha
text=""..conky_parse("  $sysname 12.04 LTS Unity on $machine").." ",
--font="URW Chancery L",
font="English",
fsize=30,--font size
}--end of setup table


btext(t2)--this calls the text drawing function
--to see how the settings above affect the curve set display to 1 and call the curve drawing function below
--if you want the curve set display to 0 and call function
--else comment out the next 3 lines
local display=0--1=turn the setup display on,0=turn display off
local color={51,153,255,0.3}--color of curve, r,g,b,a
curvedraw(t2,display)


t3={
startx=50,--set the start point of the curve
starty=700,--^^
endx=480,--set the end point of the curve
endy=670,--^^
angle1=75,--this is the angle around the start point that controls the curve
length1=180,--see below for explaination of how these settings affect the curve
angle2=220,
length2=110,
color={51,153,255,0.3},--this is the color of the text, red, green, blue, alpha
text=""..conky_parse("    Noyau : $kernel   ").." ",
--font="URW Chancery L",
font="English",
fsize=30,--font size
}--end of setup table


btext(t3)--this calls the text drawing function
--to see how the settings above affect the curve set display to 1 and call the curve drawing function below
--if you want the curve set display to 0 and call function
--else comment out the next 3 lines
local display=0--1=turn the setup display on,0=turn display off
local color={51,153,255,0.3}--color of curve, r,g,b,a
curvedraw(t3,display)


--#########################################################################################################
end-- if updates>5
cairo_destroy(cr)
cairo_surface_destroy(cs)
cr=nil
end-- end main function

function btext(t)
--set variables
local startx=t.startx
local starty=t.starty
local endx=t.endx
local endy=t.endy
local angle1=t.angle1
local length1=t.length1
local angle2=t.angle2
local length2=t.length2
--set local functions
local function split_text (text_to_split, splitted_text)      
    for letter in text_to_split:gmatch(".") do
    table.insert(splitted_text, letter)
    end
return splitted_text
end
local function B1(t) return t*t*t end
local function B2(t) return 3*t*t*(1-t) end
local function B3(t) return 3*t*(1-t)*(1-t) end
local function B4(t) return (1-t)*(1-t)*(1-t) end
local function getBezier(percent,C1x,C1y,C2x,C2y,C3x,C3y,C4x,C4y)
local posx1 = C1x*B1(percent) + C2x*B2(percent) + C3x*B3(percent) + C4x*B4(percent);
local posy1 = C1y*B1(percent) + C2y*B2(percent) + C3y*B3(percent) + C4y*B4(percent);
local posx2 = C1x*B1(percent+0.01) + C2x*B2(percent+0.01) + C3x*B3(percent+0.01) + C4x*B4(percent+0.01);
local posy2 = C1y*B1(percent+0.01) + C2y*B2(percent+0.01) + C3y*B3(percent+0.01) + C4y*B4(percent+0.01);
local posx3 = C1x*B1(percent-0.01) + C2x*B2(percent-0.01) + C3x*B3(percent-0.01) + C4x*B4(percent-0.01);
local posy3 = C1y*B1(percent-0.01) + C2y*B2(percent-0.01) + C3y*B3(percent-0.01) + C4y*B4(percent-0.01);
return posx1,posy1,posx2,posy2,posx3,posy3
end
local function getangle(x1,y1,x2,y2)
local radians = math.atan((x2-x1)/(y2-y1));
local degrees = radians *  180 / math.pi;
return radians,degrees
end
--calculations below---------------------------------------
local rad=length1
local arc=((2*math.pi)/360)*(angle1)
local c1x=0+rad*(math.sin(arc))
local c1y=0-rad*(math.cos(arc))
local center1x=c1x+startx
local center1y=c1y+starty
local rad=length2
local arc=((2*math.pi)/360)*(angle2)
local c2x=0+rad*(math.sin(arc))
local c2y=0-rad*(math.cos(arc))
local center2x=c2x+endx
local center2y=c2y+endy
--end curve calculations----------------------------------
texttab={}
split_text (t.text,texttab)
for i=1,#texttab do
n=1-((i-1)/(#t.text-1))
--print (n)
x1,y1,x2,y2,x3,y3=getBezier(n,startx,starty,center1x,center1y,center2x,center2y,endx,endy)
--print ("x1="..x1,"y1="..y1,"x2="..x2,"y2="..y2)
if y2<y3 then
add=-90
else
add=90
end
cairo_select_font_face (cr, t.font, CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL);
cairo_set_font_size (cr, t.fsize)
cairo_set_source_rgba (cr,t.color[1],t.color[2],t.color[3],t.color[4])
rad,deg=getangle(x2,y2,x3,y3)
cairo_move_to (cr,x1,y1)
local rot=(deg+add)*(math.pi/180)
cairo_rotate (cr,-rot)
cairo_show_text (cr,texttab[i])
cairo_stroke (cr)
cairo_rotate (cr,rot)
end
end--function btext

function curvedraw(t,display,color)
--set variables
local startx=t.startx
local starty=t.starty
local endx=t.endx
local endy=t.endy
local angle1=t.angle1
local length1=t.length1
local angle2=t.angle2
local length2=t.length2
cairo_set_source_rgba (cr,t.color[1],t.color[2],t.color[3],t.color[4])
--calculations below---------------------------------------
local rad=length1
local arc=((2*math.pi)/360)*(angle1)
local c1x=0+rad*(math.sin(arc))
local c1y=0-rad*(math.cos(arc))
local center1x=c1x+startx
local center1y=c1y+starty
local rad=length2
local arc=((2*math.pi)/360)*(angle2)
local c2x=0+rad*(math.sin(arc))
local c2y=0-rad*(math.cos(arc))
local center2x=c2x+endx
local center2y=c2y+endy
--end calculations----------------------------------
if display==1 then
cairo_set_line_width (cr,1)----------------------
cairo_set_source_rgba (cr,1,0,1,1)---------------
cairo_move_to (cr,startx,starty)-----------------
cairo_line_to (cr,center1x,center1y)-------------
cairo_stroke (cr)--------------------------------
cairo_set_source_rgba (cr,1,0,0,1)---------------
cairo_arc (cr,startx,starty,3,0,2*math.pi)-------
cairo_fill (cr)----------------------------------
cairo_set_source_rgba (cr,1,0,0,1)---------------
cairo_arc (cr,startx,starty,length1,0,2*math.pi)
cairo_stroke (cr)--------------------------------
cairo_set_source_rgba (cr,0,1,0,1)---------------
cairo_arc (cr,center1x,center1y,3,0,2*math.pi)---
cairo_fill (cr)----------------------------------
cairo_set_source_rgba (cr,1,0,1,1)---------------
cairo_move_to (cr,endx,endy)---------------------
cairo_line_to (cr,center2x,center2y)-------------
cairo_stroke (cr)--------------------------------
cairo_set_source_rgba (cr,0,1,1,1)---------------
cairo_arc (cr,endx,endy,3,0,2*math.pi)-----------
cairo_fill (cr)----------------------------------
cairo_arc (cr,endx,endy,length2,0,2*math.pi)-----
cairo_stroke (cr)--------------------------------
cairo_set_source_rgba (cr,1,1,0,1)---------------
cairo_arc (cr,center2x,center2y,3,0,2*math.pi)---
cairo_fill (cr)----------------------------------
end
--you can set text to 1 to see the actual cairo code for the curve
local text=0
if text==1 then
local function round(num, idp)
  return tonumber(string.format("%." .. (idp or 0) .. "f", num))
end
local c1x=round(center1x,2)
local c1y=round(center1y,2)
local c2x=round(center2x,2)
local c2y=round(center2y,2)
cairo_set_source_rgba (cr,1,1,0,1)
cairo_select_font_face (cr, "Sans", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL);
cairo_set_font_size (cr, 10);
cairo_move_to (cr,startx+20,starty)
cairo_show_text (cr, "cairo_move_to (cr, " .. startx .. ", " .. starty .. ")")
cairo_move_to (cr,startx+20,starty+12)
cairo_show_text (cr, "cairo_curve_to (cr, " .. c1x .. ", " .. c1y .. ", " .. c2x .. ", " .. c2y .. ", " .. endx .. ", " .. endy .. ")")
cairo_stroke (cr)
end
--###############################################
--setup curve line width and color/alpha--------------------------
cairo_set_line_width (cr,1)
cairo_move_to (cr,startx,starty)
cairo_curve_to (cr,center1x,center1y,center2x,center2y,endx,endy)
cairo_stroke (cr)
-------------------------------------------------------------------
end--function curve

.conkyrc3

# temps pour fermer conky en seconde. 0 = toujours actif 
total_run_times 0

# affiche le texte sur la sortie standard
out_to_console no

# réglage de la mémoire, pour éviter le clignotement
double_buffer yes
# Soustraire les mémoires tampons de la mémoire utilisée
no_buffers yes
text_buffer_size 2048

# taux de rafraichissement de la fenêtre (en secondes)
update_interval 1

# nombre d'échantillons à utiliser pour calculer la moyenne d'utilisation
cpu_avg_samples 4
net_avg_samples 2

# taille et positon
alignment top_right
minimum_size 320 5
maximum_width 320

# écart avec le bord x=gauche ou droit y= haut ou bas
gap_x 50
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
# 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 no
#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 accessibles une fois conky activé
own_window_transparent yes
own_window_hints  undecorated,below,sticky,skip_taskbar,skip_pager # définition du type 

# Utiliser Xft (polices lissées etc)
use_xft yes
xftalpha .1
override_utf8_locale yes # force UTF8

#police a utiliser : use_xft doit être a "yes"
xftfont Fixed:size=8#OCR A Std:size=15
# Tout le texte en majuscule
uppercase no

draw_outlines yes

# Ajoute des espaces après certains objets pour éviter de les faire bouger.
# Fonctionne uniquement avec les polices Fixes
use_spacer right

# Couleurs
default_color FFFFFF #blanc
default_shade_color 333333
default_outline_color black

color1 e49c16 
color2 CA0000 #rouge

color6 EEEEEE
color7 DDDDDD
color8 CCCCCC
color9 BBBBBB

# -- Lua Load -- #
lua_load ~/courbe.lua
lua_draw_hook_pre beztext

TEXT

Avec ce .conkyrc3, mon conky s'affiche mais fait disparaître les icônes du bureau et lorsque je clique sur le bureau, le conky disparaît puis se réaffiche (les icônes quant à elles apparaissent puis disparaissent)

Si je mets yes à own_window, le conky ne s'affiche plus et j'ai essayé de modifié own_window_type et cela ne fonctionne pas.
J'ai aussi suivi le conseil pour ce problème sur la page conky d'ubuntu mais celaa ne marche pas.
Mes autres .conkyrc qui fonctionnent sans script lua n'ont pas ce problème.

Etant débutant en lua, j'ai peut être fait une erreur bête...
La console ne me renvoie aucune erreur et je vous affiche la commande conky -v

miguel@PC-Miguel:~$ conky -v
Conky 1.8.1 compiled Fri Dec 16 18:29:36 UTC 2011 for Linux 2.6.24-30-server (x86_64)

Compiled in features:

System config file: /etc/conky/conky.conf
Package library path: /usr/lib/conky

 X11:
  * Xdamage extension
  * XDBE (double buffer extension)
  * Xft
  * ARGB visual

 Music detection:
  * Audacious
  * MPD
  * MOC
  * XMMS2

 General:
  * math
  * hddtemp
  * portmon
  * Curl
  * RSS
  * Weather (METAR)
  * Weather (XOAP)
  * wireless
  * support for IBM/Lenovo notebooks
  * nvidia
  * eve-online
  * config-output
  * Imlib2
  * apcupsd
  * iostats
  * ncurses
  * Lua

  Lua bindings:
   * Cairo
   * Imlib2

Si vous avez une idée, merci smile

Hors ligne

#265 Le 02/02/2013, à 23:07

kaizoku kuma

Re : Postez vos scripts Lua pour Conky !

Bonjour,
je me permet de up ce forum car j'ai besoin d'aide concernant un script de calendrier !
Je ne connais pas du tout le langage de programmation utilisé pour les modules conky, je ne demande qu'à apprendre smile

voila mon problème, j'ai récupérer un conky, je ne sais plus trop où ... (je vous le linkerais dès que je l'aurais retrouver !)
je l'ai installer car il comprenais tout ce j'avais besoin :

    -calendrier
    - date
    - processus en cours(bien qu'il manque les PID, dommage)
    - espaces libre du HD(enfin de ma partition)
    - indicateur de mail non lu !
    -une partie pour afficher des flux rss, cela n'étant interessant que si on peut utiliser du php, mais là encore j'aimerais bien savoir s'il y a moyen d'utiliser du php !
Si oui comment ?

Seulement, j'ai des petits carrés qui s'affichent un peu partout ... j'ai essayer de reprendre d'autres scripts mais aucun moyen de les faire partir ... j'ai lu quelques part qu'il fallait enregistrer le fichier et mettre fin de ligne Unix/Linux , je l'ai déjà fait mais j'ai toujours les petits carrés ...

voici le code complet sans aucune modification du fichier .conkyrc :

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

background yes
use_xft yes
xftfont HandelGotD:size=8
xftalpha 0.8
update_interval 0.5
total_run_times 0
double_buffer yes
minimum_size 200
maximum_size 300
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no
border_width 1
default_color white
default_shade_color black
default_outline_color black
alignment top_left
gap_x 10
gap_y 40
no_buffers yes
uppercase no
cpu_avg_samples 2
net_avg_samples 2
override_utf8_locale yes
use_spacer none
show_graph_scale no
show_graph_range no
text_buffer_size 1024
#colour
#default_color 000000
color2 ffffff
short_units yes
pad_percents 2

TEXT
${font birth of a hero:size=50}${time %B} ${font ubuntu:size=20} ${font}
${font birth of a hero:size=50}${color orange}${time %d}$color ${font} ${font birth of a hero:size=20} ${voffset -40}${time %A} ${font}

${font birth of a hero:size=70}${time %H:%M}${font}

${font birth of a hero:size=40} RAM: ${color orange}$memperc%$color${font}
${offset 50}${font birth of a hero:size=20} SWAP: ${color orange}$swapperc%$color${font}





${font ubuntu bold:size=10}${color orange}MEMÓRIA$color${font}
${hr 2}
${font StyleBats:size=14}g${font} ${top_mem name 1}${alignr}${top_mem mem 1}
${font StyleBats:size=14}g${font} ${top_mem name 2}${alignr}${top_mem mem 2}
${font StyleBats:size=14}g${font} ${top_mem name 3}${alignr}${top_mem mem 3}
${font StyleBats:size=14}g${font} ${top_mem name 4}${alignr}${top_mem mem 4}
${font StyleBats:size=14}g${font} ${top_mem name 5}${alignr}${top_mem mem 5}
${font StyleBats:size=14}g${font} ${top_mem name 6}${alignr}${top_mem mem 6}
${font StyleBats:size=14}g${font} ${top_mem name 7}${alignr}${top_mem mem 7}
${font StyleBats:size=14}g${font} ${top_mem name 8}${alignr}${top_mem mem 8}




${font ubuntu bold:size=10}${color orange}DISCOS$color${font}
${hr 2}
${voffset 4}${font Pie charts for maps:size=12}7${font} ${voffset -5}/:
${voffset 4}${fs_used /}/${fs_size /} ${alignr} ${fs_bar 8,60 /}




${font ubuntu bold:size=10}${color orange}REDE$color${font}
${hr 2}
${alignr}${addr eth1}

${voffset -6}${font PizzaDude Bullets:size=12}O${font} Up: ${upspeed eth1} kb/s ${alignr}${upspeedgraph eth1 8,60 F57900 FCAF3E}
${voffset 4}${font PizzaDude Bullets:size=12}U${font} Down: ${downspeed eth1} kb/s ${alignr}${downspeedgraph eth1 8,60 F57900 FCAF3E}
${voffset 4}${font PizzaDude Bullets:size=12}N${font} Upload: ${alignr}${totalup eth1}
${voffset 4}${font PizzaDude Bullets:size=12}T${font} Download: ${alignr}${totaldown eth1}

voici le code complet sans aucune modification du fichier .conkyrc_rss (le module qui contient le calendrier, notif de mails et rss :

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

background no
use_xft yes
xftfont HandelGotD:size=8
xftalpha 0.8
update_interval 0.5
total_run_times 0
double_buffer yes
minimum_size 200
maximum_size 1440
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no
border_width 1
default_color white
default_shade_color black
default_outline_color black
alignment top_right
gap_x 0
gap_y 35
no_buffers yes
uppercase no
cpu_avg_samples 2
net_avg_samples 2
override_utf8_locale yes
use_spacer none
show_graph_scale no
show_graph_range no
text_buffer_size 1024
#colour
default_color 000000
color2 FFFFFF
short_units yes
pad_percents 2
TEXT
${font ubuntu bold:size 8}${color orange}OMG Ubuntu${font}${color ffffff}
${hr 2}
${rss http://feeds.feedburner.com/d0od 6 item_titles 6}

${font ubuntu bold:size 8}${color orange}Cinema${font}${color ffffff}
${hr 2}
${rss http://rss.cinema.uol.com.br/ultnot/index.xml 8 item_titles 8}

${font ubuntu bold:size 8}${color orange}Tecnologia ${font}${color ffffff}
${hr 2}
${rss http://d.yimg.com/br.rss.news.yahoo.com/rss/tecnologia 10 item_titles 10}

${font ubuntu bold:size 8}${color orange}LINUX${font}${color ffffff}
${hr 2}
${rss http://feeds.feedburner.com/NoticiasLinux 6 item_titles 6}

${font ubuntu bold:size 8}${color orange}MangaStream${font}${color ffffff}
${hr 2}
${rss http://feeds.feedburner.com/mstream 4 item_titles 4}

${font ubuntu bold:size 8}${color orange}E-mail${font}${color ffffff}
${hr 2}
EMAIL: ${alignc} ${pop3_unseen SERVIDORPOPAQUI LOGIN SENHA [-i 60]} 

${font DejaVu Sans:pixelsize=10}${alignc}${execi 60 date +"%B %Y" | tr "[:lower:]" "[:upper:]"}${font Snap.se:size=8 }${font}
${font DejaVu Sans Mono:size=10}${execpi 60 cal | sed '1d' | sed '3d' | sed '2d' | sed '2d' | sed '2d' | sed '2d' | sed '2d' | sed 's/^/${alignc} /'}${font} ${color orange}
${font DejaVu Sans Mono:size=10}${execpi 60 DJS=`date +%_d`; cal | sed '1d' | sed '/./!d' | sed 's/$/                    /' | fold -w 21 | sed -n '/^.\{21\}/p' | sed 's/^/${alignc} /' | sed /" $DJS "/s/" $DJS "/" "'${color1}'"$DJS"'${color0}'" "/}${font}

Merci d'avance !

EDIT : screenshot

et voila j'ai retrouver le conky :http://br-lin.deviantart.com/art/Conky-Style-2-and-Tint2-185963802?q=&qo=

Dernière modification par kaizoku kuma (Le 02/02/2013, à 23:10)

Hors ligne

#266 Le 03/02/2013, à 08:32

chepioq

Re : Postez vos scripts Lua pour Conky !

Juste une question : as-tu installé les polices utilisées dans ces conky ? (à savoir HandelGotD, birth of a hero, ubuntu et StyleBats )

D'autre part je trouve qu'il y a un peu trop d'appel à ces polices...


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

Hors ligne

#267 Le 03/02/2013, à 14:27

kaizoku kuma

Re : Postez vos scripts Lua pour Conky !

salut, merci pour cette réponse si rapide ^^
en effet je n'ai pas installer ces polices demandés  -_-"

EDIT: je viens d'installer toutes polices demandés et j'ai toujours le mm problème de petits carrés :S

je viens de comprendre que les petits carrés devant le 2/02/2013 , il s'agit surement d'un moyen pour indiquer le jour actuel, car aujourd'hui les carrés ont migrés jusqu'au 3/02/2013 ..
Si quelqu'un sait comment régler le probleme smile

EDIT 2 : si quelqu'un pouvait me donner la ligne qui fait retrait vers droite, parce que je crois qu'il s'agit d'un probleme de retrait, j'ai regardé partout il ne s'agit ni d'un probleme d'encodage, ni de police dans mon cas !

Dernière modification par kaizoku kuma (Le 03/02/2013, à 16:42)

Hors ligne

#268 Le 03/02/2013, à 18:52

chepioq

Re : Postez vos scripts Lua pour Conky !

je ne saurai t'aider davantage, mais je pense que tu devrais poster ton problème dans une autre rubrique du forum : http://forum.ubuntu-fr.org/viewtopic.ph … #p12432711 , d'une part il y a plus de monde qui le lit, deuxièmement le sujet ici est plus pour les problème avec les scripts lua...

Dernière modification par chepioq (Le 03/02/2013, à 19:20)


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

Hors ligne

#269 Le 04/02/2013, à 15:39

bruno-mi

Re : Postez vos scripts Lua pour Conky !

DJ Raging-Bull a écrit :

Bonjour,

Pour  ma part j'utilise ce conky:
http://www.clapico.com/wp-content/uploa … onky02.png

J'aimerais bien n'avoir que jusqu'à RAM sans rien en dessous.
Pourriez vous m'indiquer comment procéder ? J'ai réussi à virer les textes, mais quand je veux enlever les anneaux ça enlève aussi les aiguilles de l'horloge.

Bonjour,

J'utilise aussi ce conky et je chercher à mettre la température de ma ville au lieu de celle affichée (dont je ne connais pas la provenance).
Dans le fichier .conkyrc il y a bien une ligne concernant la température:

${font caviar dreams:size=12}${color FFFFFF}${alignr}${weather http://weather.noaa.gov/pub/data/observ … /stations/ LQBK temperature temperature 30} °C${font}

Mais après je sèche...

Si quelqu'un a une idée ???
@+
Ps désolé d'avoir déjà posté cette question dans un autre sujet.

Hors ligne

#270 Le 05/02/2013, à 12:05

ludo63

Re : Postez vos scripts Lua pour Conky !

bonjour

@bruno-mi

pour la t° de ta ville tu ouvre ton navigateur ensuite tu vas sur http://weather.nooa.gov puis go
ensuite tu descends jusqu'à "international weather conditions" et tu sélectionne ton pays puis go
puis tu sélectionne la ville de ton choix (attention si tu habite une petite ville il se peut qu'elle n'apparaisse pas dans les choix, donc prendre la "grosse" ville la plus proche) puis go
ensuite dans ton conkyrc mettre à la place de LQBK les quatre lettres qui sont affichées dans la barres d'adresse du navigateur (ex paris-orly = LFPO)
puis dans ton conkyrc, 2 lignes avant celle des 4 lettres, tu remplace HOME par la ville de ton choix
voilou

Hors ligne

#271 Le 11/02/2013, à 19:11

bruno-mi

Re : Postez vos scripts Lua pour Conky !

Bonsoir

Toutes mes excuses pour le retard mais je veux dire "Chapeau" et merci.
Pour le HOME j'avais trouvé mais pour la température je cherchais depuis longtemps.

Encore Merci big_smile

Hors ligne

#272 Le 24/02/2013, à 17:36

morfla

Re : Postez vos scripts Lua pour Conky !

Bonjour tous le monde.

J'aurais besoin d'un coup de main pour modifier le conky que j'ai DL sur le net dont voici un screen :

mini_814263Capturedu20130224162948.png

Je vous mets le contenue des fichiers conkyrc et conkyorange.lua

Je souhaiterais arriver a avoir la température de mon cpu, ma CM  et éventuellement de mon ATI
Si quelqu'un peut m'aider smile

#==============================================================================
#                               conkyrc_orange
#
#  author  : SLK
#  version : v2011011601
#  license : Distributed under the terms of GNU GPL version 2 or later
#
#==============================================================================

background yes
update_interval 1

cpu_avg_samples 2
net_avg_samples 2
temperature_unit celsius

double_buffer yes
no_buffers yes
text_buffer_size 2048

gap_x 10
gap_y 30
minimum_size 190 450
maximum_width 190
own_window yes
own_window_type override
own_window_transparent yes
own_window_hints undecorate,sticky,skip_taskbar,skip_pager,below
border_inner_margin 0
border_outer_margin 0
alignment tr

draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no

override_utf8_locale yes
use_xft yes
xftfont caviar dreams:size=8
xftalpha 0.5
uppercase no

default_color FFFFFF
color1 DDDDDD
color2 AAAAAA
color3 888888
color4 EF5A29

lua_load ~/.conky/conky_orange.lua
lua_draw_hook_post main

#${voffset 35}
#${goto 95}${color3}${font ubuntu:size=32}${time %e}${color1}${voffset 0}${offset -60}${font ubuntu:size=10}${time %A}
#${goto 85}${color2}${voffset -2}${font ubuntu:size=9}${time %b}${voffset -2} ${color3}${font ubuntu:size=12}${time %Y}${font}
#
#${voffset 70}


TEXT
${voffset 35}
${goto 95}${color4}${font ubuntu:size=22}${time %e}${color1}${offset -50}${font ubuntu:size=10}${time %A}
${goto 85}${color2}${voffset -2}${font ubuntu:size=9}${time %b}${voffset -2} ${color3}${font ubuntu:size=12}${time %Y}${font}

${voffset 80}
${goto 90}${font Ubuntu:size=7,weight:bold}${color}CPU
${goto 90}${font Ubuntu:size=7,weight:normal}${color1}${top name 1}${alignr}${top cpu 1}%
${goto 90}${font Ubuntu:size=7,weight:normal}${color2}${top name 2}${alignr}${top cpu 2}%
${goto 90}${font Ubuntu:size=7,weight:normal}${color3}${top name 3}${alignr}${top cpu 3}%
${goto 90}${cpugraph 10,100 666666 666666}
${goto 90}${voffset -10}${font Ubuntu:size=7,weight:normal}${color}${threads} process 

${voffset 20}
${goto 90}${font Ubuntu:size=7,weight:bold}${color}MEM
${goto 90}${font Ubuntu:size=7,weight:normal}${color1}${top_mem name 1}${alignr}${top_mem mem 1}%
${goto 90}${font Ubuntu:size=7,weight:normal}${color2}${top_mem name 2}${alignr}${top_mem mem 2}%
${goto 90}${font Ubuntu:size=7,weight:normal}${color3}${top_mem name 3}${alignr}${top_mem mem 3}%

${voffset 15}
${goto 90}${font Ubuntu:size=7,weight:bold}${color}DISKS

${goto 90}${diskiograph 30,100 666666 666666}${voffset -30}
${goto 90}${font Ubuntu:size=7,weight:normal}${color}used: ${fs_used /home} /home
${goto 90}${font Ubuntu:size=7,weight:normal}${color}used: ${fs_used /} /
--==============================================================================
--                            conky_orange.lua
--
--  author  : SLK
--  version : v2011062101
--  license : Distributed under the terms of GNU GPL version 2 or later
--
--==============================================================================

require 'cairo'

--------------------------------------------------------------------------------
--                                                                    clock DATA
-- HOURS
clock_h = {
    {
    name='time',                   arg='%H',                    max_value=12,
    x=110,                         y=80,
    graph_radius=53,
    graph_thickness=3,
    graph_unit_angle=30,           graph_unit_thickness=30,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.0,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.3,
    txt_radius=34,
    txt_weight=1,                  txt_size=10.0,
    txt_fg_colour=0xFFFFFF,        txt_fg_alpha=0.6,
    graduation_radius=53,
    graduation_thickness=6,        graduation_mark_thickness=2,
    graduation_unit_angle=30,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    },
}
-- MINUTES
clock_m = {
    {
    name='time',                   arg='%M',                    max_value=60,
    x=110,                         y=80,
    graph_radius=57,
    graph_thickness=2,
    graph_unit_angle=6,            graph_unit_thickness=6,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.3,
    txt_radius=70,
    txt_weight=0,                  txt_size=9.0,
    txt_fg_colour=0xFFFFFF,        txt_fg_alpha=0.6,
    graduation_radius=57,
    graduation_thickness=0,        graduation_mark_thickness=2,
    graduation_unit_angle=30,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    },
}
-- SECONDS
clock_s = {
    {
    name='time',                   arg='%S',                    max_value=60,
    x=110,                         y=80,
    graph_radius=50,
    graph_thickness=2,
    graph_unit_angle=6,            graph_unit_thickness=2,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.0,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    txt_radius=40,
    txt_weight=0,                  txt_size=12.0,
    txt_fg_colour=0xFFFFFF,        txt_fg_alpha=0.3,
    graduation_radius=0,
    graduation_thickness=0,        graduation_mark_thickness=0,
    graduation_unit_angle=0,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.0,
    },
}

--------------------------------------------------------------------------------
--                                                                    gauge DATA
gauge = {
{
    name='cpu',                    arg='cpu0',                  max_value=100,
    x=85,                          y=200,
    graph_radius=18,
    graph_thickness=4,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=34,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='cpu',                    arg='cpu1',                  max_value=100,
    x=85,                          y=200,
    graph_radius=22,
    graph_thickness=4,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='cpu',                    arg='cpu2',                  max_value=100,
    x=85,                          y=200,
    graph_radius=26,
    graph_thickness=4,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='cpu',                    arg='cpu3',                  max_value=100,
    x=85,                          y=200,
    graph_radius=30,
    graph_thickness=4,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='cpu',                    arg='cpu4',                  max_value=100,
    x=85,                          y=200,
    graph_radius=34,
    graph_thickness=4,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='cpu',                    arg='cpu5',                  max_value=100,
    x=85,                          y=200,
    graph_radius=38,
    graph_thickness=4,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='cpu',                    arg='cpu6',                  max_value=100,
    x=85,                          y=200,
    graph_radius=42,
    graph_thickness=4,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='cpu',                    arg='cpu7',                  max_value=100,
    x=85,                          y=200,
    graph_radius=46,
    graph_thickness=4,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='cpu',                    arg='cpu8',                  max_value=100,
    x=85,                          y=200,
    graph_radius=50,
    graph_thickness=4,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='memperc',                arg='',                      max_value=100,
    x=85,                          y=300,
    graph_radius=24,
    graph_thickness=5,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=23,
    graduation_thickness=0,        graduation_mark_thickness=2,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.5,
    caption='',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.3,
},
{
    name='fs_used_perc',           arg='/',                     max_value=100,
    x=85,                          y=380,
    graph_radius=24,
    graph_thickness=5,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=34,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='/',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.5,
},
{
    name='fs_used_perc',           arg='/home/',                max_value=100,
    x=85,                          y=380,
    graph_radius=18,
    graph_thickness=5,
    graph_start_angle=180,
    graph_unit_angle=2.7,          graph_unit_thickness=2.7,
    graph_bg_colour=0xffffff,      graph_bg_alpha=0.1,
    graph_fg_colour=0xFFFFFF,      graph_fg_alpha=0.2,
    hand_fg_colour=0xEF5A29,       hand_fg_alpha=1.0,
    txt_radius=10,
    txt_weight=0,                  txt_size=8.0,
    txt_fg_colour=0xEF5A29,        txt_fg_alpha=1.0,
    graduation_radius=28,
    graduation_thickness=0,        graduation_mark_thickness=1,
    graduation_unit_angle=27,
    graduation_fg_colour=0xFFFFFF, graduation_fg_alpha=0.3,
    caption='/home',
    caption_weight=1,              caption_size=8.0,
    caption_fg_colour=0xFFFFFF,    caption_fg_alpha=0.5,
},

}

-------------------------------------------------------------------------------
--                                                                 rgb_to_r_g_b
-- converts color in hexa to decimal
--
function rgb_to_r_g_b(colour, alpha)
    return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end

-------------------------------------------------------------------------------
--                                                            angle_to_position
-- convert degree to rad and rotate (0 degree is top/north)
--
function angle_to_position(start_angle, current_angle)
    local pos = current_angle + start_angle
    return ( ( pos * (2 * math.pi / 360) ) - (math.pi / 2) )
end

-------------------------------------------------------------------------------
--                                                              draw_clock_ring
-- displays clock
--
function draw_clock_ring(display, data, value)
    local max_value = data['max_value']
    local x, y = data['x'], data['y']
    local graph_radius = data['graph_radius']
    local graph_thickness, graph_unit_thickness = data['graph_thickness'], data['graph_unit_thickness']
    local graph_unit_angle = data['graph_unit_angle']
    local graph_bg_colour, graph_bg_alpha = data['graph_bg_colour'], data['graph_bg_alpha']
    local graph_fg_colour, graph_fg_alpha = data['graph_fg_colour'], data['graph_fg_alpha']

    -- background ring
    cairo_arc(display, x, y, graph_radius, 0, 2 * math.pi)
    cairo_set_source_rgba(display, rgb_to_r_g_b(graph_bg_colour, graph_bg_alpha))
    cairo_set_line_width(display, graph_thickness)
    cairo_stroke(display)

    -- arc of value
    local val = (value % max_value)
    local i = 1
    while i <= val do
        cairo_arc(display, x, y, graph_radius,(  ((graph_unit_angle * i) - graph_unit_thickness)*(2*math.pi/360)  )-(math.pi/2),((graph_unit_angle * i) * (2*math.pi/360))-(math.pi/2))
        cairo_set_source_rgba(display,rgb_to_r_g_b(graph_fg_colour,graph_fg_alpha))
        cairo_stroke(display)
        i = i + 1
    end
    local angle = (graph_unit_angle * i) - graph_unit_thickness

    -- graduations marks
    local graduation_radius = data['graduation_radius']
    local graduation_thickness, graduation_mark_thickness = data['graduation_thickness'], data['graduation_mark_thickness']
    local graduation_unit_angle = data['graduation_unit_angle']
    local graduation_fg_colour, graduation_fg_alpha = data['graduation_fg_colour'], data['graduation_fg_alpha']
    if graduation_radius > 0 and graduation_thickness > 0 and graduation_unit_angle > 0 then
        local nb_graduation = 360 / graduation_unit_angle
        local i = 1
        while i <= nb_graduation do
            cairo_set_line_width(display, graduation_thickness)
            cairo_arc(display, x, y, graduation_radius, (((graduation_unit_angle * i)-(graduation_mark_thickness/2))*(2*math.pi/360))-(math.pi/2),(((graduation_unit_angle * i)+(graduation_mark_thickness/2))*(2*math.pi/360))-(math.pi/2))
            cairo_set_source_rgba(display,rgb_to_r_g_b(graduation_fg_colour,graduation_fg_alpha))
            cairo_stroke(display)
            cairo_set_line_width(display, graph_thickness)
            i = i + 1
        end
    end

    -- text
    local txt_radius = data['txt_radius']
    local txt_weight, txt_size = data['txt_weight'], data['txt_size']
    local txt_fg_colour, txt_fg_alpha = data['txt_fg_colour'], data['txt_fg_alpha']
    local movex = txt_radius * (math.cos((angle * 2 * math.pi / 360)-(math.pi/2)))
    local movey = txt_radius * (math.sin((angle * 2 * math.pi / 360)-(math.pi/2)))
    cairo_select_font_face (display, "ubuntu", CAIRO_FONT_SLANT_NORMAL, txt_weight);
    cairo_set_font_size (display, txt_size);
    cairo_set_source_rgba (display, rgb_to_r_g_b(txt_fg_colour, txt_fg_alpha));
    cairo_move_to (display, x + movex - (txt_size / 2), y + movey + 3);
    cairo_show_text (display, value);
    cairo_stroke (display);
end

-------------------------------------------------------------------------------
--                                                              draw_gauge_ring
-- displays gauges
--
function draw_gauge_ring(display, data, value)
    local max_value = data['max_value']
    local x, y = data['x'], data['y']
    local graph_radius = data['graph_radius']
    local graph_thickness, graph_unit_thickness = data['graph_thickness'], data['graph_unit_thickness']
    local graph_start_angle = data['graph_start_angle']
    local graph_unit_angle = data['graph_unit_angle']
    local graph_bg_colour, graph_bg_alpha = data['graph_bg_colour'], data['graph_bg_alpha']
    local graph_fg_colour, graph_fg_alpha = data['graph_fg_colour'], data['graph_fg_alpha']
    local hand_fg_colour, hand_fg_alpha = data['hand_fg_colour'], data['hand_fg_alpha']
    local graph_end_angle = (max_value * graph_unit_angle) % 360

    -- background ring
    cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, 0), angle_to_position(graph_start_angle, graph_end_angle))
    cairo_set_source_rgba(display, rgb_to_r_g_b(graph_bg_colour, graph_bg_alpha))
    cairo_set_line_width(display, graph_thickness)
    cairo_stroke(display)

    -- arc of value
    local val = value % (max_value + 1)
    local start_arc = 0
    local stop_arc = 0
    local i = 1
    while i <= val do
        start_arc = (graph_unit_angle * i) - graph_unit_thickness
        stop_arc = (graph_unit_angle * i)
        cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc))
        cairo_set_source_rgba(display, rgb_to_r_g_b(graph_fg_colour, graph_fg_alpha))
        cairo_stroke(display)
        i = i + 1
    end
    local angle = start_arc

    -- hand
    start_arc = (graph_unit_angle * val) - (graph_unit_thickness * 2)
    stop_arc = (graph_unit_angle * val)
    cairo_arc(display, x, y, graph_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc))
    cairo_set_source_rgba(display, rgb_to_r_g_b(hand_fg_colour, hand_fg_alpha))
    cairo_stroke(display)

    -- graduations marks
    local graduation_radius = data['graduation_radius']
    local graduation_thickness, graduation_mark_thickness = data['graduation_thickness'], data['graduation_mark_thickness']
    local graduation_unit_angle = data['graduation_unit_angle']
    local graduation_fg_colour, graduation_fg_alpha = data['graduation_fg_colour'], data['graduation_fg_alpha']
    if graduation_radius > 0 and graduation_thickness > 0 and graduation_unit_angle > 0 then
        local nb_graduation = graph_end_angle / graduation_unit_angle
        local i = 0
        while i < nb_graduation do
            cairo_set_line_width(display, graduation_thickness)
            start_arc = (graduation_unit_angle * i) - (graduation_mark_thickness / 2)
            stop_arc = (graduation_unit_angle * i) + (graduation_mark_thickness / 2)
            cairo_arc(display, x, y, graduation_radius, angle_to_position(graph_start_angle, start_arc), angle_to_position(graph_start_angle, stop_arc))
            cairo_set_source_rgba(display,rgb_to_r_g_b(graduation_fg_colour,graduation_fg_alpha))
            cairo_stroke(display)
            cairo_set_line_width(display, graph_thickness)
            i = i + 1
        end
    end

    -- text
    local txt_radius = data['txt_radius']
    local txt_weight, txt_size = data['txt_weight'], data['txt_size']
    local txt_fg_colour, txt_fg_alpha = data['txt_fg_colour'], data['txt_fg_alpha']
    local movex = txt_radius * math.cos(angle_to_position(graph_start_angle, angle))
    local movey = txt_radius * math.sin(angle_to_position(graph_start_angle, angle))
    cairo_select_font_face (display, "ubuntu", CAIRO_FONT_SLANT_NORMAL, txt_weight)
    cairo_set_font_size (display, txt_size)
    cairo_set_source_rgba (display, rgb_to_r_g_b(txt_fg_colour, txt_fg_alpha))
    cairo_move_to (display, x + movex - (txt_size / 2), y + movey + 3)
    cairo_show_text (display, value)
    cairo_stroke (display)

    -- caption
    local caption = data['caption']
    local caption_weight, caption_size = data['caption_weight'], data['caption_size']
    local caption_fg_colour, caption_fg_alpha = data['caption_fg_colour'], data['caption_fg_alpha']
    local tox = graph_radius * (math.cos((graph_start_angle * 2 * math.pi / 360)-(math.pi/2)))
    local toy = graph_radius * (math.sin((graph_start_angle * 2 * math.pi / 360)-(math.pi/2)))
    cairo_select_font_face (display, "ubuntu", CAIRO_FONT_SLANT_NORMAL, caption_weight);
    cairo_set_font_size (display, caption_size)
    cairo_set_source_rgba (display, rgb_to_r_g_b(caption_fg_colour, caption_fg_alpha))
    cairo_move_to (display, x + tox + 5, y + toy + 1)
    -- bad hack but not enough time !
    if graph_start_angle < 105 then
        cairo_move_to (display, x + tox - 30, y + toy + 1)
    end
    cairo_show_text (display, caption)
    cairo_stroke (display)
end

-------------------------------------------------------------------------------
--                                                               go_clock_rings
-- loads data and displays clock
--
function go_clock_rings(display)
    local function load_clock_rings(display, data)
        local str, value = '', 0
        str = string.format('${%s %s}',data['name'], data['arg'])
        str = conky_parse(str)
        value = tonumber(str)
        draw_clock_ring(display, data, value)
    end
    
    for i in pairs(clock_h) do
        load_clock_rings(display, clock_h[i])
    end
    for i in pairs(clock_m) do
        load_clock_rings(display, clock_m[i])
    end
    for i in pairs(clock_s) do
        load_clock_rings(display, clock_s[i])
    end
end

-------------------------------------------------------------------------------
--                                                               go_gauge_rings
-- loads data and displays gauges
--
function go_gauge_rings(display)
    local function load_gauge_rings(display, data)
        local str, value = '', 0
        str = string.format('${%s %s}',data['name'], data['arg'])
        str = conky_parse(str)
        value = tonumber(str)
        draw_gauge_ring(display, data, value)
    end
    
    for i in pairs(gauge) do
        load_gauge_rings(display, gauge[i])
    end
end

-------------------------------------------------------------------------------
--                                                                         MAIN
function conky_main()
    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 display = cairo_create(cs)
    
    local updates = conky_parse('${updates}')
    update_num = tonumber(updates)
    
    if update_num > 5 then
        go_clock_rings(display)
        go_gauge_rings(display)
    end
    
    cairo_surface_destroy(cs)
    cairo_destroy(display)
end

Hors ligne

#273 Le 24/02/2013, à 23:44

maan

Re : Postez vos scripts Lua pour Conky !

Tout d'abord as-tu "lm-sensors" d'installer ??
dans un terminal

sensors

xubuntu voyager 12.04 lts
http://voyager.legtux.org/

Hors ligne

#274 Le 25/02/2013, à 16:20

morfla

Re : Postez vos scripts Lua pour Conky !

oui, j'avais mis le screen pour vous montrer justement wink

Hors ligne

#275 Le 26/02/2013, à 01:31

maan

Re : Postez vos scripts Lua pour Conky !

excuse j'avais pas fait attention roll

pour la CM je ne sais pas vraiment, ton ati je ne la vois pas apparaitre dans le retour de ton screen
Après pour ton cpu :
--- dans ton conkyrc

CPU : ${hwmon x temp x}

Pour retrouver les chiffres exactes par lesquels remplacer les x tu les retrouves en comparant tes résultats terminal et les fichier qui se trouvent
/sys/class/hwmon/hwmonx/device/tempx_input
A toi de retrouver le bon fichier correspondant à ta t° cpu et de remplacer les x
--- Dans ton lua tu copi un ring et tu remplace "name" et "arg"

name='hwmon' 
arg='x temp x'

Les x seront les mêmes que dans ton conkyrc

Voilà après à toi de bien renseigner pour les placés ou tu les désires avec ${voffset xx} et ${goto xx} dans ton conkyrc et "x=--" et "y=--" dans ton lua
Après je ne suis pas un pro, moi c'est ainsi que j'ai procéder,
alors il y aura peut être d'autres solutions, et peut être quelqu'un pour te renseigner pour la CM et ton Ati


xubuntu voyager 12.04 lts
http://voyager.legtux.org/

Hors ligne

Haut de page ↑