Jump to content

Ultra-Mega tutorial de CONKY !


Recommended Posts

 

Imagen IPB

 

 

Mi configuración de Conky es la siguiente:

 

######################
# - Conky settings - #
######################
update_interval 1
total_run_times 0
net_avg_samples 1
cpu_avg_samples 1

imlib_cache_size 0
double_buffer yes
no_buffers yes

format_human_readable

#####################
# - Text settings - #
#####################
use_xft yes
xftfont Droid Sans:size=8
override_utf8_locale yes
text_buffer_size 2048

#############################
# - Window specifications - #
#############################
own_window_class Conky
own_window yes
own_window_type override
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

alignment top_right
gap_x 25
gap_y 40
minimum_size 182 600
maximum_width 182

default_bar_size 60 8

#########################
# - Graphics settings - #
#########################
draw_shades no

default_color D6D6D6

color0 F2F2F2
color1 7296BB
color2 FFFFFF

TEXT
${font Droid Sans:style=Bold:size=8}SISTEMA $stippled_hr${font}
##############
# - SYSTEM - #
##############
${color0}${voffset 6}${font OpenLogos:size=19}u${font}${color}${goto 32}${voffset -14}Kernel:  ${alignr}${color2}${kernel}${color}
${goto 32}Actividad: ${alignr}${color2}${uptime}${color}
# |--UPDATES
${goto 32}Actualizaciones: ${alignr}${font Droid Sans:style=Bold:size=8}${color1}${execi 360 aptitude search "~U" | wc -l | tail}${color}${font} ${color2}Paquetes${color}
# |--CPU
${offset 1}${color0}${font Poky:size=16}P${font}${offset -19}${voffset 9}${cpubar cpu0 4,18}${color}${voffset -16}${goto 32}CPU1: ${font Droid Sans:style=Bold:size=8}${color1}${cpu cpu1}%${font} ${alignr}${font Droid Sans:style=Bold:size=8}${color1}${execi 30 sensors | grep 'Core 0' | cut -c15-16}°C${color}${font}  ${color2}${cpugraph cpu1 8,50 7296BB 7296BB}${color}
${goto 32}CPU2: ${font Droid Sans:style=Bold:size=8}${color1}${cpu cpu2}%${font} ${alignr}${font Droid Sans:style=Bold:size=8}${color1}${execi 30 sensors | grep 'Core 1' | cut -c15-16}°C${color}${font}  ${color2}${cpugraph cpu2 8,50 7296BB 7296BB}${color}
# |--MEM
${color0}${font Poky:size=16}M${font}${color}${goto 32}${voffset -7}RAM: ${font Droid Sans:style=Bold:size=8}${color1}$memperc%${color}${font}
${offset 1}${voffset 2}${color0}${membar 4,18}${color}${goto 32}${voffset -2}F: ${font Droid Sans:style=Bold:size=8}${color2}${memeasyfree}${color}${font} U: ${font Droid Sans:style=Bold:size=8}${color2}${mem}${color}${font}
# |--SWAP
${voffset 2}${color0}${font Poky:size=14}s${font}${color}${voffset -8}${goto 32}SWAP: ${font Droid Sans:style=Bold:size=8}${color1}${swapperc}%${color}${font}
${voffset 4}${offset 1}${color0}${swapbar 4,18}${color}${voffset -4}${goto 32}F: ${font Droid Sans:style=Bold:size=8}${color2}$swapmax${color}${font} U: ${font Droid Sans:style=Bold:size=8}${color2}$swap${color}${font}
# |--PROC
${voffset 2}${color0}${font Poky:size=15}a${font}${color}${goto 32}${voffset -10}Procesos: ${color2}${alignr 13}CPU${alignr}RAM${color}
${voffset -1}${goto 42}${color2}${top name 1}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 1}${alignr }${top mem 1}${color}${font}
${voffset -1}${goto 42}${color2}${top name 2}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 2}${alignr }${top mem 2}${color}${font}
${voffset -1}${goto 42}${color2}${top name 3}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 3}${alignr }${top mem 3}${color}${font}
${voffset -1}${goto 42}${color2}${top name 4}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 4}${alignr }${top mem 4}${color}${font}
${voffset -1}${goto 42}${color2}${top name 5}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 5}${alignr }${top mem 5}${color}${font}
${voffset -1}${goto 42}${color2}${top name 6}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 6}${alignr }${top mem 6}${color}${font}
${voffset -1}${goto 42}${color2}${top name 7}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 7}${alignr }${top mem 7}${color}${font}
${voffset -1}${goto 42}${color2}${top name 8}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 8}${alignr }${top mem 8}${color}${font}
${voffset -1}${goto 42}${color2}${top name 9}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 9}${alignr }${top mem 9}${color}${font}
${voffset -1}${goto 42}${color2}${top name 10}${color}${font Droid Sans:style=Bold:size=8}${color1} ${goto 124}${top cpu 10}${alignr }${top mem 10}${color}${font}
#############
# - CLOCK - #
#############
${voffset 4}${font Droid Sans:style=Bold:size=8}FECHA $stippled_hr${font}
${voffset -12}${goto 28}${font Arial Black:size=38}${color2}${time %H}${color}${font}${voffset -28}${font Droid Sans:style=Bold:size=11}${color2}${time :%M}${time :%S}${color}${font}
${voffset -2}${goto 100}${font Droid Sans:style=Bold:size=8}${color2}${time %A}${color}${font}
${goto 100}${time %d %b %Y}
################
# - CALENDAR - #
################
${voffset -2}${color0}${font Poky:size=16}D${font}${voffset -8}${font Droid Sans:style=Bold:size=7}${offset -17}${voffset 4}${time %d}${font}${color}${voffset -1}${font Droid Sans Mono:size=7}${execpi 300 DJS=`date +%_d`; cal |sed '2,7!d'| sed '/./!d' | sed 's/^/${goto 32} /'| sed 's/$/ /' | sed 's/^/ /' | sed /" $DJS "/s/" $DJS "/" "'${font Droid Sans:style=Bold:size=8}${color1}'"$DJS"'${color}${font Droid Sans Mono:size=7}'" "/}${voffset -1}
####################
# - MEDIA PLAYER - #
####################
${voffset 4}${font Droid Sans:style=Bold:size=8}MEDIA PLAYER $stippled_hr${font}
${execi 6 /home/felipe/.conkycolors/bin/conkyCover}${execpi 2 (null)/bin/conkyRhythmbox -t /home/felipe/.conkycolors/templates/conkyPlayer.template}
##############
# - NVIDIA - #
##############
${voffset 4}${font Droid Sans:style=Bold:size=8}NVIDIA $stippled_hr${font}
${color0}${voffset -4}${font Poky:size=17}N${font}${color}${goto 32}${voffset -8}GPU Temp:${alignr}${font Droid Sans:style=Bold:size=8}${color1} ${exec nvidia-settings -q GPUCoreTemp | grep Attribute | cut -d ' ' -f 6 | cut -c 1-2}${font}${color}°C
${goto 32}GPU Clock:${alignr}${font Droid Sans:style=Bold:size=8}${color1} ${exec nvidia-settings -q GPU2DClockFreqs -t}${font}${color}MHz
${goto 32}Video RAM:${alignr}${font Droid Sans:style=Bold:size=8}${color1} ${exec nvidia-settings -q VideoRam -t}${font}${color}KiB
${goto 32}Driver Version:${alignr}${font Droid Sans:style=Bold:size=8}${color1} ${exec nvidia-settings -q NvidiaDriverVersion -t}${font}${color}
##########
# - HD - #
##########
${voffset 4}${font Droid Sans:style=Bold:size=8}HD $stippled_hr${font}
# |--HDTEMP1
  ${voffset 4}${color0}${font Weather:size=15}y${font}${color}${voffset -3}${goto 32}Temperatura: ${font Droid Sans:style=Bold:size=8}${color1}${execi 120 hddtemp /dev/sda -n --unit=C}°C${color}${font}${alignr}${color2}/dev/sda${color}
