1 Conky (http://conky.rty.ca)
5 Conky is a system monitor for Linux that sits in the corner of your
6 desktop. Conky renders itself on the root window (on the desktop) or to
7 its own transparent window any special eyecandy.
8 Conky can show lots of info about your system, including:
12 * network interface information
13 * memory and swap usage
15 * machine, i686 for example
16 * system name, Linux for example
17 * temperatures from i2c-sensors
19 THINGS YOU SHOULD KNOW
21 Conky is generally very good on resources. However, certain objects in
22 Conky are harder on resources then others. In particular, the $tail and
23 $top objects are quite costly in comparison to the rest of Conky.
24 If you do use them, please do not complain about memory or CPU usage,
25 because you will simply be ignored.
27 With that out of the way, if you have a better way of doing something,
28 please submit a patch for Conky. I know I am certainly not the world's
29 best programmer, and I still have a lot to learn.
33 To compile and run Conky with all optional components (If you run Gentoo, see the "Ebuild" Section below):
35 ./configure --prefix=/usr --enable-xft --enable-mpd --enable-seti --enable-double-buffer --enable-own-window --enable-proc-uptime
39 Conky doesn't probably compile with other compilers than gcc and icc. It
40 doesn't compile with C89 compiler and not even with pure C99. It uses few
41 things that might not exist: strdup(), strcasecmp(), strncasecmp(), optarg
42 variable with getopt() and long long (not in C89). Crashes in file system
43 statistics stuff when compiled with icc, I don't know exactly why.
45 You can disable 'drawing to own window' feature in case you don't need it
46 by passing --disable-own-window to configure -script.
50 Conky is in Gentoo's Portage. Simply use "emerge conky" to install conky.
54 Default configuration file is $HOME/.conkyrc (can be changed from
55 conky.c among other things). See conkyrc.sample. You might want to copy
56 it to $HOME/.conkyrc and then start modifying it.
58 Configuration file confs
61 alignment Aligned position on screen, may be top_left,
62 top_right, bottom_left, bottom_right
63 background Boolean value, if true, Conky will be forked to
64 background when started
65 border_margin Border margin in pixels
66 border_width Border width in pixels
67 cpu_avg_samples The number of samples to average for CPU monitoring
68 default_color Default color and border color
69 default_shade_color Default shading color and border's shading color
70 default_outline_color Default outline color
71 Use the Xdbe extension? (eliminates flicker) It is
72 double_buffer highly recommended to use own window with this one
73 so double buffer won't be so big.
74 draw_borders Draw borders around text?
75 draw_shades Draw shades?
76 draw_outline Draw outlines?
77 font Font name in X, xfontsel can be used to get a nice
79 gap_x Gap between right or left border of screen, same as
80 passing -x at command line
81 gap_y Gap between top or bottom border of screen, same as
82 passing -y at command line
83 no_buffers Substract (file system) buffers from used memory?
84 mail_spool Mail spool for mail checking
85 metar_station METAR station code for weather, see
86 http://www.wrh.noaa.gov/ if you need to find
88 metar_server Define a custom METAR ftp server
89 metar_path Path on server to use
90 minimum_size Minimum size of window
91 mldonkey_hostname Hostname for mldonkey stuff, defaults to localhost
92 mldonkey_port Mldonkey port, 4001 default
93 mldonkey_login Mldonkey login, default none
94 mldonkey_password Mldonkey password, default none
95 net_avg_samples The number of samples to average for net data
96 override_utf8_locale Force UTF8? requires XFT
97 own_window Boolean, create own window to draw?
98 pad_percents Pad percentages to this many decimals (0 = no
100 stippled_borders Border stippling (dashing) in pixels
101 total_run_times Total number of times for Conky to update before
102 quitting. Zero makes Conky run forever
103 update_interval Update interval in seconds
104 uppercase Boolean value, if true, text is rendered in upper
106 use_spacer Adds spaces after certain objects to stop them
107 from moving other things around. Note that
108 this only helps if you are using a mono font,
109 such as Bitstream Vera Sans Mono.
110 use_xft Use Xft (anti-aliased font and stuff)
111 text After this begins text to be formatted on screen
113 Boolean variable without value in text means yes. Value may be also yes,
114 true or any negative or positive integer meaning yes. No, false or zero
116 There may be some variables in text. Variable is given either in format
117 $variable or in ${variable}. Latter allows characters right after the
118 variable and must be used in some stuff because of arguments.
123 -V Prints version and exits
124 -a ALIGNMENT Text alignment on screen, {top,bottom}_{left,right}
125 -b Use double buffering (eliminates flicker)
126 -c FILE Config file to load instead of $HOME/.conkyrc
127 -d Daemonize, fork to background
129 -h Prints command line help and exits
130 -o Create own window to draw
131 -t TEXT Text to render, remember single quotes, like -t '$uptime'
132 -u SECS Update interval
133 -w WIN_ID Window id to draw
137 Command line options override configurations defined in configuration
142 Variable Arguments Description
144 addr (interface) IP address for an interface
145 acpiacadapter ACPI ac adapter state.
146 acpifan ACPI fan state
147 acpitemp ACPI temperature.
148 adt746xcpu CPU temperature from therm_adt746x
149 adt746xfan Fan speed from therm_adt746x
150 alignr (num) Right-justify text, with space of N
151 alignc Align text to centre
152 battery (num) Remaining capasity in ACPI or APM
153 battery. ACPI battery number can be
154 given as argument (default is BAT0).
155 buffers Amount of memory buffered
156 cached Amount of memory cached
157 color (color) Change drawing color to color
158 cpu CPU usage in percents
159 cpubar (height) Bar that shows CPU usage, height is
160 bar's height in pixels
161 cpugraph (height),(width)CPU usage graph
162 downspeed net Download speed in kilobytes
163 downspeedf net Download speed in kilobytes with one
165 downspeedgraph net (height),(width) Download speed graph
166 exec shell command Executes a shell command and displays
167 the output in conky. warning: this
168 takes a lot more resources than other
169 variables. I'd recommend coding wanted
170 behaviour in C and posting a patch :-).
171 execbar shell command Same as exec, except if the first value
172 return is a value between 0-100, it
173 will use that number for a bar.
174 The size for the bar is currently fixed,
175 but that may change in the future.
176 execgraph shell command Same as execbar, but graphs values
177 execi interval, shell Same as exec but with specific interval.
178 command Interval can't be less than
179 update_interval in configuration.
180 fs_bar (height), (fs) Bar that shows how much space is used on
181 a file system. height is the height in
182 pixels. fs is any file on that file
184 fs_free (fs) Free space on a file system available
186 fs_free_perc (fs) Free percentage of space on a file
187 system available for users.
188 fs_size (fs) File system size
189 fs_used (fs) File system used space
190 hr (height) Horizontal line, height is the height in
192 i2c (dev), type, n I2C sensor from sysfs (Linux 2.6). dev
193 may be omitted if you have only one I2C
194 device. type is either in (or vol)
195 meaning voltage, fan meaning fan or
196 temp/tempf (first in C, second in F)
197 meaning temperature. n is number of the
198 sensor. See /sys/bus/i2c/devices/ on
200 if_running (process) if PROCESS is running, display
201 everything if_running and the matching $endif
202 if_existing (file) if FILE exists, display everything between
203 if_existing and the matching $endif
204 if_mounted (mountpoint) if MOUNTPOINT is mounted, display everything between
205 if_mounted and the matching $endif
206 else Text to show if any of the above are not true
207 kernel Kernel version
208 linkstatus (interface) Get the link status for wireless connections
209 loadavg (1), (2), (3) System load average, 1 is for past 1
210 minute, 2 for past 5 minutes and 3 for
212 machine Machine, i686 for example
213 mails Mail count in mail spool. You can use
214 program like fetchmail to get mails from
215 some server using your favourite
216 protocol. See also new_mails.
217 mem Amount of memory in use
218 membar (height) Bar that shows amount of memory in use
219 memmax Total amount of memory
220 memperc Percentage of memory in use
224 metar_tempf Temp in F
226 metar_dew_point There are a bunch of these
227 metar_rh and they are self-explanatory
234 ml_upload_counter total session upload in mb
235 ml_download_counter total session download in mb
236 ml_nshared_files number of shared files
237 ml_shared_counter total session shared in mb, buggy
238 in some mldonkey versions
239 ml_tcp_upload_rate tcp upload rate in kb/s
240 ml_tcp_download_rate tcp download rate in kb/s
241 ml_udp_upload_rate udp upload rate in kb/s
242 ml_udp_download_rate udp download rate in kb/s
243 ml_ndownloaded_files number of completed files
244 ml_ndownloading_files number of downloading files
246 mpd_artist Artist in current MPD song
247 (must be enabled at compile)
248 mpd_album Album in current MPD song
249 mpd_bar (height) Bar of mpd's progress
250 mpd_bitrate Bitrate of current song
251 mpd_status Playing, stopped, et cetera.
252 mpd_title Title of current MPD song
254 mpd_elapsed Song's elapsed time
255 mpd_length Song's length
256 mpd_percent Percent of song's progress
257 new_mails Unread mail count in mail spool.
259 outlinecolor (color) Change outline color
260 pre_exec shell command Executes a shell command one time before
261 conky displays anything and puts output
263 processes Total processes (sleeping and running)
264 running_processes Running processes (not sleeping),
266 shadecolor (color) Change shading color
267 stippled_hr (space), Stippled (dashed) horizontal line
269 swapbar (height) Bar that shows amount of swap in use
270 swap Amount of swap in use
271 swapmax Total amount of swap
272 swapperc Percentage of swap in use
273 sysname System name, Linux for example
274 offset pixels Move text over by N pixels
275 tail logfile, lines (interval)
276 Displays last N lines of supplied text
277 text file. If interval is not supplied,
278 Conky assumes 2x Conky's interval.
280 Max of 30 lines can be displayed.
281 time (format) Local time, see man strftime to get more
282 information about format
283 totaldown net Total download, overflows at 4 GB on
284 Linux with 32-bit arch and there doesn't
285 seem to be a way to know how many times
286 it has already done that before conky
288 top type, num This takes arguments in the form:
290 Basically, processes are ranked from
291 highest to lowest in terms of cpu
292 usage, which is what <num> represents.
293 The types are: "name", "pid", "cpu", and
295 There can be a max of 10 processes listed.
296 top_mem type, num Same as top, except sorted by mem usage
298 totalup net Total upload, this one too, may overflow
299 updates Number of updates (for debugging)
300 upspeed net Upload speed in kilobytes
301 upspeedf net Upload speed in kilobytes with one
303 upspeedgraph net (height),(width) Upload speed graph
305 uptime_short Uptime in a shorter format
307 seti_prog Seti@home current progress
308 seti_progbar (height) Seti@home current progress bar
309 seti_credit Seti@hoome total user credit
312 colors are parsed using XParsecolor(), there might be a list of them:
313 /usr/X11R6/lib/X11/rgb.txt. color can be also in #rrggbb format (hex).
315 Note that when displaying bytes, power is 1024 and not 1000 so 1M really
316 means 1024*1024 bytes and not 1000*1000.
320 Drawing to root or some other desktop window directly doesn't work with
321 all window managers. Especially doesn't work well with Gnome and it has
322 been reported that it doesn't work with KDE either. Nautilus can be
323 disabled from drawing to desktop with program gconf-editor. Uncheck
324 show_desktop in /apps/nautilus/preferences/. There is -w switch in Conky
325 to set some specific window id. You might find xwininfo -tree useful to
326 find the window to draw to. You can also use -o argument which makes
327 Conky to create its own window.