Conky
It displays the rich system info embedded into your desktop background.
- Install
sudo apt-get install conky
- Temperature probes
For older Dell laptops module i8k must be loaded and Conky use ${i8k_cpu_temp} to recall CPU temperature.
sudo apt-get install i8kutils
For modern laptops lm-sensors, then use ${acpitemp}°C to display the ambient system temperature.
sudo apt-get install lm-sensors
- Configuration
User based config file is located in ~/.conkyrc
file. The rich features that can be displayed on the background are limitless. Below is the config based on Lenovo.
# UBUNTU-CONKY # A comprehensive conky script, configured for use on # Ubuntu / Debian Gnome, without the need for any external scripts. # # Based on conky-jc and the default .conkyrc. # INCLUDES: # - tail of /var/log/messages # - netstat shows number of connections from your computer and application/PID making it. Kill spyware! # - for Dell laptops module i8k must be loaded from package: i8kutils then cpu_temp can be read using i8k_cpu_temp # # ${if_existing /proc/net/route - it checks if default GW exists, it is helpful with external IP determination # # Connction monitor # # Connections in:${color #606060} ${tcp_portmon 1 32767 count}$color Connections out:${color #606060} ${tcp_portmon 32768 61000 count}$color Total:${color #606060} ${tcp_portmon 1 65535 count} # # $color Inbound Connection ${alignr} Local Service/Port # ${color #606060} ${tcp_portmon 1 32767 rhost 0} ${alignr} ${tcp_portmon 1 32767 lservice 0} # ${tcp_portmon 1 32767 rhost 1} ${alignr} ${tcp_portmon 1 32767 lservice 1} # ${tcp_portmon 1 32767 rhost 2} ${alignr} ${tcp_portmon 1 32767 lservice 2} # ${tcp_portmon 1 32767 rhost 3} ${alignr} ${tcp_portmon 1 32767 lservice 3} # ${tcp_portmon 1 32767 rhost 4} ${alignr} ${tcp_portmon 1 32767 lservice 4} # ${tcp_portmon 1 32767 rhost 5} ${alignr} ${tcp_portmon 1 32767 lservice 5} # # $color Outbound Connection ${alignr} Remote Service/Port$color # ${color #606060} ${tcp_portmon 32768 61000 rhost 0} ${alignr} ${tcp_portmon 32768 61000 rservice 0} # ${tcp_portmon 32768 61000 rhost 1} ${alignr} ${tcp_portmon 32768 61000 rservice 1} # ${tcp_portmon 32768 61000 rhost 2} ${alignr} ${tcp_portmon 32768 61000 rservice 2} # ${tcp_portmon 32768 61000 rhost 3} ${alignr} ${tcp_portmon 32768 61000 rservice 3} # ${tcp_portmon 32768 61000 rhost 4} ${alignr} ${tcp_portmon 32768 61000 rservice 4} # ${tcp_portmon 32768 61000 rhost 5} ${alignr} ${tcp_portmon 32768 61000 rservice 5} # # Create own window instead of using desktop (required in nautilus) own_window yes own_window_type override own_window_transparent yes own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager # Use double buffering (reduces flicker, may not work for everyone) double_buffer yes # fiddle with window use_spacer right # Use Xft? use_xft yes xftfont DejaVu Sans:size=8 xftalpha 0.8 text_buffer_size 1536 # Update interval in seconds update_interval 3.0 # Minimum size of text area # minimum_size 200 5 # Maximum width maximum_width 210 # Draw shades? draw_shades no # Text stuff draw_outline no # amplifies text if yes draw_borders no uppercase no # set to yes if you want all text to be in uppercase # Stippled borders? stippled_borders 3 # border margins # border_margin 9 # border width border_width 10 # Default colors and also border colors, grey90 == #e5e5e5 default_color E8E8E8 #own_window_argb_visual yes #own_window_argb_value 0 own_window_colour brown own_window_transparent yes # Text alignment, other possible values are commented #alignment top_left alignment bottom_right #alignment bottom_left #alignment bottom_right # Gap between borders of screen and text gap_x 30 gap_y 30 # stuff after 'TEXT' will be formatted on screen TEXT $color ${color orange}SYSTEM ${hr 2}$color $nodename $sysname $kernel on $machine uptime: ${uptime} #causing overheating as of 27/07/2012 #external ip: ${execi 65535 wget -q -O - checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'} ${color orange}CPU Processes: $processes Run: $running_processes ${hr 2}$color ${freq}MHz Load: ${loadavg} Temp: ${acpitemp}°C #${i8k_cpu_temp} - Dell temp probe ${cpugraph 000000 ffffff} NAME $alignr PID CPU% MEM% ${top name 1} $alignr ${top pid 1} ${top cpu 1} ${top mem 1} ${top name 2} $alignr ${top pid 2} ${top cpu 2} ${top mem 2} ${top name 3} $alignr ${top pid 3} ${top cpu 3} ${top mem 3} ${top name 4} $alignr ${top pid 4} ${top cpu 4} ${top mem 4} ${color orange}MEMORY used $mem of $memmax $color ${memgraph 000000 ffffff} ${color orange}HDD USAGE $color root: ${fs_used /} of ${fs_size /} ${fs_bar 6 /}$color #sda1: ${if_existing /windows} ${fs_free /windows} of ${fs_size /windows} ${fs_bar 6 /windows}$color $endif #sda5: ${if_existing /dane} ${fs_free /dane} of ${fs_size /dane} ${fs_bar 6 /dane}$color $endif Swap: $swapperc% ${swapbar 6}$color #eth0 - LAN card interface, replace if different ${color orange}NETWORK WIRED $alignr ip:${addr eth0} Down: $color${downspeed eth0} k/s ${alignr}Up: ${upspeed eth0} k/s ${downspeedgraph eth0 25,100 000000 ff0000} ${alignr}${upspeedgraph eth0 25,100 000000 00ff00}$color Total: ${totaldown eth0} ${alignr}Total: ${totalup eth0} #wlan0 - wireless interface, replace everywhere if different ${color orange}WIRELESS $alignr ip:${addr wlan0} Down: $color${downspeed wlan0} k/s ${alignr}Up: ${upspeed wlan0} k/s ${downspeedgraph wlan0 25,100 000000 ff0000} ${alignr}${upspeedgraph wlan0 25,100 000000 00ff00}$color Total: ${totaldown wlan0} ${alignr}Total: ${totalup wlan0} ${color orange}NETSTAT ${hr 2}$color no connections / PID / application ${execi 30 netstat -ept | grep ESTAB | awk '{print $9}' | cut -d: -f1 | sort | uniq -c | sort -nr} ${color orange}LOGGING AUTH.LOG ${hr 2}$color ${execi 30 tail -n5 /var/log/auth.log | awk '{print " ",$5,$6,$7,$8,$9,$10}' | fold -w40}
Conky for VM
It contains a lot of unnecessary info but you can easly scrap it if you do not need it.
use_xft yes xftfont Terminus:size=8 xftalpha 0.8 update_interval 1.0 total_run_times 0 own_window yes own_window_transparent yes own_window_argb_visual yes own_window_type normal own_window_class conky-semi own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager background no double_buffer yes minimum_size 300 200 draw_shades no draw_outline no draw_borders no draw_graph_borders yes default_shade_color black default_outline_color white default_bar_size 150 5 default_gauge_size 20 20 imlib_cache_size 0 draw_shades no alignment top_right gap_x 5 gap_y 35 no_buffers yes uppercase no cpu_avg_samples 2 override_utf8_locale no default_color ECEAE4 color1 9f907d color2 01C400 TEXT ${font AvantGardeLTMedium:bold:size=10}${color Tan1}Info ${color slate grey}${hr 2}${font} ${color1}Date ${alignr}${color slate grey}${time %a,}${color}${time %e %B %G} ${color1}Time ${alignr}${color}${time %T} ${font AvantGardeLTMedium:bold:size=10}${color Tan1}System ${color slate grey}${hr 2}${font} ${color1}Hostname ${alignr}${color}${nodename} ${color1}${sysname} ${alignr}${color}${kernel}-${machine} ${color1}CPU ${alignr}${color}${freq_g}GHz ${color1}Loadaverage ${alignr}${color}${loadavg 1} ${loadavg 2} ${loadavg 3} ${color1}Uptime ${alignr}${color}${uptime} ${color1}Battery Status ${alignr}${color}${battery_short BAT1} ${color1}Cpu Temperature ${alignr}${color}${acpitemp}C ${color1}Hdd Temperature ${alignr}${color}${hddtemp /dev/sda}C ${font AvantGardeLTMedium:bold:size=10}${color Tan1}Processors ${color slate grey}${hr 2}${font} ${color1}Core 1 ${alignr}${color}${cpu cpu1}% ${cpubar cpu1} ${color1}Core 2 ${alignr}${color}${cpu cpu2}% ${cpubar cpu2} ${font AvantGardeLTMedium:bold:size=10}${color Tan1}Memory ${color slate grey}${hr 2}${font} ${color1}Memory ${color}${alignr}${memeasyfree} / ${memmax} ${color1}Currently ${color}${alignr}${memperc}% ${membar} ${font AvantGardeLTMedium:bold:size=10}${color Tan1}Filesystem ${color slate grey}${hr 2}${font} ${color1}/ ${color}${alignc}${fs_used /} / ${fs_size /} ${color}${alignr}${fs_free_perc /} % ${color}${fs_bar 5,300 /} ${font AvantGardeLTMedium:bold:size=10}${color Tan1}Networking ${color slate grey}${hr 2}${font} ${if_existing /proc/net/route wlan0}${color1}Ip ${color}${alignr}${addr wlan0} ${color1}AP ${color}${alignr}${wireless_essid wlan0} ${color1}Signal ${color}${alignr}${wireless_link_qual_perc wlan0}${wireless_link_bar 10,100 wlan0} ${color1}Download ${alignr}${color}${downspeed wlan0}${downspeedgraph wlan0 10,100} ${color1}Upload ${alignr}${color}${upspeed wlan0}${upspeedgraph wlan0 10,100} ${color1}Total Down/Up ${alignr}${color}${totaldown wlan0}${color1}/${color}${totalup wlan0} ${else}${if_existing /proc/net/route eth0}${color1}Ip ${color}${alignr}${addr eth0} ${color1}Download ${alignr}${color}${downspeed eth0}${downspeedgraph eth0 10,100} ${color1}Upload ${alignr}${color}${upspeed eth0}${upspeedgraph eth0 10,100} ${color1}Total Down/Up ${alignr}${color}${totaldown eth0}${color1}/${color}${totalup eth0}${endif}${endif} ${font AvantGardeLTMedium:bold:size=10}${color Tan1}Top Processes ${color slate grey}${hr 2}${font} ${color1}${top name 1} ${alignr}${color}${top cpu 1} ${top mem 1} ${color1}${top name 2} ${alignr}${color}${top cpu 2} ${top mem 2} ${color1}${top name 3} ${alignr}${color}${top cpu 3} ${top mem 3} ${color1}${top name 4} ${alignr}${color}${top cpu 4} ${top mem 4} ${color1}${top name 5} ${alignr}${color}${top cpu 5} ${top mem 5}
Conky On and Off script
This is some times annoying to enable or disable conky on your dektop. The following scrip comes with help.
piotr@d600:~$ cat conky_on_off.sh #!/bin/sh # click to start, click to stop if pidof conky | grep [0-9] > /dev/null then exec killall conky else exec conky fi
Start Conky on boot in Debian
Debian uses conbination of /etc/init.d scripts and symbolic links in /etc/rc?.d. Each symbolic link starting with S will run and starting with K does not at the given runlevel.
On Debian and Ubuntu, runlevels 2, 3, 4 and 5 are multi-users runlevels. Runlevel 0 is Halt. Runlevel 1 is single user mode Runlevel 6 is reboot
Having the conky_on_off.sh script copied into /etc/init.d and using update-rc.d to create default symbolic links will boot conky at the start.
sudo cp ~/conky_on_off.sh /etc/init.d/ sudo update-rc.d conky_on_off.sh defaults
Remove from auto-boot
sudo update-rc.d -f conky_on_off.sh remove