${execpi 30 (null)/bin/conkyHD3}

 

Salud!

Link to comment
Share on other sites

  • 3 weeks later...
  • Replies 51
  • Created
  • Last Reply

Top Posters In This Topic

  • 3 weeks later...
  • 3 weeks later...

Hello!! Tengo Fedora 15 con KDE, sin Compiz, y no importa la configuración que ocupe, el conky no logra renderizar la transparencia.

 

 

Imagen IPB

 

 

Será que depende de Compiz para ser transparente, o será que estoy haciendo algo mal?? Dejo mi configuración, a ver si me pueden ayudar.

 

 

 

background no

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 60

gap_y 50

#minimum_size 220 550

maximum_width 220

own_window yes

own_window_type normal

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 666666

 

lua_load /home/alldham/.conky/conky_grey.lua

lua_draw_hook_post main

 

TEXT

${voffset 35}

${goto 95}${color 377EC6}${font Cantarell:size=22}${time %e}${color1}${offset -10}${font Cantarell:size=10}${time %a}

${goto 85}${color2}${voffset -2}${font Cantarell:size=9}${time %b}${voffset -2} ${color3}${font Cantarell:size=12}${time %Y}${font}

 

${voffset 80}

${goto 90}${font Cantarell:size=7,weight:bold}${color}CPU

