Hello again. I made my first post on these boards almost a month ago to show off my first attempt at conky. Today I want to post up another screenshot of my current conky, list a few of the changes I've made, and offer up my .conf file for perusal and suggestions.
This was my first iteration.
This is what it looks like today.
I've since figured out which fan is which, added desktop environment and window manager, cleaned up format, reduced punctuation, added video card GPU and memory frequencies, added hard disk drive temperature, and added top 5 memory processes.
Here is my .conf:
Code:
use_xft yes
xftfont Zekton:size=9
xftalpha 0.1
update_interval 2
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 250 5
maximum_width 1500
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no
default_color DimGray
default_shade_color red
default_outline_color green
alignment top_right
gap_x 25
gap_y 10
no_buffers no
uppercase no
cpu_avg_samples 2
net_avg_samples 1
override_utf8_locale yes
text_buffer_size 256
TEXT
# Save lm-sensors output to interval updated file #
${exec sensors > ~/.conky/lm-sensors_output}
${color #007FFF}System$color $hr
Operating System $alignr $sysname
Kernel $alignr $kernel
Architecture $alignr $machine
Desktop Environment $alignr ${pre_exec echo $DESKTOP_SESSION}
Window Manager $alignr ${pre_exec wmctrl -m | grep 'Name' | awk '{print $2}'}
File System $alignr ${fs_type /home}
Uptime $alignr ${uptime}
# CPU 1, 2, 3, and 4 Frequency, Temp, and Load #
${color #007FFF}Processing$color $hr
Manufacturer $alignr Intel
Core ${goto 60}Freq ${goto 150}Temp $alignr Load
1 ${goto 60}${freq_g cpu0} GHz ${goto 150}${exec grep 'Core 0' ~/.conky/lm-sensors_output | awk '{print $3}' | cut -c2-9} $alignr ${cpu cpu0}%
2 ${goto 60}${freq_g cpu1} GHz ${goto 150}${exec grep 'Core 1' ~/.conky/lm-sensors_output | awk '{print $3}' | cut -c2-9} $alignr ${cpu cpu1}%
3 ${goto 60}${freq_g cpu2} GHz ${goto 150}${exec grep 'Core 2' ~/.conky/lm-sensors_output | awk '{print $3}' | cut -c2-9} $alignr ${cpu cpu2}%
4 ${goto 60}${freq_g cpu3} GHz ${goto 150}${exec grep 'Core 3' ~/.conky/lm-sensors_output | awk '{print $3}' | cut -c2-9} $alignr ${cpu cpu3}%
# GPU stats #
${color #007FFF}Graphics$color $hr
Manufacturer $alignr Nvidia
Driver $alignr ${pre_exec nvidia-settings -q [gpu:0]/NvidiaDriverVersion | grep 'Attribute' | awk '{print $4}'}
GPU Frequency $alignr ${nvidia gpufreq} MHz
Memory Frequency $alignr ${nvidia memfreq} MHz
Temperature $alignr ${nvidia temp}°C
Fan Capacity $alignr ${exec nvidia-smi -q | grep 'Fan Speed' | awk '{print $4}'}%
Memory $alignr ${exec nvidia-smi -q --display=MEMORY | grep 'Used' | awk '{print $3}'} MB / ${pre_exec nvidia-smi -q --display=MEMORY | grep 'Total' | awk '{print $3}'} MB
# Fan stats #
${color #007FFF}Cooling$color $hr
CPU $alignr ${exec grep 'fan2' ~/.conky/lm-sensors_output | awk '{print $2}'} RPM
Front Intake $alignr ${exec grep 'fan3' ~/.conky/lm-sensors_output | awk '{print $2}'} RPM
Rear Exhaust $alignr ${exec grep 'fan4' ~/.conky/lm-sensors_output | awk '{print $2}'} RPM
Top Exhaust $alignr ${exec grep 'fan1' ~/.conky/lm-sensors_output | awk '{print $2}'} RPM
# RAM stats #
${color #007FFF}Memory$color $hr
RAM $alignr ${mem} / ${memmax}
Swap $alignr ${swap} / ${swapmax}
# HDD stats #
${color #007FFF}Storage$color $hr
HDD $alignr ${fs_used /home} / ${fs_size /home}
Temperature $alignr ${hddtemp /dev/sda}°C
# Network stats #
${color #007FFF}Network$color $hr
Local IP $alignr ${addr eth0}
Up $alignr $upspeed
Down $alignr $downspeed
# Processes #
${color #007FFF}Processes$color $hr
$alignr Processing
${top name 1} $alignr ${top cpu 1}%
${top name 2} $alignr ${top cpu 2}%
${top name 3} $alignr ${top cpu 3}%
${top name 4} $alignr ${top cpu 4}%
${top name 5} $alignr ${top cpu 5}%
$alignr Memory
${top_mem name 1} $alignr ${top mem 1}%
${top_mem name 2} $alignr ${top mem 2}%
${top_mem name 3} $alignr ${top mem 3}%
${top_mem name 4} $alignr ${top mem 4}%
${top_mem name 5} $alignr ${top mem 5}%
A couple of questions:
--I couldn't compile 1.9.0 from source with the --enable-nvidia tag because I kept getting the missing nvctrl.h error. So I installed conky-all from Ubuntu repositories. Now I can enjoy the native ${nvidia} variables, though it doesn't call all the data I want (memory usage and fan capacity). The version is 1.8.1. Am I missing anything cool from 1.9.0?
--Currently with my existing .conf file, my HDD is in constant use (every 2 seconds) because of my "${exec sensors > ~/.conky/lm-sensors_output}" line. I tried removing that line and just calling "sensors" in every line where I need it (temps, fan speeds). This kept my HDD from constantly saving a new "lm-sensors_output" file, but it increased my CPU usage across all 4 cores. I would normally idle at 0-2%, but with all those lines calling "sensors" I would idle at about 2-4%. Which way is more elegant and less intensive? Or is there a better way than the two I've tried?
--Lastly, sometimes the ${top_mem} order is out of whack. Is this a bug or am I doing it wrong?
EDIT: Real slick conky, Nolix!
Bookmarks