Skip to content
Reese Jacobson edited this page Mar 31, 2020 · 39 revisions

Compiling from source

1.9 and earlier versions

Outdated

If you want to compile Conky yourself, make sure you have gcc, glibc, gettext, autoconf, automake and the libraries for the features you want and run:

$ ./autogen.sh
$ ./configure --help
# you'll now see a list with features
$ ./configure --enable-feature1 --disable-feature2 ...
$ make

After doing this, Conky will be available in the src subdirectory, if you want it on a more 'sane' place, run make install as root.

1.10 and later versions

Conky makes use cmake instead of autotools which means you won't need autoconf and automake anymore but you'll need cmake.

You'll need the following development packages if you keep the default cmake configuration: apt-get install cmake libimlib2-dev libncurses5-dev libx11-dev libxdamage-dev libxft-dev libxinerama-dev libxml2-dev libxext-dev libcurl4-openssl-dev liblua5.3-dev. Note that your version of cmake must support C++17, which means it must be >=3.8. Also note that the specific libcurl4-*-dev package that will be required will depend on what flavor of libcurl you have installed (openssl is the default). For macOS you can get the required libraries using these commands.

Then, building Conky will work like this:

$ mkdir build
$ cd build
$ ccmake ..
# this will launch a curses-based UI where you can configure
# everything, when you are ready you can build as usual:
$ make  # This will compile Conky in the `src` subdirectory
$ make install

Instead of running ccmake .. you can also run cmake .. which will just take the default values for everything.

BUILD_FLAGS

$ cmake -L | grep "^BUILD" | sed -e "s/:BOOL//" | column -t -s "="
BUILD_APCUPSD         ON
BUILD_ARGB            ON
BUILD_AUDACIOUS       OFF
BUILD_BMPX            OFF
BUILD_BUILTIN_CONFIG  ON
BUILD_CMUS            ON
BUILD_CURL            OFF
BUILD_EVE             ON
BUILD_HDDTEMP         ON
BUILD_HTTP            OFF
BUILD_I18N            ON
BUILD_IBM             ON
BUILD_ICAL            OFF
BUILD_ICONV           OFF
BUILD_IMLIB2          ON
BUILD_IOSTATS         ON
BUILD_IPV6            ON
BUILD_IRC             OFF
BUILD_JOURNAL         OFF
BUILD_LUA_CAIRO       OFF
BUILD_LUA_IMLIB2      OFF
BUILD_LUA_RSVG        OFF
BUILD_MATH            ON
BUILD_MOC             ON
BUILD_MPD             ON
BUILD_MYSQL           OFF
BUILD_NCURSES         ON
BUILD_NVIDIA          OFF
BUILD_OLD_CONFIG      ON
BUILD_PORT_MONITORS   ON
BUILD_PULSEAUDIO      OFF
BUILD_RSS             OFF
BUILD_WEATHER_METAR   ON
BUILD_WLAN            OFF
BUILD_X11             ON
BUILD_XDAMAGE         ON
BUILD_XDBE            ON
BUILD_XFT             ON
BUILD_XINERAMA        ON
BUILD_XMMS2           OFF
BUILD_XSHAPE          ON

Some variables will requires build flags to be enabled. You can download the source code and compile with enabled flags. You can ask the maintainer to enable them for future Conky versions.

Conky on Operating Systems

Arch Linux

$ pacman -S conky
# query aur database
$ yay -Ss conky

Fedora

$ sudo yum install conky

FreeBSD

# Conky is in ports in `sysutils/conky`.
$ cd /usr/ports/sysutils/conky
$ make install clean
# Alternatively, install the binary package.
$ pkg install conky

Gentoo Linux

$ emerge conky

Debian / Ubuntu

$ sudo apt-get install conky

NixOS

$ nix-env -i conky
Clone this wiki locally