Conky System Monitor Part 1

Published on December 15, 2022 at 7:50 pm by LEW

Introduction

If you are running a lightweight Graphical User Interface (GUI), or even if you are running a heavy GUI, you may want a light system monitor for your Linux box. There is a program called Conky that might fit your need. However be advised that there is some setup involved.

The conky program provides a desktop display that can show a wide variety of system information, activity, and functions. While the actual setup is not hard, figuring out what you want to display can be a bit of a challenge. The list of things you can monitor and/or control with conky is impressive.

Want to monitor your CPU temperature and fan speed, not a problem. Wan to to keep an eye on your network, easy. Want to control your music player, or get notifications when new email arrives, conky can do that too. Because of the wide range of options, the issue with conky is deciding what you want to include and still keep the display looking sharp (the desktop display can get cluttered with lots of information extremely fast).

This is where things get a little complicated. There are multiple ways to configure conky. So while installing it may be simple, setting it up to display what you want how you want can be a bit of a challenge.

Installing Conky

I am making an assumption, which is most likely, that conky is in your distribution repository, and can be installed via the package manager. I am not going to discuss compiling from source code, as there are several additional packages and libraries that are required, and it is a little more complex.

Just for reference, in this post I have installed conky on Debian testing (at this point in time testing is Bookworm which will eventually become Debian 12), and running Joe’s Window Manager (JWM). I am taking a break from Arch this time around. Unlike Arch, on a Debian base build you just need to install xorg and jwm, and everything should be pretty much automatic as far as initial setup goes, as the Debian package maintainers have done all the hard work for you.

To install Conky on Debian, you will use the apt command.

apt install conky

That’s it, done with the install.

I should note that there are several different conky packages. They use the same program, with different options built in. For example if you are going hardcore, you would probably want to install conky-all, which has pretty much everything conky available.

Starting Conky

Most people will want to run conky at startup. But you can also run conky from the command line. You will want to use an ampersand (&) to run it in the background, returning control of the terminal once it launches. I suggest doing this initially for testing and configuration purposes.

conky &

To start conky automatically, I add it as a startup command to my window manager (JWM in this case if you are following my JWM series on Debian and on Arch).

<StartupCommand>conky</StartupCommand>

Note if you are not using JWM, then check your GUI documentation on how to run programs at startup.

You should be looking at a black box in the upper left corner of your screen with some system information in it. This is the default conky display. Most people are going to want to customize this in some manner.

Conky Configure File

We will want to work on a local version of the conky.conf file. In this way, if we really screw it up, we can just replace it with the original version. Once satisfied with the conky configuration, at this point we can move the file back to act as the global configuration file.

On Debian Bookworm the global configuration file is located at /etc/conky/conky.conf. According to the man page, the local configuration file should be placed at /home/user/.cong/conky/conky.conf. My testing and research show a couple of other places and names that work. But I suggest going with whatever is in the man page that ships with your version of conky.

cp etc/conky/conky.conf ~/.config/conky/conky.conf

The conky configuration file format has changed a bit as of version 1.10 and later. I notice you can still find a few references to pre 1.10 formatting. Below is the correct formatting for the two sections of the conky configuration file.

Conky.config = { … }

conky.text = [[ … ]]

The conky.config section hold information about how to display conky. Things like position, size, colors, fonts, sample rates and window types are defined in this section. The conky.text section defines what will be shown in the display.

Conclusion

In this post we have discussed the conky system monitor program, installing it, and getting it running. This has laid the groundwork for future posts in this series.

In the next post we will discuss the conky.config section of the configuration file. And in the post after that we will discuss the conky.text section.

Conky System Monitor Part 1

Conky System Monitor Part 2

Conky System Monitor Part 3

Add New Comment

Your email address will not be published. Required fields are marked *