1 .\" -*- coding: us-ascii -*-
4 conky \- A system monitor for X originally based on the torsmo code, but more kickass. It just keeps on given'er. Yeah.
8 .if (\nxu > (\n(.lu / 2)) .nr x (\n(.lu / 5)
14 Conky is a system monitor for X originally based on the torsmo code.
15 Since it's original conception, Conky has changed a fair bit from it's predecessor.
16 Conky can display just about anything, either on your root desktop or in it's own window.
17 Conky has many built-in objects, as well as the ability to execute programs and scripts,
18 then display the output from stdout.
20 We are always looking for help, and anyone interested in becoming a developer is welcome.
21 Please use the facilities at SourceForge to make bug reports, feature requests, and submit patches.
23 Thanks for your interest in Conky.
25 For users compiling from source, make sure you have the X development libraries installed.
26 This should be a package along the lines of "libx11-dev or xorg-x11-dev".
28 Gentoo users -- Conky is in Gentoo's Portage... simply use "emerge app-admin/conky" for installation.
29 There is also usually an up-to-date ebuild within Conky's package or in CVS.
31 Debian,etc. users -- Conky will be in Debian's repositories soon (by mid-September, hopefully), and then
32 Ubuntu shortly thereafter. Until then, "dpkg -i" the .deb package to install.
34 Example to compile and run Conky with all optional components (note that some configure options may differ for your system):
36 \fBsh autogen.sh\fR \fB# Only required if building from CVS\fR
38 \fB\&./configure \fR\fB\-\-prefix=/usr \-\-mandir=/usr/share/man \-\-infodir=/usr/share/info \-\-datadir=/usr/share \-\-sysconfdir=/etc \-\-localstatedir=/var/lib \-\-enable\-xft \-\-enable\-seti \-\-enable\-double\-buffer \-\-enable\-own\-window \-\-enable\-proc\-uptime \-\-enable\-mpd \-\-enable\-mldonkey \-\-enable\-x11 \-\-enable\-portmon \-\-enable\-xmms \-\-enable\-bmp \-\-enable\-audacious \-\-enable\-infopipe \-\-enable\-bmpx \fR
42 \fBmake install\fR \fB# Optional\fR
46 Conky probably doesn't compile with compilers other than gcc and icc.
47 It doesn't compile with C89 compiler and not even with pure C99.
48 It uses a few things that might not exist: strdup(), strcasecmp(), strncasecmp(),
49 optarg variable with getopt() and long long (not in C89). Crashes in file system
50 statistics stuff when compiled with icc, I don't know exactly why.
52 You can disable 'drawing to own window' feature in case you don't need it by passing
53 --disable-own-window to configure -script.
56 Conky is generally very good on resources. However, certain objects in
57 Conky are harder on resources then others. In particular, the $tail,
58 $top, $font, and $graph objects are quite costly in comparison to the rest of Conky.
60 If you do use them, please do not complain about memory or CPU usage,
61 unless you think something's seriously wrong (mem leak, etc.).
63 An easy way to force Conky to reload your ~/.conkyrc: "killall -SIGUSR1 conky".
64 Saves you the trouble of having to kill and then restart.
66 IMPORTANT: For previous Conky users, Conky 1.3 no longer supports the metar stuff.
67 mdsplib was causing way too many problems. Hopefully there'll be a better solution in Conky 2.x...
69 Command line options override configurations defined in configuration file.
72 Prints version and exits
75 \fB\-a \fR\fBALIGNMENT\fR
76 Text alignment on screen, {top,bottom}_{left,right} or none
80 Use double buffering (eliminates "flicker")
84 Config file to load instead of $HOME/.conkyrc
88 Daemonize Conky, aka fork to background
96 Prints command line help and exits
100 Create own window to draw
104 Text to render, remember single quotes, like -t ' $uptime '
107 \fB\-u \fR\fBSECONDS\fR
111 \fB\-w \fR\fBWIN_ID\fR
115 \fB\-x \fR\fBX_COORDINATE\fR
119 \fB\-y \fR\fBY_COORDINATE\fR
122 .SH "CONFIGURATION SETTINGS"
123 Default configuration file is $HOME/.conkyrc (can be changed from
124 conky.c among other things). See conkyrc.sample. If installing from Debian package,
125 this should be in /usr/share/doc/conky/examples ("gunzip conkyrc.sample.gz" to get conkyrc.sample).
127 You might want to copy it to $HOME/.conkyrc and then start modifying it.
128 Other configs can be found at http://conky.sf.net
131 Aligned position on screen, may be top_left, top_right, bottom_left, bottom_right, or none
135 Boolean value, if true, Conky will be forked to background when started
139 Set conky on the bottom of all other applications
143 Border margin in pixels
147 Border width in pixels
150 \fBcpu_avg_samples\fR
151 The number of samples to average for CPU monitoring
155 Default color and border color
158 \fBdefault_shade_color\fR
159 Default shading color and border's shading color
162 \fBdefault_outline_color\fR
163 Default outline color
167 Use the Xdbe extension? (eliminates flicker) It is highly recommended to use own window with this one so double buffer won't be so big.
171 Draw borders around text?
174 \fBdraw_graph_borders\fR
175 Draw borders around graphs?
187 Font name in X, xfontsel can be used to get a nice font
191 Gap between right or left border of screen, same as passing -x at command line
195 Gap between top or bottom border of screen, same as passing -y at command line
199 Substract (file system) buffers from used memory?
203 Mail spool for mail checking
206 \fBmaximum_width\fR \fBpixels\fR
207 Maximum width of window
210 \fBminimum_size\fR \fBwidth (height)\fR
211 Minimum size of window
214 \fBmin_port_monitors\fR
215 Allow for the creation of at least this number of port monitors (if 0 or not set, default is 16)
218 \fBmin_port_monitor_connections\fR
219 Allow each port monitor to track at least this many connections (if 0 or not set, default is 256)
222 \fBmldonkey_hostname\fR
223 Hostname for mldonkey stuff, defaults to localhost
227 Mldonkey port, 4001 default
231 Mldonkey login, default none
234 \fBmldonkey_password\fR
235 Mldonkey password, default none
250 \fBnet_avg_samples\fR
251 The number of samples to average for net data
254 \fBoverride_utf8_locale\fR
255 Force UTF8? requires XFT
259 Boolean, create own window to draw?
262 \fBown_window_transparent\fR
263 Boolean, set pseudo-transparency?
266 \fBown_window_colour\fR \fBcolour\fR
267 If own_window_transparent no, set a specified background colour (defaults to black). Takes either a hex value (#ffffff) or a valid RGB name (see /usr/lib/X11/rgb.txt)
271 Print text to stdout.
275 Pad percentages to this many decimals (0 = no padding)
278 \fBstippled_borders\fR
279 Border stippling (dashing) in pixels
282 \fBtotal_run_times\fR
283 Total number of times for Conky to update before quitting. Zero makes Conky run forever
286 \fBupdate_interval\fR
287 Update interval in seconds
291 Boolean value, if true, text is rendered in upper case
295 Adds spaces after certain objects to stop them from moving other things around. Note that this only helps if you are using a mono font, such as Bitstream Vera Sans Mono.
299 Use Xft (anti-aliased font and stuff)
303 Manually set the WM_CLASS name. Defaults to "conky".
307 Use specified player/plugin for the xmms status variables. Valid items are: none, xmms, bmp, audacious and infopipe. (default is none). Note that bmpx is currently handled separately.
311 After this begins text to be formatted on screen
314 Colors are parsed using XParsecolor(), there might be a list of them:
315 /usr/X11R6/lib/X11/rgb.txt. Also,
316 http://sedition.com/perl/rgb.html [http://sedition.com/perl/rgb.html].
317 Color can be also in #rrggbb format (hex).
318 Note that when displaying bytes, power is 1024 and not 1000 so 1M really
319 means 1024*1024 bytes and not 1000*1000.
321 \fBaddr\fR \fBinterface\fR
322 IP address for an interface
326 ACPI ac adapter state.
334 ACPI temperature in C.
338 ACPI temperature in F.
342 CPU temperature from therm_adt746x
346 Fan speed from therm_adt746x
349 \fBalignr\fR \fB(num)\fR
350 Right-justify text, with space of N
353 \fBalignc\fR \fB(num)\fR
358 Display APM AC adapter status (FreeBSD only)
361 \fBapm_battery_life\fR
362 Display APM battery life in percent (FreeBSD only)
365 \fBapm_battery_time\fR
366 Display remaining APM battery life in hh:mm:ss or "unknown" if
367 AC adapterstatus is on-line or charging (FreeBSD only)
370 \fBbattery\fR \fB(num)\fR
371 Remaining capacity in ACPI or APM battery. ACPI battery number can be given as argument (default is BAT0).
375 Artist in current BMPx track
379 Album in current BMPx track
383 Title of the current BMPx track
387 Track number of the current BMPx track
391 Bitrate of the current BMPx track
395 URI of the current BMPx track
399 Amount of memory buffered
403 Amount of memory cached
406 \fBcolor\fR \fB(color)\fR
407 Change drawing color to color
410 \fBcpu\fR \fB(cpuN)\fR
411 CPU usage in percents. For SMP machines, the CPU number can be provided as an argument. cpu0 is the total usage, and >=cpu1 are individual CPUs.
414 \fBcpubar\fR \fB(cpu number) (height),(width)\fR
415 Bar that shows CPU usage, height is bar's height in pixels. See $cpu for more info on SMP.
418 \fBcpugraph\fR \fB(cpu number) (height),(width) (gradient colour 1) (gradient colour 2)\fR
419 CPU usage graph, with optional colours in hex, minus the #. See $cpu for more info on SMP.
423 Displays current disk IO.
426 \fBdiskiograph\fR \fB(height),(width) (gradient colour 1) (gradient colour 2) (scale)\fR
427 Disk IO graph, colours defined in hex, minus the #. If scale is non-zero, it becomes the scale for the graph.
430 \fBdownspeed\fR \fBnet\fR
431 Download speed in kilobytes
434 \fBdownspeedf\fR \fBnet\fR
435 Download speed in kilobytes with one decimal
438 \fBdownspeedgraph\fR \fBnet (height),(width) (gradient colour 1) (gradient colour 2) (scale)\fR
439 Download speed graph, colours defined in hex, minus the #. If scale is non-zero, it becomes the scale for the graph.
443 Text to show if any of the above are not true
446 \fBexec\fR \fBcommand\fR
447 Executes a shell command and displays the output in conky. warning: this takes a lot more resources than other variables. I'd recommend coding wanted behaviour in C and posting a patch.
450 \fBexecbar\fR \fBcommand\fR
451 Same as exec, except if the first value return is a value between 0-100, it will use that number for a bar. The size for the bar is currently fixed, but that may change in the future.
454 \fBexecgraph\fR \fBcommand\fR
455 Same as execbar, but graphs values.
458 \fBexeci\fR \fBinterval command\fR
459 Same as exec but with specific interval. Interval can't be less than update_interval in configuration. See also $texeci
462 \fBexecibar\fR \fBinterval command\fR
463 Same as execbar, except with an interval
466 \fBexecigraph\fR \fBinterval command\fR
467 Same as execigraph, but takes an interval arg graphs values
470 \fBfont\fR \fBfont\fR
471 Specify a different font. Only applies to one line.
475 Returns CPU frequency in MHz
479 Returns CPU frequency in GHz
483 Returns CPU frequency in MHz, but is calculated by counting to clock cycles to complete an instruction. Only available for x86/amd64.
487 Returns CPU frequency in GHz, but is calculated by counting to clock cycles to complete an instruction. Only available for x86/amd64.
490 \fBfs_bar\fR \fB(height),(width) fs\fR
491 Bar that shows how much space is used on a file system. height is the height in pixels. fs is any file on that file system.
494 \fBfs_free\fR \fB(fs)\fR
495 Free space on a file system available for users.
498 \fBfs_free_perc\fR \fB(fs)\fR
499 Free percentage of space on a file system available for users.
502 \fBfs_size\fR \fB(fs)\fR
506 \fBfs_used\fR \fB(fs)\fR
507 File system used space
510 \fBhead\fR \fBlogfile lines (interval)\fR
511 Displays first N lines of supplied text text file. If interval is not supplied, Conky assumes 2x Conky's interval. Max of 30 lines can be displayed, or until the text buffer is filled.
514 \fBhr\fR \fB(height)\fR
515 Horizontal line, height is the height in pixels
518 \fBi2c\fR \fB(dev) type n\fR
519 I2C sensor from sysfs (Linux 2.6). dev may be omitted if you have only one I2C device. type is either in (or vol) meaning voltage, fan meaning fan or temp/tempf (first in C, second in F) meaning temperature. n is number of the sensor. See /sys/bus/i2c/devices/ on your local computer.
522 \fBi8k_ac_status\fR \fB\fR
523 If running the i8k kernel driver for Inspiron laptops, displays whether ac power is on, as listed in /proc/i8k (translated to human-readable). Beware that this is by default not enabled by i8k itself.
526 \fBi8k_bios\fR \fB\fR
527 If running the i8k kernel driver for Inspiron laptops, displays the bios version as listed in /proc/i8k.
530 \fBi8k_buttons_status\fR \fB\fR
531 If running the i8k kernel driver for Inspiron laptops, displays the volume buttons status as listed in /proc/i8k.
534 \fBi8k_cpu_temp\fR \fB\fR
535 If running the i8k kernel driver for Inspiron laptops, displays the cpu temperature in celsius, as reported by /proc/i8k.
538 \fBi8k_cpu_tempf\fR \fB\fR
539 If running the i8k kernel driver for Inspiron laptops, displays the cpu temperature in farenheit, as reported by /proc/i8k.
542 \fBi8k_left_fan_rpm\fR \fB\fR
543 If running the i8k kernel driver for Inspiron laptops, displays the left fan's rate of rotation, in revolutions per minute as listed in /proc/i8k. Beware, some laptops i8k reports these fans in reverse order.
546 \fBi8k_left_fan_status\fR \fB\fR
547 If running the i8k kernel driver for Inspiron laptops, displays the left fan status as listed in /proc/i8k (translated to human-readable). Beware, some laptops i8k reports these fans in reverse order.
550 \fBi8k_right_fan_rpm\fR \fB\fR
551 If running the i8k kernel driver for Inspiron laptops, displays the right fan's rate of rotation, in revolutions per minute as listed in /proc/i8k. Beware, some laptops i8k reports these fans in reverse order.
554 \fBi8k_right_fan_status\fR \fB\fR
555 If running the i8k kernel driver for Inspiron laptops, displays the right fan status as listed in /proc/i8k (translated to human-readable). Beware, some laptops i8k reports these fans in reverse order.
558 \fBi8k_serial\fR \fB\fR
559 If running the i8k kernel driver for Inspiron laptops, displays your laptop serial number as listed in /proc/i8k.
562 \fBi8k_version\fR \fB\fR
563 If running the i8k kernel driver for Inspiron laptops, displays the version formatting of /proc/i8k.
566 \fBif_running\fR \fB(process)\fR
567 if PROCESS is running, display everything if_running and the matching $endif
570 \fBif_existing\fR \fB(file)\fR
571 if FILE exists, display everything between if_existing and the matching $endif
574 \fBif_mounted\fR \fB(mountpoint)\fR
575 if MOUNTPOINT is mounted, display everything between if_mounted and the matching $endif
582 \fBlinkstatus\fR \fBinterface\fR
583 Get the link status for wireless connections
587 (1,2,3)> System load average, 1 is for past 1 minute, 2 for past 5 minutes and 3 for past 15 minutes.
591 Machine, i686 for example
595 Mail count in mail spool. You can use program like fetchmail to get mails from some server using your favourite protocol. See also new_mails.
599 Amount of memory in use
602 \fBmembar\fR \fB(height),(width)\fR
603 Bar that shows amount of memory in use
607 Total amount of memory
611 Percentage of memory in use
615 Artist in current MPD song must be enabled at compile
619 Album in current MPD song
622 \fBmpd_bar\fR \fB(height),(width)\fR
623 Bar of mpd's progress
627 Bitrate of current song
631 Playing, stopped, et cetera.
635 Title of current MPD song
651 Percent of song's progress
655 Random status (On/Off)
659 Repeat status (On/Off)
663 Prints the MPD track field
667 Prints the MPD name field
671 Prints the file name of the current MPD song
675 Unread mail count in mail spool.
682 \fBoutlinecolor\fR \fB(color)\fR
686 \fBpre_exec\fR \fBshell command\fR
687 Executes a shell command one time before conky displays anything and puts output as text.
691 Total processes (sleeping and running)
694 \fBrunning_processes\fR
695 Running processes (not sleeping), requires Linux 2.6
698 \fBshadecolor\fR \fB(color)\fR
702 \fBstippled_hr\fR \fB(space)\fR
703 Stippled (dashed) horizontal line
706 \fBswapbar\fR \fB(height),(width)\fR
707 Bar that shows amount of swap in use
711 Amount of swap in use
719 Percentage of swap in use
723 System name, Linux for example
726 \fBtcp_portmon\fR \fBport_begin port_end item (index)\fR \fI(ip4 only at present)\fR
727 TCP port monitor for specified local ports. Port numbers must be in the range 1 to 65535. Valid items are:
729 count - total number of connections in the range
731 rip - remote ip address
733 rhost - remote host name
735 rport - remote port number
737 lip - local ip address
739 lhost - local host name
741 lservice - local service name from /etc/services
743 The connection index provides you with access to each connection in the port monitor. The monitor will return information for index values from 0 to n-1 connections. Values higher than n-1 are simply ignored. For the "count" item, the connection index must be omitted. It is required for all other items.
747 ${tcp_portmon 6881 6999 count} -
748 displays the number of connections in the bittorrent port range
750 ${tcp_portmon 22 22 rip 0} -
751 displays the remote host ip of the first sshd connection
753 ${tcp_portmon 22 22 rip 9} -
754 displays the remote host ip of the tenth sshd connection
756 ${tcp_portmon 1 1024 rhost 0} -
757 displays the remote host name of the first connection on a privileged port
759 ${tcp_portmon 1 1024 rport 4} -
760 displays the remote host port of the fifth connection on a privileged port
762 ${tcp_portmon 1 65535 lservice 14} -
763 displays the local service name of the fifteenth connection in the range of all ports
765 Note that port monitor variables which share the same port range actually refer to the same monitor, so many references to a single port range for different items and different indexes all use the same monitor internally. In other words, the program avoids creating redundant monitors.
767 \fBtexeci\fR \fBinterval command\fR
768 Runs a command at an interval inside a thread and displays the output. Same as $execi, except the command is run inside a thread. Use this if you have a slow script to keep Conky updating. You should make the interval slightly longer then the time it takes your script to execute. For example, if you have a script that take 5 seconds to execute, you should make the interval at least 6 seconds. See also $execi.
771 \fBoffset\fR \fB(pixels)\fR
772 Move text over by N pixels. See also $voffset.
775 \fBtail\fR \fBlogfile lines (interval)\fR
776 Displays last N lines of supplied text text file. If interval is not supplied, Conky assumes 2x Conky's interval. Max of 30 lines can be displayed, or until the text buffer is filled.
779 \fBtime\fR \fB(format)\fR
780 Local time, see man strftime to get more information about format
783 \fBtotaldown\fR \fBnet\fR
784 Total download, overflows at 4 GB on Linux with 32-bit arch and there doesn't seem to be a way to know how many times it has already done that before conky has started.
787 \fBtop\fR \fBtype, num\fR
788 This takes arguments in the form:top (name) (number) Basically, processes are ranked from highest to lowest in terms of cpu usage, which is what (num) represents. The types are: "name", "pid", "cpu", and mem". There can be a max of 10 processes listed.
791 \fBtop_mem\fR \fBtype, num\fR
792 Same as top, except sorted by mem usage instead of cpu
795 \fBtotalup\fR \fBnet\fR
796 Total upload, this one too, may overflow
799 \fBupdates\fR \fBNumber of updates\fR
803 \fBupspeed\fR \fBnet\fR
804 Upload speed in kilobytes
807 \fBupspeedf\fR \fBnet\fR
808 Upload speed in kilobytes with one decimal
811 \fBupspeedgraph\fR \fBnet (height),(width) (gradient colour 1) (gradient colour 2) (scale)\fR
812 Upload speed graph, colours defined in hex, minus the #. If scale is non-zero, it becomes the scale for the graph.
820 Uptime in a shorter format
824 Seti@home current progress
827 \fBseti_progbar\fR \fB(height),(width)\fR
828 Seti@home current progress bar
832 Seti@home total user credit
835 \fBvoffset\fR \fB(pixels)\fR
836 Change verticle offset by N pixels. Negative values will cause text to overlap. See also $offset.
839 \fBxmms_bar\fR \fB(height),(width)\fR
840 xmms / bmp / audacious / infopipe: progress bar
844 xmms / bmp / audacious / infopipe: bitrate of current tune
848 xmms / bmp / audacious / infopipe: number of audio channels of current tune
852 xmms / bmp / audacious / infopipe: full path and filename of current tune
856 xmms / bmp / audacious / infopipe: sampling frequency of current tune
860 xmms / bmp / audacious / infopipe: total length of current tune as MM:SS
863 \fBxmms_length_seconds\fR
864 xmms / bmp / audacious / infopipe: total length of current tune in seconds
867 \fBxmms_playlist_position\fR
868 xmms / bmp / audacious / infopipe: playlist position of current tune
871 \fBxmms_playlist_length\fR
872 xmms / bmp / audacious / infopipe: number of tunes in playlist
876 xmms / bmp / audacious / infopipe: MM:SS position of current tune
879 \fBxmms_position_seconds\fR
880 xmms / bmp / audacious / infopipe: position of current tune in seconds
884 xmms / bmp / audacious / infopipe: player status (Playing/Paused/Stopped/Not running)
888 xmms / bmp / audacious / infopipe: title of current tune
892 conky \fB\-t '${time %D %H:%m}' \-o \-u 30\fR
893 Start Conky in its own window with date and clock as text and 30 sec update interval.
895 conky \fB\-a top_left \-x 5 \-y 500 \-d\fR
896 Start Conky to background at coordinates (5, 500).
898 \fB~/.conkyrc\fR default configuration file
900 Drawing to root or some other desktop window directly doesn't work with
901 all window managers. Especially doesn't work well with Gnome and it has
902 been reported that it doesn't work with KDE either. Nautilus can be
903 disabled from drawing to desktop with program gconf-editor. Uncheck
904 show_desktop in /apps/nautilus/preferences/. There is -w switch in Conky
905 to set some specific window id. You might find xwininfo -tree useful to
906 find the window to draw to. You can also use -o argument which makes
907 Conky to create its own window.
909 http://conky.sourceforge.net [http://conky.sourceforge.net]
911 http://www.sourceforge.net/projects/conky [http://www.sourceforge.net/projects/conky]
913 #conky on irc.freenode.net
915 The Conky dev team. What's up now!