Conky - Real Time System Info on Your Desktop

Jarret B

Well-Known Member
Staff member
Joined
May 22, 2017
Messages
458
Reaction score
520
Credits
19,806
Many people would like to see real-time statistics about their system on their desktop. The information shown on the desktop by 'Conky' is configurable.

Let's look into installing 'Conky' and getting it properly configured to your liking.

Installation

To install 'Conky' is an easy task. Conky is available on most Linux distros. Simply use your specific installation command to install the package named 'conky'.

For example, with Ubuntu, the command is 'sudo apt install conky conky-all'. With Fedora, the command is 'sudo dnf install conky conky-all'.

The process should install 'Conky' and you are now ready to configure the information being displayed.

Auto-start Conky

The first thing we need to get 'Conky' started is to create a configuration file that starts when you log into the system. Each configuration file will be specific to each user.

nano ~/Conky.sh

Within the file, add the lines for the script:

#!/bin/bash
sleep 5 && conky


Save the file and exit the editor. The file needs to be made executable. Use the command:

chmod +x ~/Conky.sh

Use your Graphical User Interface to open your Operating Systems Startup Applications Preferences. This is on Ubuntu systems. Add an entry and point it to the bash file we just created. Every time you log into your account, the 'Conky' app should automatically start.
When it does, you’ll see a window similar to that in Figure 1.
Figure 1.JPG

FIGURE 1

Configuration


The default configuration file is '/etc/conky/conky.conf'. Its contents are:

-- Conky, a system monitor https://github.com/brndnmtthws/conky
--
-- This configuration file is Lua code. You can write code in here, and it will
-- execute when Conky loads. You can use it to generate your own advanced
-- configurations.
--
-- Try this (remove the `--`):
--
-- print("Loading Conky config")
--
-- For more on Lua, see:
-- https://www.lua.org/pil/contents.html

conky.config = {
alignment = 'top_left',
background = false,
border_width = 1,
cpu_avg_samples = 2,
default_color = 'white',
default_outline_color = 'white',
default_shade_color = 'white',
double_buffer = true,
draw_borders = false,
draw_graph_borders = true,
draw_outline = false,
draw_shades = false,
extra_newline = false,
font = 'DejaVu Sans Mono:size=12',
gap_x = 60,
gap_y = 60,
minimum_height = 5,
minimum_width = 5,
net_avg_samples = 2,
no_buffers = true,
out_to_console = false,
out_to_ncurses = false,
out_to_stderr = false,
out_to_x = true,
own_window = true,
own_window_class = 'Conky',
own_window_type = 'desktop',
show_graph_range = false,
show_graph_scale = false,
stippled_borders = 0,
update_interval = 1.0,
uppercase = false,
use_spacer = 'none',
use_xft = true,
}
conky.text = [[
${color grey}Info:$color ${scroll 32 Conky $conky_version - $sysname $nodename $kernel $machine}
$hr
${color grey}Uptime:$color $uptime
${color grey}Frequency (in MHz):$color $freq
${color grey}Frequency (in GHz):$color $freq_g
${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}
${color grey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4}
${color grey}CPU Usage:$color $cpu% ${cpubar 4}
${color grey}Processes:$color $processes ${color grey}Running:$color $running_processes
$hr
${color grey}File systems:
/ $color${fs_used /}/${fs_size /} ${fs_bar 6 /}
${color grey}Networking:
Up:$color ${upspeed} ${color grey} - Down:$color ${downspeed}
$hr
${color grey}Name PID CPU% MEM%
${color lightgrey} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
${color lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}
]]


From the bottom section labeled 'conky.text', you can remove lines you do not want in the display. By editing the configuration file in the folder '/etc/conky', the changes are made for all users who log into the system and start 'Conky'.

If you want to create your own personal configuration file for your user account, then perform the following two commands:

cat /etc/conky/conky.conf > ~/.conkyrc

The command will copy the contents or the original configuration file into the file '.conktrc' in your HOME folder. The service uses the file '.conkyrc' in your HOME folder instead of the main configuration file.

So, after you log out and back in, the service uses the new configuration file and you can change it without affecting other users’ display, if they use conky.

Now, the cool thing, if you change the configuration file, it takes effect immediately. There is no need to logout and back in or stop and start conky.

If you want to move the conky window around, you can change the alignment. The default is 'top_left'. The options are 'top_middle', 'top_right', 'bottom_left', 'bottom_middle', 'bottom_right' or 'none'. If you specify 'none' you can use parameters on the command line, or in the bash script, to specify X and Y coordinates. For example, 'conky -x 500 -y 100' to place the window 500 pixels to the right and 100 pixels down.

