Monday, 8 August 2011

My Conky conf file

Updated - Weather forecast included

Conky is a well knwon, light-weight system monitor for X. It is highly customizable and you can use it to display useful information in your desktop. The configuration file can be found in ~/.conkyrc.

The package for Ubuntu can be found in the software control centre or type
sudo apt-get install conky

This is a print screen of how I use it.


curl, tail and awk packages are used in the example above. If conky fails, check if you have them installed.

I have included my conf file below. Advanced readers should give a look in the links below to modify the conf file according to their needs.
Official site - http://conky.sourceforge.net/

To use the weather forecast you need to go here, to ubuntuforums, and follow the instructions according to your needs.

In a few words you' ll need to find your location in accuweather and copy the URL, place the accuweather_conky folder in your home folder and then add/modify the lines from the conky_acc_int to your .conkyrc file.

TeoBigusGeekus has created full how-to pdf files that will guide you through.

Good luck.


~/.confrc file


background yes
use_xft yes
xftfont HandelGotD:size=9
xftalpha 0.5
update_interval 0.5
total_run_times 0
own_window yes
own_window_type normal
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
double_buffer yes
minimum_size 450
maximum_width 200
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no
default_color gray
default_shade_color black
default_outline_color green
alignment bm
gap_x -230
gap_y 150
no_buffers yes
uppercase no
cpu_avg_samples 2
override_utf8_locale no


TEXT
$sysname $kernel on $alignr $machine
Uptime $alignr $uptime
Load $alignr $loadavg
Hostname $alignr $nodename
${hr 2}
$alignc${color 8e8e8e}Lemnos${execi 600 bash ~/accuweather_conky/accuw_script}
${font conkyweather:size=40}${execi 600  sed -n '6p' ~/accuweather_conky/images}${font}${goto 75}${voffset -40}${execpi 600 sed -n '1p' ~/accuweather_conky/days}
${goto 75}High: ${execpi 600 sed -n '2p' ~/accuweather_conky/temperatures}C  Low: ${execpi 600 sed -n '3p' ~/accuweather_conky/temperatures}C




${font conkyweather:size=40}${execi 600  sed -n '7p' ~/accuweather_conky/images}${font}${goto 75}${voffset -40}${execpi 600 sed -n '3p' ~/accuweather_conky/days}
${goto 75}High: ${execpi 600 sed -n '4p' ~/accuweather_conky/temperatures}C  Low: ${execpi 600 sed -n '5p' ~/accuweather_conky/temperatures}C




${font conkyweather:size=40}${execi 600  sed -n '8p' ~/accuweather_conky/images}${font}${goto 75}${voffset -40}${execpi 600 sed -n '5p' ~/accuweather_conky/days}
${goto 75}High: ${execpi 600 sed -n '6p' ~/accuweather_conky/temperatures}C  Low: ${execpi 600 sed -n '7p' ~/accuweather_conky/temperatures}C




${hr 2}
$alignc NETWORK 
External IP $alignr ${exec curl -s http://checkip.dyndns.org | grep -i address | sed s'/<[^>]*>//g' | sed s'/Current IP CheckCurrent IP Address: //' | sed 's/\(.*\)./\1/'}
eth0 $alignr ${addr eth0}
Inbound $alignr ${downspeed eth0} kb/s
${downspeedgraph eth0}
Outbound $alignr ${upspeed eth0} kb/s
${upspeedgraph eth0}
${hr 2}
$alignc CPU 
CPU1 running at $alignr ${freq_g cpu1} GHz
CPU2 running at $alignr ${freq_g cpu2} GHz
CPU1  ${cpu cpu1}% ${alignc 35}${cpubar  cpu1}
CPU2  ${cpu cpu2}% ${alignc 35}${cpubar  cpu2}
${hr 2}
$alignc ${exec aticonfig --adapter=0 --od-gettemperature | sed s'/Adapter 0 - //' | grep ATI | sed s'/ Series//'}
GPU load $alignr ${execi 2 aticonfig --adapter=0 --od-getclocks | grep -i GPU | cut -c 30-}
GPU Temp $alignr ${execi 2 aticonfig --adapter=0 --od-gettemperature | tail -n1 | awk '{ printf $5 } '} Celsius
${hr 2}
$alignc MEMORY
$mem / $memmax $alignr $memperc%
$membar
swap $alignc $swap / $swapmax $alignr $swapperc%
${swapbar}
${hr 2}
$alignc FILE SYSTEMS
/ $alignc ${fs_used /} / ${fs_size /} $alignr ${fs_free_perc /}%
${fs_bar /}
/home $alignc ${fs_used /home} / ${fs_size /home} $alignr ${fs_free_perc /home}%
${fs_bar /home}
${hr 2}
$alignc PROCESSES (${running_processes} / ${processes})
NAME $alignr PID     CPU
${top name 1} $alignr ${top pid 1}  ${top cpu 1}
${top name 2} $alignr ${top pid 2}  ${top cpu 2}
${top name 3} $alignr ${top pid 3}  ${top cpu 3}
${top name 4} $alignr ${top pid 4}  ${top cpu 4}
${top name 5} $alignr ${top pid 5}  ${top cpu 5}
${hr 2}

How to find your external IP from terminal

Hi there Linux fans once more.

If you don't have a static IP from your ISP, then the line below can help you. It's a small combination of terminal commands that return the WAN IP you have.

Type in terminal.
curl -s http://checkip.dyndns.org | grep -i address | sed s'/<[^>]*>//g' | sed s'/Current IP CheckCurrent IP Address: //' | sed 's/\(.*\)./\1/'

Short explanation
The idea is to use a DNS server to tell the IP you have.
I use checkip.dyndns.org because the html result is easy to handle.
1. curl command scans the html.
2. The result is piped to grep for the first instance of address.
3. This results is again piped to sed editor that removes the < > symbols from the html tags.
4. (Guess what) the result is again piped to sed again to remove the strings that we don't want. Result = IP.
5. Last pipe removes the last symbol added at the end.

Give it a try. It comes handy.

I have included it in my conky source file. How? Check here.

Good luck.

Raspberry pi - Introduction

Hello once again. This is the first of series of Raspberry pi related posts. I believe that the Raspberry pi (rpi from now on) can help u...