Archive for the ‘Linux’ Category

Conky config file example

Monday, January 16th, 2023

Conky

After a fresh Ubuntu install I was looking for a desktop “widget” that would display various metrics: CPU usage, memory usage etc, when I stumbled upon Conky. I installed it and am very happy with the results. It’s driven from an LUA style config file.

How it looks

My config produces output quite similar to the default style but I have to say I like it. I’ve seen others though that are far more modern looking and tasteful – the options seem unlimited.

Conky screenshot

Config file

The Conky Objects page is a good resource describing the various metrics you can add.

-- 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
-- ${color grey}Location: $color ${execi 60 curl -s http://ip-api.com/json | jq -r .country}
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=10',
    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,
    xinerama_head = 2
}

conky.text = [[
${color grey}Location: $color ${execi 1800 curl -s http://ip-api.com/json | jq -r .country}
${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}
${color grey}CPU Usage:$color $cpu% ${cpubar 4}
${cpugraph enp2s0 50,350}
$hr
${color grey}File systems:
 / $color${fs_used /}/${fs_size /} ${fs_bar 6 /}
$hr
${color grey}Networking:
Up:$color ${upspeed enp2s0} $alignr ${totalup enp2s0} 
${upspeedgraph enp2s0 50,350}
${color grey}Down:$color ${downspeed enp2s0} $alignr ${totaldown enp2s0}
${downspeedgraph enp2s0 50,350}
$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}
]]

Tags:
Posted in Linux | No Comments »