The original is by londonali1010 and can be seen here
@arclance - A very public thank-you! Since 9-13, and on through to yesterday, after multiple PM's, arclance came through and fixed my issues. Within 48 hours of talking and typing and trial and error, arclance posted updates to the lua and python parts of his weather script that totally took care of my issues. All the credit goes to arclance, as I am only as good as the copy and paste commands allow me to be. IMO arclance went above and beyond in helping me. The GNU/Linux community is only as good as it is, because of folks like arclance! Also IMO, no other OS out there can compete with the awesome "community" we using Linux enjoy.
Below is my conflagration of conky's on my laptop;
Thanks,
Jed
Last edited by Jedcurtis; September 18th, 2012 at 05:10 PM. Reason: changed pic
I think I have it how I want it now. Thanks to those people that create and helpers to assist with problems.
Desktop is 1440x900
Here is the conkyrc. The lua file to follow. You will need the ubuntu logo or other logo.
luaCode:# 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 fahrenheit # 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 250 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=12 xftalpha 0.5 uppercase no temperature_unit fahrenheit 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=12}${alignr}HOME${font} ${font caviar dreams:size=18}${color FFFFFF}${alignr}${weather http://weather.noaa.gov/pub/data/observations/metar/stations/ KIFP temperature temperature 30} °F${font} ${font caviar dreams:size=12}${color FFFFFF}${alignr}${weather http://weather.noaa.gov/pub/data/observations/metar/stations/ KIFP wind_speed wind_speed 30} KPH${font} ${font caviar dreams:size=12}${color FFFFFF}${alignr}${weather http://weather.noaa.gov/pub/data/observations/metar/stations/ KIFP wind_dir wind_dir 30} DIR${font} ${font caviar dreams:size=12}${color FFFFFF}${alignr}${weather http://weather.noaa.gov/pub/data/observations/metar/stations/ KIFP humidity humidity 30} %HUM${font} ${image ~/.conky/new-ubuntu-logo.png -p 64,125 -s 70x20} ${color FFFFFF}${goto 10}${voffset -30}${cpu cpu1}% ${color FF6600}${goto 10}CPU ${color FFFFFF}${goto 30}${voffset 10}${cpu cpu2}% ${color FF6600}${goto 30}CPU ${color FFFFFF}${goto 50}${voffset 10}${memperc}% ${color FF6600}${goto 50}RAM ${color FFFFFF}${goto 75}${voffset 10}${fs_used_perc /}% ${color FF6600}${goto 75}HDD ${color FFFFFF}${goto 90}${voffset 10}${downspeed eth0} ${color FFFFFF}${goto 90}${upspeed eth0} ${color FF6600}${goto 90}NET ${color FFFFFF}${font caviar dreams:size=12}Uptime: ${uptime_short} ${color FFFFFF}${font caviar dreams:size=12}Processes: ${processes} ${color FFFFFF}${font caviar dreams:size=12}Running: ${running_processes} ${color FFFFFF}${font caviar dreams:size=12}${alignr}${nodename} ${color FFFFFF}${font caviar dreams:size=12}${alignr}${pre_exec cat /etc/issue.net} $machine ${color FFFFFF}${font caviar dreams:size=12}${alignr}Kernel: ${kernel}
Code:--[[ 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='cpu1', 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='cpu', arg='cpu2', 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='memperc', 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) if value == nil then value = 0 end 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
Last edited by PaulInBHC; September 19th, 2012 at 04:24 AM.
Thanks for this link PaulInHBC. Lot's of amazing work in here.
I like what you have done (how do I call up the lua text for editing), and I especially like some of what Jedcurtis has done as well. Wow!
Sorry for all the linux newb Questions but this is pretty cool stuff, and I can't seem to leave well enough alone (always trying to make things: just a little better)
JedCurtis: How did you set up the weather forecast on the bottom of your screen and the scrolling (looks like it's scrolling) news update at the top. Way cool!
EDIT: When ever I try to add anything under the the temperature on the screen, it throws the script in the CPU, RAM, Swap, Disk, Net rings further down the screen. This makes the script off center, and the more I add under the temperature the worse it gets. With three additions under the temperature (%Hum, Dir, Knots, ) it throws the script so far off it becomes centered on the ring below it.
What do I need to edit to allow me to add to the list under the Temperature and still keep the script centered on there perspective rings?
Last edited by AndyOpie150; September 20th, 2012 at 12:11 AM.
messed around with conky for the first time.
The clock_rings.lua script goes in your home/.conky folder. I edit that with gedit to change things like cpu1 and cpu2 for what is being monitored with the rings.
I change the text next to the ring in the conkyrc. That goes in your home folder.
I played with the goto and voffset numbers to see where the text would show up. One thing that I found was that I could change something, click save, then click save again. The second save would restart conky and I could see the change. I had to use a minus number for the first voffset (verticle offset) to bring them all up higher.
Code:${color FFFFFF}${goto 10}${voffset -30}${cpu cpu1}% ${color FF6600}${goto 10}CPU ${color FFFFFF}${goto 30}${voffset 10}${cpu cpu2}% ${color FF6600}${goto 30}CPU ${color FFFFFF}${goto 50}${voffset 10}${memperc}% ${color FF6600}${goto 50}RAM ${color FFFFFF}${goto 75}${voffset 10}${fs_used_perc /}% ${color FF6600}${goto 75}HDD ${color FFFFFF}${goto 90}${voffset 10}${downspeed eth0} ${color FFFFFF}${goto 90}${upspeed eth0} ${color FF6600}${goto 90}NET
Last edited by PaulInBHC; September 20th, 2012 at 02:17 AM. Reason: code formating
The weather script conky at the bottom is courtesy of "arclance" whom I mostly 'know' from the #!Crunchbang conky forums! That link is to their 'Monster Conky Thead' which is another good source of info on conky. He's (as far as I'm concerned, hands down the best conky weather guy out there, king of the lua so-to-speak!) actually updated scripts for me to get all of mine working. In other words I get none of the credit for how it looks. I'm just good at the 'copy/paste' commands! There are way to many people to thank for what I have on my screen. It is basically all just 'copied' from existing conky's out there and 'adjusted' to suit my computer. All of us have different hardware, so yours will look different than mine for example. Don't be afraid to play with conky, as Linux is pretty hard to break. That said, you can break it, so make sure you've backed up the important stuff.
The conky on the right is mostly credited to vinDSL's conky script which I just removed the weather portion of since I use "arclance" weather script on the bottom. You'll find that everyone here is more than willing to help. It's the main reason I've completely switched to Linux.
The ticker at the top is just that. A RSS news reader that scrolls ticker like across the top of the screen. (you may even be able to set it to the bottom) It is available through the Ubuntu Software Center by just doing a search at the top for "Tickr".
Be careful though, once you get the conky fever, it can be hard to get rid of it! 48 hour days of non-stop work suddenly happen. hehe enjoy. Always glad to hear of a new Linux user...
Jed
(I have figured out simple stuff about it and I'll do whatever I can to help if I can)
Thanks for all the info Guys. I have a need, a need to tinker! You should see my Android Phone.
Who me hooked on conky? I have this thread on my Chromium Speed dial.
Tickr was super simple to install.
Need to work on the weather and conky rings. When I get everything how I like it (at least for this month) I'll post a screen shot and script.
Last edited by AndyOpie150; September 20th, 2012 at 02:09 PM.
Bookmarks