Syntax Error | Conky syntax update
Conky has changed its syntax, and new configure file should be written.
Features(Github)
Conky can display more than 300 built-in objects, including support for:
- A plethora of OS stats (uname, uptime, CPU usage, mem usage, disk usage, “top” like process stats, and network monitoring, just to name a few).
- Built-in IMAP and POP3 support.
- Built-in support for many popular music players (MPD, XMMS2, Audacious).
- Can be extended using built-in Lua support, or any of your own scripts and programs (more).
- Built-in Imlib2 and Cairo bindings for arbitrary drawing with Lua (more).
- Runs on Linux, FreeBSD, OpenBSD, DragonFlyBSD, NetBSD, Solaris, Haiku, and macOS!
… and much much more.
Conky can display information either as text, or using simple progress bars and graph widgets, with different fonts and colours.
Syntax
After upgrade the whole system, I found conky doesn’t work well, the terminal pops out syntax error
when running conky
. Yes, the syntax changed, I have to rewrite the .conkyrc
.
Before updating, conky’s syntax is easy, very easy to understand, now, it’s more like… eh… TOML? I don’t know, but as a programmer, a geek, the new syntax seems better to adapt to.
So, let’s take a look at the newest demos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
--[[
Conky, a system monitor, based on torsmo
Any original torsmo code is licensed under the BSD license
All code written since the fork of torsmo is licensed under the GPL
Please see COPYING for details
Copyright (c) 2004, Hannu Saransaari and Lauri Hakkarainen
Copyright (c) 2005-2019 Brenden Matthews, Philip Kovacs, et. al. (see AUTHORS)
All rights reserved.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
]]
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}
]]
It looks like this:
Yes, inside the --[[
and ]]
is the comments. conky.config = {
marks the beginning of the config part and }
means the end.
different types of variable such as “number”, characters('char'
), boolean(true & false) will be assigned to the properties which is to the left of the equal sign, just like most program languages. Of course, inside conky.text = [[
and ]]
, you could customize your conky’s appearance and looks, you don’t need to change a lot even though syntax updated.
My .conkyrc
It’s easy to update the own configure file, mine works well now: .conkyrc. Screenshots goes here: [Conky | Awesome system monitor for Linux](https://theodorecooper.github.io/2021-conky/). |
More – Wiki
More options and tutorial here: Conky Wiki(Github).