${goto 90}${font Cantarell:size=7,weight:normal}${color1}${top name 1}${alignr}${top cpu 1}%

${goto 90}${font Cantarell:size=7,weight:normal}${color2}${top name 2}${alignr}${top cpu 2}%

#${goto 90}${font Cantarell:size=7,weight:normal}${color3}${top name 3}${alignr}${top cpu 3}%

${goto 90}${cpugraph 10,100 666666 FFFFFF}

 

${goto 90}${voffset -10}${font Cantarell:size=7,weight:normal}${color}${threads} process

 

${voffset 20}

${goto 90}${font Cantarell:size=7,weight:bold}${color}MEM

${goto 90}${font Cantarell:size=7,weight:normal}${color1}${top_mem name 1}${alignr}${top_mem mem 1}%

${goto 90}${font Cantarell:size=7,weight:normal}${color2}${top_mem name 2}${alignr}${top_mem mem 2}%

${goto 90}${font Cantarell:size=7,weight:normal}${color3}${top_mem name 3}${alignr}${top_mem mem 3}%

 

${voffset 15}

${goto 90}${font Cantarell:size=7,weight:bold}${color}DISKS

 

${goto 90}${font Cantarell:size=7,weight:normal}${color}used: ${fs_used /home} /home

${goto 90}${font Cantarell:size=7,weight:normal}${color}used: ${fs_used /} /

${goto 90}${diskiograph 30,100 666666 FFFFFF}${voffset -30}

 

${voffset 10}

${goto 70}${font Cantarell:size=18,weight:bold}${color3}net${alignr}${color2}${font Cantarell:size=7,weight:bold}${color1}${if_up eth0}eth ${addr eth0} ${endif}${if_up wlan0}wifi ${addr wlan0}${endif}

${goto 90}${font Cantarell:size=7,weight:bold}${color}open ports: ${alignr}${color2}${tcp_portmon 1 65535 count}

${goto 90}${font Cantarell:size=7,weight:bold}${color}${offset 10}IP${alignr}DPORT

${goto 90}${font Cantarell:size=7,weight:normal}${color1}${tcp_portmon 1 65535 rip 0}${alignr 1}${tcp_portmon 1 65535 rport 0}

${goto 90}${font Cantarell:size=7,weight:normal}${color1}${tcp_portmon 1 65535 rip 1}${alignr 1}${tcp_portmon 1 65535 rport 1}

${goto 90}${font Cantarell:size=7,weight:normal}${color1}${tcp_portmon 1 65535 rip 2}${alignr 1}${tcp_portmon 1 65535 rport 2}

${goto 90}${font Cantarell:size=7,weight:normal}${color1}${tcp_portmon 1 65535 rip 3}${alignr 1}${tcp_portmon 1 65535 rport 3}

${goto 90}${font Cantarell:size=7,weight:normal}${color1}${tcp_portmon 1 65535 rip 4}${alignr 1}${tcp_portmon 1 65535 rport 4}

${goto 90}${font Cantarell:size=7,weight:normal}${color1}${tcp_portmon 1 65535 rip 5}${alignr 1}${tcp_portmon 1 65535 rport 5}

 

 

 

Usa un script .lua

 

 

 

--==============================================================================

-- conky_grey.lua

--

-- author : SLK

-- version : v2011062701

-- 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=115, y=85,

graph_radius=65,

graph_thickness=3,

