Difference between revisions of "Basic Tips for conky/en"
Views
Actions
Namespaces
Variants
Tools
(Updating to match new version of source page) |
(Updating to match new version of source page) Tags: Mobile web edit Mobile edit |
||
Line 12: | Line 12: | ||
{{UserCmd|command=mkdir -p ~/.config/conky}} | {{UserCmd|command=mkdir -p ~/.config/conky}} | ||
Then copy the default to home | Then copy the default to home | ||
{{UserCmd|command=cp /usr/share/doc/conky-1.11.5_pre/conky.conf ~/.config/conky/conky. | {{UserCmd|command=cp /usr/share/doc/conky-1.11.5_pre/conky.conf ~/.config/conky/conky.conf}} | ||
The configuration file is a simple text file and the content written using [[https://www.lua.org/ |LUA syntax]] and is split into two parts | The configuration file is a simple text file and the content written using [[https://www.lua.org/ |LUA syntax]] and is split into two parts | ||
Line 20: | Line 20: | ||
===Conky configuration=== | ===Conky configuration=== | ||
The first/upper part contains all the configuration settings for the entire conky. Things like the position of the conky on your screen, transparency settings, border settings, the default font and it's size, and how often your conky gets updated. The whole configuration belong between brackets like this | The first/upper part contains all the configuration settings for the entire conky. Things like the position of the conky on your screen, transparency settings, border settings, the default font and it's size, and how often your conky gets updated. The whole configuration belong between brackets like this | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.config = { | content=<pre>conky.config = { | ||
};</pre> | };</pre> | ||
Line 31: | Line 31: | ||
===Examples=== | ===Examples=== | ||
'''1.''' This will set the default font color of your conky to white. Additionally, a <code>color1</code> gets set using a [http://html-color-codes.info/ Html Color Code]to a light blue: | '''1.''' This will set the default font color of your conky to white. Additionally, a <code>color1</code> gets set using a [http://html-color-codes.info/ Html Color Code]to a light blue: | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.config = { | content=<pre>conky.config = { | ||
... | ... | ||
Line 40: | Line 40: | ||
}} | }} | ||
'''2.''' This enables Xft, set the default font (LiberationMono), make it bold and set it's size (8): | '''2.''' This enables Xft, set the default font (LiberationMono), make it bold and set it's size (8): | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.config = { | content=<pre>conky.config = { | ||
... | ... | ||
Line 49: | Line 49: | ||
}} | }} | ||
'''3.''' In order to position your conky on your screen, modify these settings: | '''3.''' In order to position your conky on your screen, modify these settings: | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.config = { | content=<pre>conky.config = { | ||
... | ... | ||
Line 59: | Line 59: | ||
}} | }} | ||
'''4.''' In some case you can have multiple values for one setting, they will be separated by a coma: | '''4.''' In some case you can have multiple values for one setting, they will be separated by a coma: | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.config = { | content=<pre>conky.config = { | ||
... | ... | ||
Line 73: | Line 73: | ||
The whole code belong between these two double bracket: | The whole code belong between these two double bracket: | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.text = [[ | content=<pre>conky.text = [[ | ||
]];</pre> | ]];</pre> | ||
Line 79: | Line 79: | ||
===Examples=== | ===Examples=== | ||
'''1.''' You can choose the color of your font using one of the following variables: | '''1.''' You can choose the color of your font using one of the following variables: | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.text = [[ | content=<pre>conky.text = [[ | ||
... | ... | ||
Line 91: | Line 91: | ||
'''2.''' You can call the default font (and it's size) with this command: | '''2.''' You can call the default font (and it's size) with this command: | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.text = [[ | content=<pre>conky.text = [[ | ||
... | ... | ||
Line 98: | Line 98: | ||
]];</pre> | ]];</pre> | ||
}} | }} | ||
If you want a different font (DejaVuSerif) and font size (9) in your conky, use this command in your <code>. | If you want a different font (DejaVuSerif) and font size (9) in your conky, use this command in your <code>.conf</code> code: | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.text = [[ | content=<pre>conky.text = [[ | ||
... | ... | ||
Line 107: | Line 107: | ||
}} | }} | ||
'''3.''' This code line displays the text "Kernel: " and the kernel you are using (using <code>$alignr</code> just yields a nicer formatting, it is not necessary: <code>$alignr</code> aligns all following text on the right of your conky): | '''3.''' This code line displays the text "Kernel: " and the kernel you are using (using <code>$alignr</code> just yields a nicer formatting, it is not necessary: <code>$alignr</code> aligns all following text on the right of your conky): | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.text = [[ | content=<pre>conky.text = [[ | ||
Kernel: ${alignr}${kernel} | Kernel: ${alignr}${kernel} | ||
Line 113: | Line 113: | ||
}} | }} | ||
'''4.''' This variable gives you the latest 3 manjaro blog entry titles (using rss). It checks for updates every 60 minutes. | '''4.''' This variable gives you the latest 3 manjaro blog entry titles (using rss). It checks for updates every 60 minutes. | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.text = [[ | content=<pre>conky.text = [[ | ||
${rss http://manjaro.org/feed/ 60 item_titles 3} | ${rss http://manjaro.org/feed/ 60 item_titles 3} | ||
Line 119: | Line 119: | ||
}} | }} | ||
'''5.''' Information about the root partition <code>/</code> of your manjaro installation is displayed using | '''5.''' Information about the root partition <code>/</code> of your manjaro installation is displayed using | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.text = [[ | content=<pre>conky.text = [[ | ||
Root: ${alignr}${fs_used /} of ${fs_size /} | Root: ${alignr}${fs_used /} of ${fs_size /} | ||
Line 125: | Line 125: | ||
}} | }} | ||
'''6.''' Instead of example 3, you can use the following code to display the exact same information: | '''6.''' Instead of example 3, you can use the following code to display the exact same information: | ||
{{File|file=~/.config/conky/conky. | {{File|file=~/.config/conky/conky.conf| | ||
content=<pre>conky.text = [[ | content=<pre>conky.text = [[ | ||
Kernel: ${alignr}${execi 3600 uname -r} | Kernel: ${alignr}${execi 3600 uname -r} | ||
Line 139: | Line 139: | ||
===Running conky=== | ===Running conky=== | ||
If you want to display a conky on your desktop a {{ic|~/.config/conky/conky. | If you want to display a conky on your desktop a {{ic|~/.config/conky/conky.conf}} file with code in it is required. Next, open a terminal and run conky pointing to the file | ||
{{UserCmd|command=conky -c ~/.config/conky/conky. | {{UserCmd|command=conky -c ~/.config/conky/conky.conf}} | ||
or to run as background daemon | or to run as background daemon | ||
{{UserCmd|command=conky -d -c ~/.config/conky/conky. | {{UserCmd|command=conky -d -c ~/.config/conky/conky.conf}} | ||
If you want to run conky automatically after each boot of your computer, you need to find out how to autostart a program. This depends on the Desktop Manager you are using. The next is examples of how to run conky from your system autostart folder/file/script/command. | If you want to run conky automatically after each boot of your computer, you need to find out how to autostart a program. This depends on the Desktop Manager you are using. The next is examples of how to run conky from your system autostart folder/file/script/command. | ||
<code>sleep 20</code> and <code>-p 20</code> delay the start of conky by 20 seconds after your Desktop Environment has started. Adjust this value to your liking. | <code>sleep 20</code> and <code>-p 20</code> delay the start of conky by 20 seconds after your Desktop Environment has started. Adjust this value to your liking. | ||
{{UserCmd|command=conky -c ~/.config/conky/conky. | {{UserCmd|command=conky -c ~/.config/conky/conky.conf &}} | ||
{{UserCmd|command=sleep 20 && conky -c ~/.config/conky/conky. | {{UserCmd|command=sleep 20 && conky -c ~/.config/conky/conky.conf &}} | ||
When you change the running conky configuration file - conky will reload. But if you changed one of your dependency scripts (e.g. because you changed a variable and want to see the consequences) you will have to reload conky | When you change the running conky configuration file - conky will reload. But if you changed one of your dependency scripts (e.g. because you changed a variable and want to see the consequences) you will have to reload conky | ||
{{UserCmd|command=killall conky && conky -c ~/.config/config/conky. | {{UserCmd|command=killall conky && conky -c ~/.config/config/conky.conf}} | ||
===Troubleshooting & Tips=== | ===Troubleshooting & Tips=== | ||
Line 162: | Line 162: | ||
If network information is missing like download speed or network name (SSID), you need to replace the network interfaces in the configuration file with your network interface name. To get the names of your interfaces - open a terminal and execute | If network information is missing like download speed or network name (SSID), you need to replace the network interfaces in the configuration file with your network interface name. To get the names of your interfaces - open a terminal and execute | ||
{{UserCmd|command=ip a | grep ' state UP' | cut -d' ' -f2 | cut -d':' -f1}} | {{UserCmd|command=ip a | grep ' state UP' | cut -d' ' -f2 | cut -d':' -f1}} | ||
Use the output from the command. Interface names starting with <code>en</code> is ethernet interface and names starting with <code>wl</code> is wireless interfaces. Replace all network interfaces names with (e.g. <code>wlan0</code>, <code>eth0</code>) in your <code>. | Use the output from the command. Interface names starting with <code>en</code> is ethernet interface and names starting with <code>wl</code> is wireless interfaces. Replace all network interfaces names with (e.g. <code>wlan0</code>, <code>eth0</code>) in your <code>.conf</code> text section with the interface name(s) you retrieved from the above command. | ||
===Conky Manager=== | ===Conky Manager=== |
Latest revision as of 08:01, 5 July 2023
Installation
Conky can be installed using the package manager
Configuration
All file names starting with a dot .
are hidden files. If you want to see hidden files in your file manager, you need to make them visible. In most file managers this will be available in the options.
Configuration file
The default configuration file is located in /usr/share/doc/conky-1.11.5_pre/conky.conf
where version are subject to change.
Conky do not create a local conky folder so you will have to create beforehand
Then copy the default to home
The configuration file is a simple text file and the content written using [|LUA syntax] and is split into two parts
- Configuration
- Text
Conky configuration
The first/upper part contains all the configuration settings for the entire conky. Things like the position of the conky on your screen, transparency settings, border settings, the default font and it's size, and how often your conky gets updated. The whole configuration belong between brackets like this
conky.config = { };
Some rules apply
- Every line end with
,
- Non-boolean/numerical value should be placed between
'
- Comment start with
--
Examples
1. This will set the default font color of your conky to white. Additionally, a color1
gets set using a Html Color Codeto a light blue:
conky.config = { ... default_color = 'white', -- White default color color1 = '0ab1ff', -- Light blue ... };
2. This enables Xft, set the default font (LiberationMono), make it bold and set it's size (8):
conky.config = { ... use_xft = true, font = 'LiberationMono:bold:size=8', ... };
3. In order to position your conky on your screen, modify these settings:
conky.config = { ... alignment = 'top_right', -- Conky gets placed in the top right corner of your desktop gap_x 18, -- with a horizontal gap of 18 pixels (to your right screen edge) gap_y 20, -- and a vertical gap of 20 pixels (to your top screen edge). ... };
4. In some case you can have multiple values for one setting, they will be separated by a coma:
conky.config = { ... own_window_hints = 'undecorated,sticky,skip_taskbar,skip_pager,below', ... };
Use the command: man conky
, and look into the CONFIGURATION SETTINGS section to see every settings available.
Conky text
The second part contains the displayed conky code. Every code line corresponds to one displayed line on your desktop. There are a lot of available for displaying and modifying all kinds of information. Use the command: man conky
, and look into the OBJECTS/VARIABLES section to see every objects/variables available.
The whole code belong between these two double bracket:
conky.text = [[ ]];
Examples
1. You can choose the color of your font using one of the following variables:
conky.text = [[ ... ${color} ${color1} ... ]];
Every variable is marked with a $
sign and by { }
brackets (only needed, if the variable contains more than one word).
2. You can call the default font (and it's size) with this command:
conky.text = [[ ... $font ... ]];
If you want a different font (DejaVuSerif) and font size (9) in your conky, use this command in your .conf
code:
conky.text = [[ ... ${font DejaVuSerif:size=9} ... ]];
3. This code line displays the text "Kernel: " and the kernel you are using (using $alignr
just yields a nicer formatting, it is not necessary: $alignr
aligns all following text on the right of your conky):
conky.text = [[ Kernel: ${alignr}${kernel} ]];
4. This variable gives you the latest 3 manjaro blog entry titles (using rss). It checks for updates every 60 minutes.
conky.text = [[ ${rss http://manjaro.org/feed/ 60 item_titles 3} ]];
5. Information about the root partition /
of your manjaro installation is displayed using
conky.text = [[ Root: ${alignr}${fs_used /} of ${fs_size /} ]];
6. Instead of example 3, you can use the following code to display the exact same information:
conky.text = [[ Kernel: ${alignr}${execi 3600 uname -r} ]];
execi
The variable ${execi 3600 XXXX}
runs the XXXX
bash code in your terminal every 3600 seconds and displays the result in your conky. The result of the uname -r
bash command is your currently used kernel name.
Use any bash command instead of XXXX
you can think of. The bash commands can be as long and complicated as you want.
Running conky
If you want to display a conky on your desktop a ~/.config/conky/conky.conf
file with code in it is required. Next, open a terminal and run conky pointing to the file
or to run as background daemon
If you want to run conky automatically after each boot of your computer, you need to find out how to autostart a program. This depends on the Desktop Manager you are using. The next is examples of how to run conky from your system autostart folder/file/script/command.
sleep 20
and -p 20
delay the start of conky by 20 seconds after your Desktop Environment has started. Adjust this value to your liking.
When you change the running conky configuration file - conky will reload. But if you changed one of your dependency scripts (e.g. because you changed a variable and want to see the consequences) you will have to reload conky
Troubleshooting & Tips
Missing rings
To be able to use LUA scripts to execute drawing functions like clock rings - you will a conky package compiled with LUA support. Either build the package the package conky-lua
from AUR or install the conky-lua-nv
from the official repo.
Missing network information
If network information is missing like download speed or network name (SSID), you need to replace the network interfaces in the configuration file with your network interface name. To get the names of your interfaces - open a terminal and execute
Use the output from the command. Interface names starting with en
is ethernet interface and names starting with wl
is wireless interfaces. Replace all network interfaces names with (e.g. wlan0
, eth0
) in your .conf
text section with the interface name(s) you retrieved from the above command.
Conky Manager
An application named Conky manager exist but has not been updated for years and the configurations found in the package may work or they may not. You may install it - it can be a used as an inspiration but you should not rely on it. If you still think you it is a must have - you can build the package conky-manager
using AUR
See Also
- The Conky website
- The Arch Wiki page for Conky