conky(1) conky(1) NAME conky - A system monitor for X originally based on the torsmo code, but more kickass. It just keeps on given'er. Yeah. SYNOPSIS conky [options] DESCRIPTION Conky is a system monitor for X originally based on the torsmo code. Since it's original conception, Conky has changed a fair bit from it's predecessor. Conky can display just about anything, either on your root desktop or in it's own window. Conky has many built-in objects, as well as the ability to execute programs and scripts, then display the output from stdout. We are always looking for help, and anyone interested in becoming a de- veloper is welcome. Please use the facilities at SourceForge to make bug reports, feature requests, and submit patches. Thanks for your interest in Conky. COMPILING For users compiling from source, make sure you have the X development libraries installed. This should be a package along the lines of "libx11-dev or xorg-x11-dev". Gentoo users -- Conky is in Gentoo's Portage... simply use "emerge app- admin/conky" for installation. There is also usually an up-to-date ebuild within Conky's package or in Svn. Debian,etc. users -- Conky will be in Debian's repositories soon (by mid-September, hopefully), and then Ubuntu shortly thereafter. Until then, "dpkg -i" the .deb package to install. Example to compile and run Conky with all optional components (note that some configure options may differ for your system): sh autogen.sh # Only required if building from Svn ./configure --prefix=/usr --mandir=/usr/share/man --in- fodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --local- statedir=/var/lib --enable-xft --enable-own-window --enable-proc-uptime --enable-audacious --enable-bmpx --enable-seti --enable-hddtemp --en- able-mpd --enable-xmms2 --enable-imlib2 --enable-portmon --enable-ml- donkey --enable-debug --enable-double-buffer --enable-xdamage --en- able-x11 make make install # Optional src/conky Conky probably doesn't compile with compilers other than gcc and icc. It doesn't compile with C89 compiler and not even with pure C99. It uses a few things that might not exist: strdup(), strcasecmp(), strn- casecmp(), optarg variable with getopt() and long long (not in C89). Crashes in file system statistics stuff when compiled with icc, I don't know exactly why. You can disable 'drawing to own window' feature in case you don't need it by passing --disable-own-window to configure -script. YOU SHOULD KNOW Conky is generally very good on resources. However, certain objects in Conky are harder on resources then others. In particular, the $tail, $top, $font, and $graph objects are quite costly in comparison to the rest of Conky. If you do use them, please do not complain about memory or CPU usage, unless you think something's seriously wrong (mem leak, etc.). An easy way to force Conky to reload your ~/.conkyrc: "killall -SIGUSR1 conky". Saves you the trouble of having to kill and then restart. IMPORTANT: For previous Conky users, Conky 1.3 no longer supports the metar stuff. mdsplib was causing way too many problems. Hopefully there'll be a better solution in Conky 2.x... OPTIONS Command line options override configurations defined in configuration file. -v | -V Prints version and exits -a ALIGNMENT Text alignment on screen, {top,bottom}_{left,right} or none -b Use double buffering (eliminates "flicker") -c FILE Config file to load instead of $HOME/.conkyrc -d Daemonize Conky, aka fork to background -f FONT Font to use -h Prints command line help and exits -o Create own window to draw -t TEXT Text to render, remember single quotes, like -t ' $uptime ' -u SECONDS Update interval -w WIN_ID Window id to draw -x X_COORDINATE X position -y Y_COORDINATE Y position CONFIGURATION SETTINGS Default configuration file is $HOME/.conkyrc (can be changed from conky.c among other things). See conkyrc.sample. If installing from De- bian package, this should be in /usr/share/doc/conky/examples ("gunzip conkyrc.sample.gz" to get conkyrc.sample). You might want to copy it to $HOME/.conkyrc and then start modifying it. Other configs can be found at http://conky.sf.net alignment Aligned position on screen, may be top_left, top_right, bot- tom_left, bottom_right, or none background Boolean value, if true, Conky will be forked to background when started on_bottom Set Conky on the bottom of all other applications border_margin Border margin in pixels border_width Border width in pixels cpu_avg_samples The number of samples to average for CPU monitoring default_color Default color and border color default_shade_color Default shading color and border's shading color default_outline_color Default outline color double_buffer Use the Xdbe extension? (eliminates flicker) It is highly recom- mended to use own window with this one so double buffer won't be so big. draw_borders Draw borders around text? draw_graph_borders Draw borders around graphs? draw_shades Draw shades? draw_outline Draw outlines? font Font name in X, xfontsel can be used to get a nice font gap_x Gap between right or left border of screen, same as passing -x at command line gap_y Gap between top or bottom border of screen, same as passing -y at command line imap Default global IMAP server. Arguments are: "host user pass [-i interval] [-f folder] [-p port] [-e command]". Default port is 143, default folder is 'INBOX', default interval is 5 minutes. If the password is supplied as '*', you will be prompted to en- ter the password when Conky starts. no_buffers Substract (file system) buffers from used memory? mail_spool Mail spool for mail checking maximum_width pixels Maximum width of window minimum_size width (height) Minimum size of window min_port_monitors Allow for the creation of at least this number of port monitors (if 0 or not set, default is 16) min_port_monitor_connections Allow each port monitor to track at least this many connections (if 0 or not set, default is 256) mldonkey_hostname Hostname for mldonkey stuff, defaults to localhost mldonkey_port Mldonkey port, 4001 default mldonkey_login Mldonkey login, default none mldonkey_password Mldonkey password, default none mpd_host Host of MPD server mpd_port Port of MPD server mpd_password MPD server password net_avg_samples The number of samples to average for net data override_utf8_locale Force UTF8? requires XFT own_window Boolean, create own window to draw? own_window_transparent Boolean, set pseudo-transparency? own_window_type if own_window is yes, you may specify type normal, desktop or override (default: normal). Desktop windows are special windows that have no window decorations; are always visible on your desktop; do not appear in your pager or taskbar; and are sticky across all workspaces. Override windows are not under the con- trol of the window manager. Hints are ignored. This type of win- dow can be useful for certain situations. own_window_colour colour 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) own_window_hints undecorated,below,above,sticky,skip_taskbar,skip_pager If own_window is yes, you may use these window manager hints to affect the way Conky displays. Notes: Use own_window_type desk- top as another way to implement many of these hints implicitly. If you use own_window_type override, window manager hints have no meaning and are ignored. out_to_console Print text to stdout. pad_percents Pad percentages to this many decimals (0 = no padding) pop3 Default global POP3 server. Arguments are: "host user pass [-i interval] [-p port] [-e command]". Default port is 110, default interval is 5 minutes. If the password is supplied as '*', you will be prompted to enter the password when Conky starts. stippled_borders Border stippling (dashing) in pixels total_run_times Total number of times for Conky to update before quitting. Zero makes Conky run forever update_interval Update interval in seconds uppercase Boolean value, if true, text is rendered in upper case use_spacer 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. use_xft Use Xft (anti-aliased font and stuff) wm_class_name Manually set the WM_CLASS name. Defaults to "conky". xftalpha Alpha of Xft font. Must be a value at or between 1 and 0. xftfont Xft font to use. TEXT After this begins text to be formatted on screen VARIABLES Colors are parsed using XParsecolor(), there might be a list of them: /usr/X11R6/lib/X11/rgb.txt. Also, . Color can be also in #rrggbb format (hex). Note that when displaying bytes, power is 1024 and not 1000 so 1M really means 1024*1024 bytes and not 1000*1000. addr interface IP address for an interface acpiacadapter ACPI ac adapter state. acpifan ACPI fan state acpitemp ACPI temperature in C. acpitempf ACPI temperature in F. adt746xcpu CPU temperature from therm_adt746x adt746xfan Fan speed from therm_adt746x alignr (num) Right-justify text, with space of N alignc (num) Align text to centre apm_adapter Display APM AC adapter status (FreeBSD only) apm_battery_life Display APM battery life in percent (FreeBSD only) apm_battery_time Display remaining APM battery life in hh:mm:ss or "unknown" if AC adapterstatus is on-line or charging (FreeBSD only) audacious_bar (height),(width) Progress bar audacious_bitrate Bitrate of current tune audacious_channels Number of audio channels of current tune audacious_filename Full path and filename of current tune audacious_frequency Sampling frequency of current tune audacious_length Total length of current tune as MM:SS audacious_length_seconds Total length of current tune in seconds audacious_playlist_position Playlist position of current tune audacious_playlist_length Number of tunes in playlist audacious_position Position of current tune (MM:SS) audacious_position_seconds Position of current tune in seconds audacious_status Player status (Playing/Paused/Stopped/Not running) audacious_title Title of current tune battery (num) Remaining capacity in ACPI or APM battery. ACPI battery number can be given as argument (default is BAT0). bmpx_artist Artist in current BMPx track bmpx_album Album in current BMPx track bmpx_title Title of the current BMPx track bmpx_track Track number of the current BMPx track bmpx_bitrate Bitrate of the current BMPx track bmpx_uri URI of the current BMPx track buffers Amount of memory buffered cached Amount of memory cached color (color) Change drawing color to color cpu (cpuN) CPU usage in percents. For SMP machines, the CPU number can be provided as an argument. ${cpu 0} is the total usage, and ${cpu X} (X >= 1) are individual CPUs. cpubar (cpu number) (height),(width) Bar that shows CPU usage, height is bar's height in pixels. See $cpu for more info on SMP. cpugraph (cpu number) (height),(width) (gradient colour 1) (gradient colour 2) CPU usage graph, with optional colours in hex, minus the #. See $cpu for more info on SMP. diskio Displays current disk IO. diskiograph (height),(width) (gradient colour 1) (gradient colour 2) (scale) Disk IO graph, colours defined in hex, minus the #. If scale is non-zero, it becomes the scale for the graph. downspeed net Download speed in kilobytes downspeedf net Download speed in kilobytes with one decimal downspeedgraph net (height),(width) (gradient colour 1) (gradient colour 2) (scale) Download speed graph, colours defined in hex, minus the #. If scale is non-zero, it becomes the scale for the graph. else Text to show if any of the above are not true exec command Executes a shell command and displays the output in conky. warn- ing: this takes a lot more resources than other variables. I'd recommend coding wanted behaviour in C and posting a patch. execbar command Same as exec, except if the first value return is a value be- tween 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. execgraph command Same as execbar, but graphs values. execi interval command Same as exec but with specific interval. Interval can't be less than update_interval in configuration. See also $texeci execibar interval command Same as execbar, except with an interval execigraph interval command Same as execigraph, but takes an interval arg graphs values font (font) Specify a different font. This new font will apply to the cur- rent line and everything following. You can use a $font with no arguments to change back to the default font (much like with $color) freq (n) Returns CPU #n's frequency in MHz. CPUs are counted from 1. If omitted, the parameter defaults to 1. freq_g (n) Returns CPU #n's frequency in GHz. CPUs are counted from 1. If omitted, the parameter defaults to 1. freq_dyn Returns CPU frequency in MHz, but is calculated by counting to clock cycles to complete an instruction. Only available for x86/amd64. freq_dyn_g Returns CPU frequency in GHz, but is calculated by counting to clock cycles to complete an instruction. Only available for x86/amd64. fs_bar (height),(width) fs 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. fs_free (fs) Free space on a file system available for users. fs_free_perc (fs) Free percentage of space on a file system available for users. fs_size (fs) File system size fs_used (fs) File system used space goto x The next element will be printed at position 'x'. hddtemp dev, (host,(port)) Displays temperature of a selected hard disk drive as reported by the hddtemp daemon running on host:port. Default host is 127.0.0.1, default port is 7634. head logfile lines (interval) 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. hr (height) Horizontal line, height is the height in pixels iconv_start codeset_from codeset_to Convert text from one codeset to another using GNU iconv. Needs to be stopped with iconv_stop. iconv_stop Stop iconv codeset conversion. i2c (dev) type n 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. i8k_ac_status 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. i8k_bios If running the i8k kernel driver for Inspiron laptops, displays the bios version as listed in /proc/i8k. i8k_buttons_status If running the i8k kernel driver for Inspiron laptops, displays the volume buttons status as listed in /proc/i8k. i8k_cpu_temp If running the i8k kernel driver for Inspiron laptops, displays the cpu temperature in Celsius, as reported by /proc/i8k. i8k_cpu_tempf If running the i8k kernel driver for Inspiron laptops, displays the cpu temperature in Farenheit, as reported by /proc/i8k. i8k_left_fan_rpm 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. i8k_left_fan_status 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 re- verse order. i8k_right_fan_rpm 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. i8k_right_fan_status If running the i8k kernel driver for Inspiron laptops, displays the right fan status as listed in /proc/i8k (translated to hu- man-readable). Beware, some laptops i8k reports these fans in reverse order. i8k_serial If running the i8k kernel driver for Inspiron laptops, displays your laptop serial number as listed in /proc/i8k. i8k_version If running the i8k kernel driver for Inspiron laptops, displays the version formatting of /proc/i8k. ibm_fan If running the IBM ACPI, displays the fan speed. ibm_temps N If running the IBM ACPI, displays the temperatures from the IBM temperature sensors (N=0..7) Sensor 0 is on the CPU, 3 is on the GPU. ibm_volume If running the IBM ACPI, displays the "master" volume, con- trolled by the volume keys (0-14). ibm_brightness If running the IBM ACPI, displays the brigtness of the laptops's LCD (0-7). if_running (process) if PROCESS is running, display everything if_running and the matching $endif if_existing (file) if FILE exists, display everything between if_existing and the matching $endif if_mounted (mountpoint) if MOUNTPOINT is mounted, display everything between if_mounted and the matching $endif imap_messages (args) Displays the number of messages in your global IMAP inbox by de- fault. You can define individual IMAP inboxes seperately by passing arguments to this object. Arguments are: "host user pass [-i interval] [-p port] [-e command]". Default port is 110, de- fault interval is 5 minutes. If the password is supplied as '*', you will be prompted to enter the password when Conky starts. imap_unseen (args) Displays the number of unseen messages in your global IMAP inbox by default. You can define individual IMAP inboxes seperately by passing arguments to this object. Arguments are: "host user pass [-i interval] [-p port] [-e command]". Default port is 110, de- fault interval is 5 minutes. If the password is supplied as '*', you will be prompted to enter the password when Conky starts. kernel Kernel version linkstatus interface Get the link status for wireless connections loadavg (1,2,3)> System load average, 1 is for past 1 minute, 2 for past 5 minutes and 3 for past 15 minutes. machine Machine, i686 for example mails 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. mem Amount of memory in use membar (height),(width) Bar that shows amount of memory in use memmax Total amount of memory memperc Percentage of memory in use mpd_artist Artist in current MPD song must be enabled at compile mpd_album Album in current MPD song mpd_bar (height),(width) Bar of mpd's progress mpd_bitrate Bitrate of current song mpd_status Playing, stopped, et cetera. mpd_title Title of current MPD song mpd_vol MPD's volume mpd_elapsed Song's elapsed time mpd_length Song's length mpd_percent Percent of song's progress mpd_random Random status (On/Off) mpd_repeat Repeat status (On/Off) mpd_track Prints the MPD track field mpd_name Prints the MPD name field mpd_file Prints the file name of the current MPD song mpd_smart Prints the song name in either the form "artist - title" or file name, depending on whats available new_mails Unread mail count in mail spool. nodename Hostname outlinecolor (color) Change outline color pb_battery item If running on Apple powerbook/ibook, display information on bat- tery status. The item parameter specifies, what information to display. Exactly one item must be specified. Valid items are: status: Display if battery is fully charged, charging, discharg- ing or absent (running on AC) percent: Display charge of battery in percent, if charging or discharging. Nothing will be displayed, if battery is fully charged or absent. time: Display the time remaining until the battery will be fully charged or discharged at current rate. Nothing is displayed, if battery is absent or if it's present but fully charged and not discharging. pop3_unseen (args) Displays the number of unseen messages in your global POP3 inbox by default. You can define individual POP3 inboxes seperately by passing arguments to this object. Arguments are: "host user pass [-i interval] [-p port] [-e command]". Default port is 110, de- fault interval is 5 minutes. If the password is supplied as '*', you will be prompted to enter the password when Conky starts. pop3_used (args) Displays the amount of space (in MiB, 2^20) used in your global POP3 inbox by default. You can define individual POP3 inboxes seperately by passing arguments to this object. Arguments are: "host user pass [-i interval] [-p port] [-e command]". Default port is 110, default interval is 5 minutes. If the password is supplied as '*', you will be prompted to enter the password when Conky starts. pre_exec shell command Executes a shell command one time before conky displays anything and puts output as text. processes Total processes (sleeping and running) running_processes Running processes (not sleeping), requires Linux 2.6 shadecolor (color) Change shading color stippled_hr (space) Stippled (dashed) horizontal line swapbar (height),(width) Bar that shows amount of swap in use swap Amount of swap in use swapmax Total amount of swap swapperc Percentage of swap in use sysname System name, Linux for example tcp_portmon port_begin port_end item (index) (ip4 only at present) TCP port monitor for specified local ports. Port numbers must be in the range 1 to 65535. Valid items are: count - total number of connections in the range rip - remote ip address rhost - remote host name rport - remote port number rservice - remote service name from /etc/services lip - local ip address lhost - local host name lport - local port number lservice - local service name from /etc/services The connection index provides you with access to each connection in the port monitor. The monitor will return information for in- dex 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. Examples: ${tcp_portmon 6881 6999 count} - displays the number of connec- tions in the bittorrent port range ${tcp_portmon 22 22 rip 0} - displays the remote host ip of the first sshd connection ${tcp_portmon 22 22 rip 9} - displays the remote host ip of the tenth sshd connection ${tcp_portmon 1 1024 rhost 0} - displays the remote host name of the first connection on a privileged port ${tcp_portmon 1 1024 rport 4} - displays the remote host port of the fifth connection on a privileged port ${tcp_portmon 1 65535 lservice 14} - displays the local service name of the fifteenth connection in the range of all ports Note that port monitor variables which share the same port range actually refer to the same monitor, so many references to a sin- gle port range for different items and different indexes all use the same monitor internally. In other words, the program avoids creating redundant monitors. texeci interval command 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 updat- ing. 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 in- terval at least 6 seconds. See also $execi. offset (pixels) Move text over by N pixels. See also $voffset. tab (width, (start)) Puts a tab of the specified width, starting from column 'start'. tail logfile lines (interval) 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. time (format) Local time, see man strftime to get more information about for- mat utime (format) Display time in UTC (universal coordinate time). tztime (timezone) (format) Local time for specified timezone, see man strftime to get more information about format. The timezone argument is specified in similar fashion as TZ environment variable. For hints, look in /usr/share/zoneinfo. e.g. US/Pacific, Europe/Zurich, etc. totaldown net 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 al- ready done that before conky has started. top type, num This takes arguments in the form:top (name) (number) Basically, processes are ranked from highest to lowest in terms of cpu us- age, which is what (num) represents. The types are: "name", "pid", "cpu", and "mem". There can be a max of 10 processes listed. top_mem type, num Same as top, except sorted by mem usage instead of cpu totalup net Total upload, this one too, may overflow updates Number of updates for debugging upspeed net Upload speed in kilobytes upspeedf net Upload speed in kilobytes with one decimal upspeedgraph net (height),(width) (gradient colour 1) (gradient colour 2) (scale) Upload speed graph, colours defined in hex, minus the #. If scale is non-zero, it becomes the scale for the graph. uptime Uptime uptime_short Uptime in a shorter format seti_prog Seti@home current progress seti_progbar (height),(width) Seti@home current progress bar seti_credit Seti@home total user credit voffset (pixels) Change vertical offset by N pixels. Negative values will cause text to overlap. See also $offset. voltage_mv (n) Returns CPU #n's voltage in mV. CPUs are counted from 1. If omitted, the parameter defaults to 1. voltage_v (n) Returns CPU #n's voltage in V. CPUs are counted from 1. If omit- ted, the parameter defaults to 1. EXAMPLES conky -t '${time %D %H:%m}' -o -u 30 Start Conky in its own window with date and clock as text and 30 sec update interval. conky -a top_left -x 5 -y 500 -d Start Conky to background at coordinates (5, 500). FILES ~/.conkyrc default configuration file BUGS Drawing to root or some other desktop window directly doesn't work with all window managers. Especially doesn't work well with Gnome and it has been reported that it doesn't work with KDE either. Nautilus can be disabled from drawing to desktop with program gconf-editor. Uncheck show_desktop in /apps/nautilus/preferences/. There is -w switch in Conky to set some specific window id. You might find xwininfo -tree useful to find the window to draw to. You can also use -o argument which makes Conky to create its own window. SEE ALSO #conky on irc.freenode.net AUTHORS The Conky dev team. What's up now! 2006-05-13 conky(1)