graph_unit_angle=30, graph_unit_thickness=30,

graph_bg_colour=0xB1B3B3, graph_bg_alpha=0.5,

graph_fg_colour=0xB1B3B3, graph_fg_alpha=0.9,

txt_radius=73,

txt_weight=1, txt_size=10.0,

txt_fg_colour=0xB1B3B3, txt_fg_alpha=1.1,

graduation_radius=53,

graduation_thickness=6, graduation_mark_thickness=5,

graduation_unit_angle=30,

graduation_fg_colour=0xB1B3B3, graduation_fg_alpha=0.3,

},

}

-- MINUTES

clock_m = {

{

name='time', arg='%M', max_value=60,

x=115, y=85,

graph_radius=60,

graph_thickness=2,

graph_unit_angle=6, graph_unit_thickness=6,

graph_bg_colour=0xFDFDC0, graph_bg_alpha=0.3,

graph_fg_colour=0xFDFDC0, graph_fg_alpha=0.7,

txt_radius=80,

txt_weight=1, txt_size=8.0,

txt_fg_colour=0xFDFDC0, txt_fg_alpha=0.9,

graduation_radius=57,

graduation_thickness=0, graduation_mark_thickness=3,

graduation_unit_angle=30,

graduation_fg_colour=0xFDFDC0, graduation_fg_alpha=0.3,

},

}

-- SECONDS

clock_s = {

{

name='time', arg='%S', max_value=60,

x=115, y=85,

graph_radius=55,

graph_thickness=2,

graph_unit_angle=6, graph_unit_thickness=2,

graph_bg_colour=0xffffff, graph_bg_alpha=0.3,

graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.7,

txt_radius=40,

txt_weight=0, txt_size=10.0,

txt_fg_colour=0xFFF400, txt_fg_alpha=1.1,

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=210,

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.2,

graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.5,

hand_fg_colour=0xEF5A29, hand_fg_alpha=0.0,

txt_radius=34,

txt_weight=0, txt_size=8.0,

txt_fg_colour=0xFFFFFF, txt_fg_alpha=0.7,

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=210,

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.3,

graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.7,

hand_fg_colour=0xEF5A29, hand_fg_alpha=0.0,

txt_radius=10,

txt_weight=0, txt_size=8.0,

txt_fg_colour=0xFFFFFF, txt_fg_alpha=0.7,

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=325,

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.2,

graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.5,

hand_fg_colour=0xEF5A29, hand_fg_alpha=0.0,

txt_radius=10,

txt_weight=0, txt_size=8.0,

txt_fg_colour=0xFFFFFF, txt_fg_alpha=0.7,

graduation_radius=23,

graduation_thickness=8, 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=418,

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.2,

graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.5,

hand_fg_colour=0xEF5A29, hand_fg_alpha=0.0,

txt_radius=34,

txt_weight=0, txt_size=8.0,

txt_fg_colour=0xFFFFFF, txt_fg_alpha=0.7,

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=418,

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.2,

graph_fg_colour=0xFFFFFF, graph_fg_alpha=0.5,

hand_fg_colour=0xEF5A29, hand_fg_alpha=0.0,

txt_radius=10,

txt_weight=0, txt_size=8.0,

txt_fg_colour=0xFFFFFF, txt_fg_alpha=0.7,

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, "cantarell", 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, "cantarell", 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, "cantarell", 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)

end

for i in pairs(clock_m) do

load_clock_rings(display, clock_m)

end

for i in pairs(clock_s) do

load_clock_rings(display, clock_s)

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)

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

 

 

 

Gracias :)

Link to comment
Share on other sites

  • 4 weeks later...
  • 4 weeks later...
  • 2 weeks later...
  • 3 weeks later...

te pasaste loco.. está muy bueno el tuto..no obstante a punta de ensayo y error me encontré que para el comando:

 

gedit $HOME/.conky/conkyrc

(yo al menos) necesito anteponer "sudo" .. de lo contrario no puedo modicar el archivo "conkyrc"

muchas .. gracias .. me ayudó bastante a entender el conky

Link to comment
Share on other sites

  • 10 months later...

Muy agradecido del tutorial...Baje una pre-configuración de conky y lo instalé según los pasos señalados...Espero no haber cometido errores...

 

Se agradece :anonimo:

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...