[Desktop] Conky - Rings Lua Problemi

Personalizzazione grafica del sistema: icone, temi, sfondi, suoni, eccetera.
Takeru
Prode Principiante
Messaggi: 14
Iscrizione: martedì 11 maggio 2010, 15:54

[Desktop] Conky - Rings Lua Problemi

Messaggio da Takeru »

Ciao a tutti sono nuovo, ma ho seguito spesso il forum anche senza essere iscritto, ora ho un problema che non riesco a risolvere, premetto che ho completamente formattato Windows :D per passare ad Ubuntu 9.10 ora invece ho su la 10.04(Spettacolare). il mio problema riguarda conky ho installato la versione nei repository in gestione pacchetti e mi installa la 1.8, ora vorrei poter mettere i conky rings con script in Lua solo che non mi li visualizza, ho preso lo script su DeviantArt, mi parte il conky riguardante i dati ma non si vedono i rings, da terminale dopo che do il comando conky mi da il seguente errore: function conky_rings_stats execution failed_ attempt to call a nil value vi posto il mio conkyrc

CONKYRC
#!/usr/bin/conky -d -c
## .conkyrc configuration
alignment top_right
background yes
border_margin 1
border_width 1
color0 555555 #
color1 b73c92 # fiolet
color2 7e5973 # braz 64574e
color3 a82553 # rozowy f71f84
color4 5e1014 # bordowy
color5 282421 # szary ciemny 282421
color6 a7a7a7 # szary
color7 d29556 # pomaranczowy
color8 3b342e # czarny prawie
color9 525276 # niebiesko-szary
cpu_avg_samples 2
default_color bfbfbf # ciemny 141414
default_outline_color 000000 # Black
default_shade_color 000000 # Black
double_buffer yes
draw_borders no
draw_graph_borders no
draw_outline no
draw_shades no
gap_x 1
gap_y 200
max_specials 1024
max_user_text 10000
maximum_width 120
minimum_size 110 3000
net_avg_samples 2
no_buffers yes
override_utf8_locale yes
own_window yes
own_window_colour 000000 # Black
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
own_window_transparent yes
own_window_type override ## normal
own_window_title conky
pad_percents 2 # to co nizej, miejsc po przecinku
short_units yes # krotka wersja podawania wielkosci dyskow np. 612.21M/3.80G
stippled_borders 3
text_buffer_size 8000
total_run_times 0
update_interval 1.0
uppercase no
use_spacer right
use_xft yes
xftalpha 0.75
xftfont GE Inspira:bold:italic:size=7


lua_load ~/prova/rings.lua
lua_draw_hook_pre ring_stats

imlib_cache_size 0
TEXT
${color5}${font Purisa:bold:size=9}${voffset 15}${goto 20} CPU1${font}${goto 65}${cpu cpu1}%
${color5}${offset 15}${goto 38}${freq_g (1)} GHz
${color5}${offset 5}${goto 41}${exec sensors  |  grep "temp2"  |  cut --bytes=15-21}
${color5}${font Purisa:bold:size=9}${voffset 30}${goto 20} CPU2${font}${goto 65}${cpu cpu2}%
${color5}${offset 15}${goto 38}${freq_g (2)} GHz
${color5}${offset 5}${goto 41}${exec sensors  |  grep "temp3"  |  cut --bytes=15-21}
${color5}${font Purisa:bold:size=9}${voffset 32}${goto 30} RAM${font}
${color5}${offset 15}${goto 43}${memperc}%
${color5}${font Purisa:bold:size=9}${voffset 43}${goto 30} ROOT${font}
${color5}${offset 15}${goto 28}${fs_used /} / ${fs_size /}
${color5}${font Purisa:bold:size=9}${voffset 41}${goto 30} HOME${font}
${color5}${offset 15}${goto 28}${fs_used /home} / ${fs_size /home}
${color5}${font Purisa:bold:size=9}${voffset 40}${goto 10} BATTERY${font}
${color5}${offset 15}${goto 28}${battery_time}
${color5}${font Purisa:bold:size=9}${voffset 40}${goto 30}GMAIL: ${execi 60 ~/.conky/gmail.sh}

