conky

start_conky.sh: #!/bin/bash sleep 25 conky -c /home/kldov/.conky/conkyrc_HUD & exit 0
conkyrc_HUD: #============================================================================== # conkyrc_HUD # # 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 400 gap_y 450 minimum_size 250 130 maximum_width 250 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 00FFBB lua_load ~/.conky/conky_HUD.lua lua_draw_hook_post main TEXT ${color1}${font ubuntu:size=10}${time %H:%M:%S} ${voffset 25} ${goto 100}${font Ubuntu:size=8,weight:bold}${color}DISKS ${goto 110}${font Ubuntu:size=7,weight:normal}${color1}size / ${goto 105}${font Ubuntu:size=9,weight:normal}${color1}${offset 5}${voffset -4}${fs_size /} ${goto 105}${font Ubuntu:size=7,weight:normal}${color1}size /home ${goto 105}${font Ubuntu:size=9,weight:normal}${color1}${offset 5}${voffset -4}${fs_size /home} ${voffset -70} ${goto 30}${font Ubuntu:size=8,weight:bold}${color}MEM ${voffset -25} ${goto 180}${font Ubuntu:size=8,weight:bold}${color}CPU conky_HUD.lua: --============================================================================== -- conky_HUD.lua -- -- author : SLK -- version : v2011062101 -- license : Distributed under the terms of GNU GPL version 2 or later -- --============================================================================== require ‘cairo’ ——————————————————————————— — gauge DATA gauge = { { name=’cpu’, arg=’cpu0′, max_value=100, x=180, y=120, graph_radius=50, graph_thickness=5, graph_start_angle=0, graph_unit_angle=0.9, graph_unit_thickness=0.9, graph_bg_colour=0x00FFBB, graph_bg_alpha=0.3, graph_fg_colour=0x00FFBB, graph_fg_alpha=0.0, hand_fg_colour=0x00FFBB, hand_fg_alpha=1.0, txt_radius=40, txt_weight=1, txt_size=10.0, txt_fg_colour=0x00FFBB, txt_fg_alpha=0.8, graduation_radius=30, graduation_thickness=0, graduation_mark_thickness=1, graduation_unit_angle=27, graduation_fg_colour=0x00FFBB, 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=180, y=120, graph_radius=60, graph_thickness=5, graph_start_angle=0, graph_unit_angle=0.9, graph_unit_thickness=0.9, graph_bg_colour=0x00FFBB, graph_bg_alpha=0.3, graph_fg_colour=0x00FFBB, graph_fg_alpha=0.0, hand_fg_colour=0x00FFBB, hand_fg_alpha=1.0, txt_radius=70, txt_weight=1, txt_size=10.0, txt_fg_colour=0x00FFBB, txt_fg_alpha=0.8, graduation_radius=55, graduation_thickness=5, graduation_mark_thickness=2, graduation_unit_angle=27, graduation_fg_colour=0x00FFBB, 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=40, y=85, graph_radius=34, graph_thickness=5, graph_start_angle=180, graph_unit_angle=2, graph_unit_thickness=2, graph_bg_colour=0x00FFBB, graph_bg_alpha=0.3, graph_fg_colour=0x00FFBB, graph_fg_alpha=0.0, hand_fg_colour=0x00FFBB, hand_fg_alpha=1.0, txt_radius=20, txt_weight=1, txt_size=10.0, txt_fg_colour=0x00FFBB, txt_fg_alpha=0.8, graduation_radius=24, graduation_thickness=6, graduation_mark_thickness=2, graduation_unit_angle=10, graduation_fg_colour=0x00FFBB, graduation_fg_alpha=0.3, caption=», caption_weight=1, caption_size=10.0, caption_fg_colour=0xFFFFFF, caption_fg_alpha=0.5, }, { name=’fs_used_perc’, arg=’/’, max_value=100, x=120, y=70, graph_radius=40, graph_thickness=4, graph_start_angle=210, graph_unit_angle=2, graph_unit_thickness=2, graph_bg_colour=0x00FFBB, graph_bg_alpha=0.3, graph_fg_colour=0x00FFBB, graph_fg_alpha=0.0, hand_fg_colour=0x00FFBB, hand_fg_alpha=1.0, txt_radius=32, txt_weight=1, txt_size=10.0, txt_fg_colour=0x00FFBB, txt_fg_alpha=0.8, graduation_radius=46, graduation_thickness=0, graduation_mark_thickness=2, graduation_unit_angle=20, graduation_fg_colour=0x00FFBB, 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=120, y=70, graph_radius=50, graph_thickness=8, graph_start_angle=210, graph_unit_angle=2, graph_unit_thickness=2, graph_bg_colour=0x00FFBB, graph_bg_alpha=0.3, graph_fg_colour=0x00FFBB, graph_fg_alpha=0.0, hand_fg_colour=0x00FFBB, hand_fg_alpha=1.0, txt_radius=60, txt_weight=1, txt_size=10.0, txt_fg_colour=0x00FFBB, txt_fg_alpha=0.8, graduation_radius=58, graduation_thickness=4, graduation_mark_thickness=2, graduation_unit_angle=20, graduation_fg_colour=0x00FFBB, graduation_fg_alpha=0.3, caption=», 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_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 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 5 then go_gauge_rings(display) end cairo_surface_destroy(cs) cairo_destroy(display) end

Реклама

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s