There is a comprehensive list of the items above the TEXT line at 'http://ifxgroup.net/conky.htm#p1' and below the TEXT line at 'http://ifxgroup.net/conky.htm#p2'.

Themes

If you are using Ubuntu, or a Debian distro, then you can use the 'ConkyManager 2' program to manage themes.

In a Terminal, type the command 'sudo add-apt-repository ppa:ubuntuhandbook1/conkymanager2'. Enter your password when prompted and then press 'ENTER' when needed. The packages should be updated from the newly added and existing repositories.

To install the 'Conky-Manager 2' application, use the command 'sudo apt install conky-manager2'.

The manager comes with existing themes. Once you open the manager, you'll see them listed. Open the window a little larger than it defaults to when opened. There should be a Preview pane on the bottom. An icon at the top, the ninth one from the left, allows you to generate preview images. Make sure you select the option to generate images for all widgets with missing previews. I show the window in Figure 2.

Figure 2.JPG

FIGURE 2

Each Theme has one or more widgets to make up the visualization. From the 'Widget' tab, you can just select specific Widgets and not the whole Theme. If you want the whole Theme, then select the Theme tab and check the Theme you want to use. Be aware that if the Theme uses a background image in the Theme, it will require you to reset it if you disable the Theme.

The manager is an easy way to add Themes, if the manager and Conky supports them.

Conclusion

You can streamline 'Conky' to just show the specific items you need on the desktop to see.

You can adjust the time that 'Conky' updates the screen. Experiment with it and enjoy it.
 


It's worth mentioning that Conky Manager is authored by Tony George, the author of Timeshift.

The reference /TeejeeTech/ can be seen in the last screenshot.

Wizard
 
I like it that you can display temperatures, to me those are the most important statistics.
 
Whelp, that logo above actually says "GPU temp", lol, it's all neat but not quite what it seems, i'm getting errors from the conky manager. It is nice to have conky for comparisons or just a different display than the terminal text.
 
Last edited:
@Mike-BTU :-

I use GkrellM, which seems to take up less screen real estate. Written in GTK+, it's compatible with Wayland.
Yup, me too. Been using it for years. Bill Wilson's wee desktop app is easy to compile - even a dunce like me can do it! - and is infinitely configurable.

Normally, gKrellM layout looks like this, as you know (the 'standard', vertical stack):-

Screenshot(380).png


.....although some time last year, I was experimenting with different layouts:-

Screenshot(542).png


Note the slim 'bar' along the top.....and I always have the time option set to a large enough font to serve as my desktop clock.

gKrellM won't allow multiple instances of itself to be spawned from a single install. So I turned it into a self-contained 'portable' application - it's quite small, anyway - then set things up to run 7 duplicate "installs" simultaneously at start-up (though each with a different config, natch) in order to achieve the effect I was after...

Bill Wilson mentions a possible workaround, here:-


....although he's talking about multiple 'configs'. I don't for a moment suppose the concept of 'portabilizing' the entire thing, THEN duplicating it had even occurred to him 20-odd years ago.

I DO pull some daft stunts, don't I?
buehehe.gif


EDIT:- Mods/Admin - Sorry for the 'red herring', although it IS along the same lines.....and will hopefully make noobs (and other folks) aware that Linux has multiple different ways of portraying system info, depending on your personal preferences.

If considered 'unsuitable' for the thread, please feel free to delete it / move it elsewhere.

Thanks.



Mike. ;)
 
Last edited:
Off-topic:

They've finally aligned for a screenshot. It's like winning at a slot machine.

2026-06-22_11-31.png


All three regular users who are Mike's have dog avatars.
 
We're the only ones that -really- know where our towels are. (They're under the rain soaked dogs.)
 
(They're under the rain soaked dogs.)

That's just extra protein.

Glad we could accommodate ya!

I'd noticed the dog avatars before, but this was the first time that I've seen them aligned. It may have happened before without me noticing, as I don't actually pay that much attention.

If it'd been a slot machine, ... Well, if it had been a slot machine, I wouldn't have put any money into it. I do enjoy a trip to Vegas (even owning a house in Henderson for a while), but I only play the table games (because I can do math).

No, I do not play the lottery -- except for amusement purposes. Every decade or so, I may buy a scratch-off ticket or three. However, I'm 'winning' with that. The first time I bought a scratch-off ticket, I won $600 (just under the reporting threshold). Since then, I've probably spent $30 on them. I also worked at a convenience store for a while. I saw people who'd keep buying more tickets until they were out of money. I want nothing to do with that mentality.
 


Follow Linux.org

Members online


Top