RINGS.LUA
--[[
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.lua
   lua_draw_hook_pre ring_stats
   
Changelog:
+ 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=0x525276,
       bg_alpha=0.1,
       fg_colour=0x282421,
       fg_alpha=0.8,
       x=115, y=50,
       radius=25,
       thickness=10,
       start_angle=180,
       end_angle=360
   },
   {
       name='cpu',
       arg='cpu2',
       max=100,
       bg_colour=0x525276,
       bg_alpha=0.1,
       fg_colour=0x282421,
       fg_alpha=0.8,
       x=115, y=120,
       radius=25,
       thickness=10,
       start_angle=180,
       end_angle=360
   },
{
name='memperc',
arg='',
max=100,
bg_colour=0x525276,
bg_alpha=0.1,
fg_colour=0x282421,
fg_alpha=0.8,
x=115, y=190,
radius=25,
thickness=10,
start_angle=180,
end_angle=360
},
{
name='fs_used_perc',
arg='/',
max=100,
bg_colour=0x525276,
bg_alpha=0.1,
fg_colour=0x282421,
fg_alpha=0.8,
x=115, y=260,
radius=25,
thickness=10,
start_angle=180,
end_angle=360
},
{
name='fs_used_perc',
arg='/home',
max=100,
bg_colour=0x525276,
bg_alpha=0.1,
fg_colour=0x282421,
fg_alpha=0.8,
x=115, y=330,
radius=25,
thickness=10,
start_angle=180,
end_angle=360
},
{
name='battery_percent',
arg='BAT0',
max=100,
bg_colour=0x525276,
bg_alpha=0.1,
fg_colour=0x282421,
fg_alpha=0.8,
x=115, y=400,
radius=25,
thickness=10,
start_angle=180,
end_angle=360
},
}

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)
       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)
       end
   end
end
Vi metto anche il link di come vorrei che fosse il mio conky, magari potreste aiutarmi passo passo per poterlo ottenere, mi manca solo il conky così posso partecipare al desktop del mese, grazie  (good) ;D

ecco il link: http://didi79.deviantart.com/art/miniD5-update-140158242
Takeru
Prode Principiante
Messaggi: 14
Iscrizione: martedì 11 maggio 2010, 15:54

Re: [Desktop] Conky - Rings Lua Problemi

Messaggio da Takeru »

Nessuno può darmi una mano in merito.... :'(
Avatar utente
Daniellino93
Prode Principiante
Messaggi: 114
Iscrizione: domenica 11 gennaio 2009, 14:35
Località: Stoccarda (Germany)

Re: [Desktop] Conky - Rings Lua Problemi

Messaggio da Daniellino93 »

da me funziona tutto perfettamente.

quindi l'errore è isolato.
Takeru
Prode Principiante
Messaggi: 14
Iscrizione: martedì 11 maggio 2010, 15:54

Re: [Desktop] Conky - Rings Lua Problemi

Messaggio da Takeru »

ma anche tu hai la versione 1.8 del conky, non è che devo mettermi la 1.7.2 per poter avere i rings, perchè non mi fa vedere nessun tipo di rings, anche se cambio il conkyrc e il file con estensione lua prendendolo da un altro tipo di conky, mi fa vedere solo i dati delle statistiche ma non i cerchi....è come se non mi legesse il file lua. Forse devo installare qualche pacchetto che mi manca, quello che ho su è conky all, magari ci devo mettere delle liberie che servono per poter vedere i file con estensione lua, mi sembra strano che non riesco a visualizzare i cerchi... :'(
Avatar utente
ventiseiad
Prode Principiante
Messaggi: 128
Iscrizione: domenica 14 settembre 2008, 15:02
Contatti:

Re: [Desktop] Conky - Rings Lua Problemi

Messaggio da ventiseiad »

A me dava il tuo stesso errore, poi ho messo il percorso completo nella sezione Lua Load mi ha funzionato
Takeru
Prode Principiante
Messaggi: 14
Iscrizione: martedì 11 maggio 2010, 15:54

Re: [Desktop] Conky - Rings Lua Problemi

Messaggio da Takeru »

scusami potresti spiegarti meglio? io ho messo il file con estensione .lua dentro una cartella che ho chiamato prova nel file system quindi per richiamare il file rings.lua tramite conky nel mio .conkyrc ho messo questa destinazione ~/prova/rings.lua giusto?? potresti dirmi dove sbaglio e come correggere il problema, grazie mille  ;)
Avatar utente
ventiseiad
Prode Principiante
Messaggi: 128
Iscrizione: domenica 14 settembre 2008, 15:02
Contatti:

Re: [Desktop] Conky - Rings Lua Problemi

Messaggio da ventiseiad »

Si scusa in effetti ho scritto un po' di fretta  ;D Aspetta un secondo ma la cartella prova è nel filesystem o nella home? Perché nel conkyrc se metti la scritta "~/prova/rings.lua" vuol dire "/home/nomeutente/prova/rings.lua". Ma se come hai scritto è nel file system il percorso giusto da mettere nel conkyrc è semplicemente "/prova/rings.lua".
Takeru
Prode Principiante
Messaggi: 14
Iscrizione: martedì 11 maggio 2010, 15:54

Re: [Desktop] Conky - Rings Lua Problemi

Messaggio da Takeru »

Ora non ho il mio pc con me,  cmq credo che il problema sia dovuto porprio a questo, di fatto la cartella sta nel file system e non sapevo che il simbolo ~/ indicasse la Home, spero di risolvere così, Grazie
Scrivi risposta

Ritorna a “Personalizzazione dell'ambiente desktop”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 2 ospiti