Choose style:

Author Topic: Conky 1.10.1 / Conkywx 5.0.0-1  (Read 7385 times)

0 Members and 1 Guest are viewing this topic.

Offline VinDSL

  • Global Moderator
  • Hero
  • *****
  • Posts: 5183
  • Karma: 939
  • Peppermint Mod
    • View Profile
  • Peppermint version(s): Developmental Builds
Conky 1.10.1 / Conkywx 5.0.0-1
« on: August 02, 2016, 12:08:05 pm »
Finally, got a block of time available and converted my Conky script to run the latest versions of Conky (widgets) and Conkywx (weather).

Conky 1.10.1 requires the pre-text in the config file be written in Lua code, which seems to be a huge stumbling block for most Conky 'gurus'.

Here's my '.conkyrc' file, if anyone is interested in this sort of stuff ...   8)

Code: [Select]
--##################################################
--## VinDSL | rev 16-09-02 13:53 | ver 1.10.1-P7  ##
--##################################################
--##             August 2016 Series               ##
--##################################################

--## íPLEASE READ THE FINE PRINT! ##

--####
--## Development Platforms (current)
--#
--#  Peppermint Linux OS Seven        (GNOME 3.18 - Conky 1.10.x)
--#  Ubuntu 16.10 'Yakkety Yak'       (GNOME-SHELL - UNITY - Conky 1.10.x)
--#  Screen Resolution: 1280x1024x24  (DELL UltraSharp 1907FP)
--#
--## Tips n' Tricks: Conky 1.8.x - 1.9.x will no longer be supported. RIP :)

--####
--## Prerequisites (required)
--#
--#  conky-all 1.10.x
--#  cURL - Command Line Tool
--#  Conkywx 5.0.0-x (Paramvir Likhari)
--#  UTF-8 Compatible Text Editor
--#  mesa-utils - Basic GL Utilities

--## DBus toolsets (required for experimental music players below)
--## Install one PAIR or the other PAIR (but NOT both pair) depending on your distro,
--## Examples from Ubuntu PPA - package names are in ('parenthesis'):
--#
--#  Qt 4 D-Bus tool ('qdbus') & Qt 4 development tools ('qt4-dev-tools')
--#  Qt 5 D-Bus tool ('qdbus-qt5') & Qt 5 base development programs ('qtbase5-dev-tools')

--####
--## Installed fonts (required)
--#
--#  Arrows (JLH Fonts - not included in link below)
--#  ConkyWeather (Stanko Metodiev)
--#  Cut Outs for 3D FX (Fonts & Things)
--#  Droid Font Family (Google Android SDK)
--#  KR A Round (Kat's Fun Fonts)
--#  Moon Phases (Curtis Clark)
--#  OpenLogos (Icoma)
--#  PizzaDude Bullets (Jakob Fischer)
--#  Radio Space (Iconian Fonts)
--#  StyleBats (Vinterstille)
--#  Ubuntu Font Family (Canonical Ltd)
--#  Ubuntu Title Bold (Paulo Silva - not included in link below)
--#  Weather (Jonathan Macagba)
--#
--## Tips n' Tricks from: Mr. Peachy, djyoung4, and 42dorian (Thanks!)
--## Most of the necessary fonts can be downloaded here: http://goo.gl/QPBcPm
--## Unzip the fonts into your font folder, for example: /home/username/.fonts
--## Run this command in a terminal (rebuilds font cache file): sudo fc-cache -fv

conky.config = {

--####
--## Use XFT? Required to Force UTF8 (see below)
--#
use_xft = true,
font = 'DroidSans:size=8.75',
xftalpha = 0.1,

--####
--## Force UTF8? Requires XFT (see above)
--## Displays degree symbol, instead of ┬░, etc.
--#
override_utf8_locale = true,

--####
--## This buffer is used for single lines, text, output from $exec, and other variables.
--## Increasing the 'text_buffer_size' (too high) will drastically reduce Conky's performance.
--## Decreasing the buffer size (too low) will truncate content and cause strange display output.
--## Standard text buffer size is 256 bytes (cannot be less). Adjust YOUR buffer wisely!
--## Tips n' Tricks from dk75:"You don't need to create a 12KiB buffer for every Conky config line."
--#
text_buffer_size = 4352,

--####
--## Maximum number of special things, e.g. fonts, offsets, aligns, etc. (default is 512)
--## Tips n' Tricks from: sparker256 (Thanks, Bill!)
--## (Currently not working in Conky 1.10 - Disabled)
--#
--max_specials 600,

--####
--## Maximum size of user text buffer, e.g. for layout below TEXT line (default is 16384)
--## Increase this, as needed, to accommodate large config files with a great deal of text.
--## Tips n' Tricks from: Cavsfan
--#
max_user_text = 32768,

--####
--## Daemonize Conky, aka 'fork to background'.
--#
background = true,

--####
--## Update interval in seconds.
--#
update_interval = 2.0,

--####
--## The number of times Conky will update before quitting.
--## Zero makes Conky run forever.
--#
total_run_times = 0,

--####
--## Create 'own_window' type. Makes Conky behave like other panels.
--#
own_window = true,
own_window_transparent = true,
own_window_type = 'normal',
own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
--####
--## Some distros require the following lines for TRUE transparency.
--## BOTH of these lines need to be Commented/Uncommented in tandem.
--## (Currently not working in Conky 1.10 - Disabled)
--#
--own_window_argb_visual = true,
--own_window_argb_value = 255,
--####
--## Don't want TRUE transparency? (icons look janky on certain walls)
--## Comment BOTH of the lines above and Uncomment the line below.
--## (Currently not working in Conky 1.10 - Disabled)
--#
--# own_window_argb_visual = false,

--####
--## Force images to redraw when they change.
--#
imlib_cache_size = 1,

--####
--## Use double buffering? Reduces flicker.
--#
double_buffer = true,

--####
--## Draw shades?
--#
draw_shades = false,
default_shade_color = '333300',
--# default_shade_color = '3c3c3c',
--# default_shade_color = '494949',
--# default_shade_color = '565656',
--# default_shade_color = '626262',

--####
--## Draw outlines?
--#
draw_outline = false,

--####
--## Draw borders around text?
--#
draw_borders = false,

--####
--## Draw borders around graphs?
--#
draw_graph_borders = false,

--####
--## Print text to stdout?
--## Print text in console?
--#
out_to_ncurses = false,
out_to_console = false,

--####
--## Text alignment.
--#
alignment = 'top_right',

--####
--## Minimum size of the text area.
--#
minimum_width = 245,
minimum_height = 1394,

--####
--## Maximum width of the text area.
--#
maximum_width = 245,

--####
--## Gap between text and screen borders.
--#
gap_x = 6,  --# Left/Right
gap_y = 32, --# Top/Bottom

--####
--## Shorten MiB/GiB to M/G in stats.
--#
short_units = true,

--####
--## Pad % symbol spacing after numbers.
--#
pad_percents = 0,

--####
--## Pad spacing between text and borders.
--#
border_inner_margin = 4,

--####
--## Limit the length of names in "Top Processes".
--#
top_name_width = 10,

--####
--## Subtract file system -/+buffers/cache from used memory?
--## Set to true, to produce meaningful physical memory stats.
--#
no_buffers = true,

--####
--## Set to true, if you want all text to be in UPPERCASE.
--#
uppercase = false,

--####
--## Number of cpu samples to average.
--## Set to 1 to disable averaging.
--#
cpu_avg_samples = 2,

--####
--## Number of net samples to average.
--## Set to 1 to disable averaging.
--#
net_avg_samples = 2,

--####
--## Add spaces to keep things from moving around?
--## Only affects certain objects.
--#
use_spacer = 'right',

--####
--## My colors (suit yourself)
--#
color0 = 'white', --#FFFFFF
color1 = 'ivory', --#FFFFF0
color2 = 'ivory2', --#EEEEE0
color3 = 'ivory3', --#CDCDC1
color4 = 'ffcc66', --#FFCC66
color5 = 'ivory3', --#CDCDC1
color6 = 'gray', --#BEBEBE
color7 = 'antiquewhite4', --#8B8378
color8 = 'dimgray', --#696969
color9 = 'tomato', --#FF6347

--#####
--## Load Lua for shading (optional)
--## Set the path to your script here.
--## (Currently not working in Conky 1.10 - Disabled)
--#
-- lua_load = '~/.conky/draw_bg.lua',
-- lua_draw_hook_pre = 'draw_bg',

--####
--## Load Lua for bargraphs (required)
--## Set the path to your script here.
--#
lua_load = '~/.conky/bargraph_small.lua',
lua_draw_hook_post = 'main_bars',

--####
--## Define the locations of Conkywx files (required)
--## Set the path to your .confs and templates here.
--#
template0 = '/usr/share/conkywx/conkywx.sh',
template1 = '/home/vindsl/.config/conkywx/vindsl-imperial-conkywx.conf',
template2 = '/home/vindsl/.config/conkywx/vindsl-metric-conkywx.conf',
template3 = '/home/vindsl/.config/conkywx/wx-wu-vindsl-imperial-weather-dingbat-template.sh',
template4 = '/home/vindsl/.config/conkywx/wx-wu-vindsl-imperial-weather-graphic-template.sh',
template5 = '/home/vindsl/.config/conkywx/wx-wu-vindsl-metric-weather-dingbat-template.sh',
template6 = '/home/vindsl/.config/conkywx/wx-wu-vindsl-metric-weather-graphic-template.sh'

}
conky.text = [[

##################################
##             LOGO             ##
##################################
## Uncomment for hard-coded ID (static)
# ${offset -3}${voffset -34}${font OpenLogos:size=106}${color2}v${font}${voffset -78}${goto 180}${font UbuntuTitleBold:size=19.55}${color2}${offset 4}1${offset 2}6${offset 1}.${offset 0}1${offset 1}0${font}
####
## Uncomment for soft-coded ID (dynamic)
# ${voffset -30}${font OpenLogos:size=103}${color2}v${font}${voffset -75}${goto 179}${font UbuntuTitleBold:size=19.6}${color4}${execpi 1800 cat /etc/*release | grep 'RELEASE' | awk -F'=' '{print $2}'}${font}
## Additional ID (branch version, code name, release date, etc.)
# ${voffset 0}${goto 185}${font Ubuntu-B:bold:size=7.55}${color5}${execpi 1800 conky --version | sed -n 1p | cut -b1-13}${font}
# ${voffset 0}${goto 182}${font Ubuntu-B:bold:size=7.55}${color5}Conky ${conky_version}${font}
# ${voffset 0}${goto 182}${font Ubuntu-B:size=8}${color4}Pre-Alpha${font}
####
## Uncomment to display YOUR custom graphic image (upper-right corner)
# ${voffset -30}${font OpenLogos:size=103}${color2}v${font}${voffset -52}${image /home/vindsl/Pictures/BDC/Avatar(Transparent-50)55x55.png -p 180,0 -s 52x52 -n}
${voffset -1}${image /home/vindsl/.conky/logos/peppermint_logo_small_4.png -n}${voffset 18}${goto 45}${font Ubuntu-B:bold:size=7.55}${color5}${font Ubuntu-B:bold:size=7.55}${color5}Conkywx ${execpi 1800 conkywx -v}${goto 180}Conky ${conky_version}${font}${voffset -5}
##################################
##            SYSTEM            ##
##################################
${voffset 4}${font DroidSans:bold:size=8.25}${color4}SYSTEM${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 4}${font OpenLogos:size=10}${color2}u${voffset -4}${font DroidSans:size=8.55}${color3}${offset 5}${execpi 1800 lsb_release -sd | sed -e 's/Ubuntu/Ubuntu/g' -e 's/development/dev/g'}${alignr}${execpi 1800 lsb_release -sr}${font}
# ${voffset 4}${font OpenLogos:size=10}${color2}u${voffset -4}${font DroidSans:size=8.55}${color3}${offset 5}${execpi 1800 lsb_release -sd}${alignr}32 Bit${font}
${voffset 0}${offset -2}${font OpenLogos:size=12}${color2}Z${voffset -4}${font DroidSans:size=8.55}${color3}${offset 3}${sysname}${offset 3}${kernel}${alignr}${font DroidSans:size=8.3}${machine}${font}
####
## Uncomment for nVidia ID (nvidia-smi version - dynamic)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}${execpi 1800 nvidia-smi -q | grep "Product Name" | sed -e 's/.*: /nVidia /'}${alignr}${execpi 1800 nvidia-smi -q | grep "Driver Version" | awk '{print $4}'}${font}
####
## Uncomment for 'nvidia-current' driver ID (DPKG version - hybrid)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce 7600 GT${alignr}${font DroidSans:size=8.3}${execpi 1800 dpkg --status nvidia-current | grep Version | cut -f 1 -d '-' | sed 's/[^.,0-9]//g'}${font}
####
## Uncomment for nvidia driver ID (OpenGL version - hydrid)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce 7600 GT${offset 3}(${offset 2}${execpi 2 nvidia-settings -q gpucoretemp -t --verbose=none | awk '{s+=$1}END{print s/NR}' RS=" "}░${offset 1})${alignr}${font DroidSans:size=8.3}${execpi 1800 glxinfo | grep 'OpenGL version string' | sed -e 's/OpenGL.*: //' | cut -c '14-20'}${font}
## Uncomment when running Nouveau drivers
${voffset 1}${font StyleBats:size=10}${color2}d${voffset -1}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce GT 710${voffset -2}${alignr}nouveau${font}
## Uncomment when running nVidia drivers
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce 7600 GT${offset 3}(${offset 2}${execpi 2 nvidia-settings -q gpucoretemp | sed -n 6p | cut -b44-45}░${offset 1})${alignr}${font DroidSans:size=8.3}${execpi 1800 nvidia-smi -q | grep "Driver Version" | awk '{print $4}'}${font}
####
## Uncomment for hard-coded video ID (Nouveau version - static)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce 7600 GT${offset 2}${alignr}nouveau${font DroidSans:size=8.3}${font}
####
## Uncomment for hard-coded video ID (Generic version / any card / any driver - static)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}Video Card Product Name${alignr}Driver Version${font DroidSans:size=8.3}${font}
####
## Uncomment for CPU ID / CPU Temp / CPU frequency (hybrid)
# ${voffset 2}${font StyleBats:size=10}${color2}A${voffset -1}${font DroidSans:size=8.55}${color3}${offset 5}Intel${offset 3}P4${offset 3}Extreme${offset 3}Edition${offset 3}(${offset 2}${execpi 2 sensors | grep 'temp1' | cut -c16-17}░${offset 1})${alignr 1}${font DroidSans:size=8.3}${freq_g cpu0}${offset 1}GHz${font}
## Uncomment when running Nouveau drivers
${voffset 3}${font StyleBats:size=10}${color2}A${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}Intel${offset 3}Core${offset 3}i5-3470${offset 4}(${offset 2}${execpi 2 sensors | grep 'Core 0' | sed -n 1p | cut -b18-19}░${voffset -1}${offset 1})${alignr -3}${font DroidSans:size=8.3}${freq_g cpu0}${voffset -1}${offset 2}GHz${font}
####
## Uncomment for System Uptime (hybdid)
${voffset 3}${font StyleBats:size=10}${color2}q${voffset -3}${font DroidSans:size=8.55}${color3}${offset 5}System${offset 3}Uptime${voffset -1}${alignr}${font DroidSans:size=8.3}${uptime_short}${font}
##################################
##          PROCESSORS          ##
##################################
${voffset 4}${font DroidSans:bold:size=8}${color4}PROCESSORS${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 5}${font StyleBats:size=9.9}${color2}k${voffset -2}${font DroidSansFallback:size=8}${color3}${offset 2}CPU1${offset 5}${font DroidSans:size=8}${cpu cpu1}%${font DroidSansFallback:size=8}${goto 137}${voffset -1}CPU2${offset 5}${font DroidSans:size=8}${cpu cpu2}%${font}
${voffset 1}${font StyleBats:size=9.9}${color2}k${voffset -2}${font DroidSansFallback:size=8}${color3}${offset 2}CPU3${offset 5}${font DroidSans:size=8}${cpu cpu3}%${font DroidSansFallback:size=8}${goto 137}${voffset -1}CPU4${offset 5}${font DroidSans:size=8}${cpu cpu4}%${font}
##################################
##            MEMORY            ##
##################################
${voffset 4}${font DroidSans:bold:size=8}${color4}MEMORY${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 6}${font StyleBats:size=10}${color2}l${voffset -2}${font DroidSansFallback:size=8.1}${color3}${offset 3}RAM${goto 97}${font DroidSans:size=8.3}${mem}${goto 133}/${offset 5}${memmax}${alignr}${memperc}%${font}
##################################
##             HDD              ##
##################################
${voffset 14}${font DroidSans:bold:size=8}${color4}HDD${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 7}${font StyleBats:size=9.9}${color2}x${voffset -2}${font DroidSansFallback:size=8.1}${color3}${offset 4}ROOT${goto 95}${font DroidSans:size=8.3}${fs_used /}${goto 133}/${offset 5}${fs_size /}${alignr}${fs_free_perc /}%${font}
${voffset 16}${font StyleBats:size=9.9}${color2}x${voffset -2}${font DroidSansFallback:size=8.1}${color3}${offset 4}HOME${goto 95}${font DroidSans:size=8.3}${fs_used /home}${goto 133}/${offset 5}${fs_size /home}${alignr}${fs_free_perc /home}%${font}
${voffset 16}${font StyleBats:size=9.9}${color2}4${voffset -2}${font DroidSansFallback:size=8.1}${color3}${offset 4}SWAP${goto 95}${font DroidSans:size=8.3}${swap}${goto 133}/${offset 5}${swapmax}${alignr}${swapperc}%${font}
##################################
##         TOP PROCESSES        ##
##################################
${voffset 15}${font DroidSans:bold:size=8}${color4}TOP PROCESSES${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 6}${font StyleBats:size=10}${color1}h${voffset -4}${font DroidSansFallback:size=8.6}${color3}${offset 5}${top_mem name 1}${goto 120}${font DroidSans:size=8.3}${top_mem mem_res 1}${alignr}${top_mem mem 1}%${font}
${voffset 1}${font StyleBats:size=10}${color1}h${voffset -4}${font DroidSansFallback:size=8.6}${color3}${offset 5}${top_mem name 2}${goto 120}${font DroidSans:size=8.3}${top_mem mem_res 2}${alignr}${top_mem mem 2}%${font}
${voffset 1}${font StyleBats:size=10}${color1}h${voffset -4}${font DroidSansFallback:size=8.6}${color3}${offset 5}${top_mem name 3}${goto 120}${font DroidSans:size=8.3}${top_mem mem_res 3}${alignr}${top_mem mem 3}%${font}
# ${voffset 1}${font StyleBats:size=10}${color1}h${voffset -4}${font DroidSansFallback:size=8.6}${color3}${offset 5}${top_mem name 4}${goto 120}${font DroidSans:size=8.3}${top_mem mem_res 4}${alignr}${top_mem mem 4}%${font}
# ${voffset 1}${font StyleBats:size=10}${color1}h${voffset -4}${font DroidSansFallback:size=8.6}${color3}${offset 5}${top_mem name 5}${goto 120}${font DroidSans:size=8.3}${top_mem mem_res 5}${alignr}${top_mem mem 5}%${font}
# ${voffset 1}${font StyleBats:size=10}${color1}h${voffset -4}${font DroidSansFallback:size=8.6}${color3}${offset 5}${top_mem name 6}${goto 120}${font DroidSans:size=8.3}${top_mem mem_res 6}${alignr}${top_mem mem 6}%${font}
##################################
##   NETWORK - AUTO DETECTION   ##
##################################
###
## Change all instances of WLAN0/ETH0 to WLAN1/ETH1 etc.
## as needed, depending on your rig (in several places)
#
## WIRELESS/WIFI SECTION ##
${if_existing /proc/net/route wlan0}
${voffset -11}${font DroidSans:bold:size=8}${color4}WIFI NET${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 4}${font PizzaDudeBullets:size=9.5}${color6}T${font DroidSans:size=8.65}${color3}${offset 5}Download${goto 120}${font DroidSans:size=8.3}${totaldown wlan0}${alignr}${font DroidSans:size=8.3}${downspeed wlan0}${font}
${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}N${font DroidSans:size=8.65}${color3}${offset 5}Upload${goto 120}${font DroidSans:size=8.3}${totalup wlan0}${alignr}${font DroidSans:size=8.3}${upspeed wlan0}${font}
${voffset 4}${font PizzaDudeBullets:size=9.5}${color6}a${font DroidSans:size=8.65}${color3}${offset 5}Private${offset 3}IP${goto 123}${font DroidSansFallback:size=8.5}LAN${alignr}${font DroidSans:size=8.3}${addr wlan0}${font}
#
## Uncomment to display your Public/WAN URL (WIFI) - via ifconfig.me
${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}a${font DroidSans:size=8.65}${color3}${offset 5}Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.5}WAN${font DroidSans:size=8.3}${alignr}${execi 1800 curl -s ifconfig.me}${font}${else}
#
## Uncomment to display your Public/WAN URL (WIFI) - via checkip.dyndns.org
# ${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}a${font DroidSans:size=8.65}${color3}${offset 5}Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.5}WAN${font DroidSans:size=8.3}${alignr}${execi 1800 wget -q -O - checkip.dyndns.org | sed -e 's/[^[:digit:]\|.]//g'}${font}${else}
#
## Uncomment to obscure your Public/WAN URL (WIFI) - for privacy, screenshots, etc
# ${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}a${font DroidSans:size=8.65}${color3}${offset 5}Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.5}WAN${font DroidSans:size=8.3}${alignr}Demo Mode${font}${else}
#
## WIRED/ETHERNET SECTION ##
${if_existing /proc/net/route eno1}
${voffset -23}${font DroidSans:bold:size=8}${color4}WIRED NET${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 4}${font PizzaDudeBullets:size=9.5}${color6}T${voffset -2}${font DroidSansFallback:size=8.6}${color3}${offset 5}Download${goto 120}${font DroidSans:size=8.3}${totaldown eno1}${alignr}${font DroidSans:size=8.3}${downspeed eno1}${font}
${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}N${voffset -2}${font DroidSansFallback:size=8.6}${color3}${offset 5}Upload${goto 120}${font DroidSans:size=8.3}${totalup eno1}${alignr}${font DroidSans:size=8.3}${upspeed eno1}${font}
${voffset 4}${font PizzaDudeBullets:size=9.5}${color6}a${voffset -1}${font DroidSansFallback:size=8.6}${color3}${offset 5}Private${offset 3}IP${goto 123}${font DroidSansFallback:size=8.5}LAN${alignr}${font DroidSans:size=8.3}${addr eno1}${font}
#
## Uncomment to display your Public/WAN URL (WIRED) - via ifconfig.me
# ${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}a${font DroidSans:size=8.6}${color3}${offset 5}Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.5}WAN${font DroidSans:size=8.3}${alignr}${execi 1800 curl -s ifconfig.me}${font}${else}
#
## Uncomment to display your Public/WAN URL (WIRED) - via checkip.dyndns.org
# ${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}a${voffset -2}${font DroidSans:size=8.6}${color3}${offset 5}# Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.5}WAN${font DroidSans:size=8.3}${alignr}# ${execi 1800 wget -q -O - checkip.dyndns.org | sed -e 's/[^[:digit:]\|.]//g'}${font}${else}
#
## Uncomment to obscure your Public/WAN URL (WIRED) - for privacy, screenshots, etc
${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}a${font DroidSans:size=8.55}${color3}${offset 5}Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.5}WAN${font DroidSans:size=8.3}${voffset -1}${alignr}Demo Mode${font}${else}
#
## COMMON DISCONNECTED/OFFLINE SECTION ##
${voffset -22}${font DroidSans:bold:size=8}${color4}NETWORK${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 25}${goto 77}${font DroidSans:bold:size=8}NO CONNECTION${voffset 23}${font}${endif}${endif}
##################################
##      CONKYWX WEATHER         ##
##################################
${voffset 4}${font DroidSans:bold:size=8.25}${color4}CONKYWX${offset 8}${color6}${voffset -2}${hr 1}${font}
####
## Uncomment for IMPERIAL Weather Stats (DINGBAT font set).
# ${execpi 900 ${template0} -c "${template1}" -t "${template3}"}${font}
####
## Uncomment for IMPERIAL Weather Stats (GRAPHIC icon set).
${execpi 900 ${template0} -c "${template1}" -t "${template4}"}${font}
####
## Uncomment for METRIC Weather Stats (DINGBAT font set).
# ${execpi 900 ${template0} -c "${template2}" -t "${template5}"}${font}
####
## Uncomment for METRIC Weather Stats (GRAPHIC icon set).
# ${execpi 900 ${template0} -c "${template2}" -t "${template6}"}${font}
##################################
##           TIME               ##
##################################
${voffset 4}${font DroidSans:bold:size=8}${color4}TIME${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset -5}${font RadioSpace:size=32}${color3}${if_match ${time %l}<=9}${alignc 7}${time %l:%M}${offset 3}${time %p}${else}${if_match ${time %l}>=10}${alignc -1}${time %l:%M}${offset 3}${time %p}${endif}${endif}${font}
##################################
##         CALENDAR             ##
##################################
${voffset 3}${font DroidSans:bold:size=8}${color4}DATE${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 18}${font DroidSansMono:size=7.55}${color2}${alignc 60}${time %A}${font}
${voffset -4}${font DroidSansFallback:bold:size=18}${if_match ${time %e}<=9}${color3}${alignc 65}${time %e}${font}${else}${if_match ${time %e}>=10}${color3}${alignc 60}${time %e}${endif}${endif}${font}
${voffset 0}${font DroidSansMono:size=7.55}${color2}${alignc 60}${time %B}${font}
${voffset 0}${font DroidSansMono:size=7.6}${color2}${alignc 60}${time %Y}${font}
${voffset -83}${font CutOutsFor3DFX:size=67}${color6}${alignc 99}2${font}
####
## Uncomment for "SUNDAY = First Day-of-the-Week" valid Jan.2015 - Dec.2016 (use mono fonts only)
## Tweaked for proper alignment of annoying months with six calendar weeks.
${if_match "${time %b %G}"=="May 2015"}${voffset -76}${else}${if_match "${time %b %G}"=="Aug 2015"}${voffset -76}${else}${if_match "${time %b %G}"=="Jan 2016"}${voffset -76}${else}${if_match "${time %b %G}"=="Jul 2016"}${voffset -76}${else}${if_match "${time %b %G}"=="Oct 2016"}${voffset -76}${else}${voffset -64}${endif}${endif}${endif}${endif}${endif}${font DroidSansMono:size=7.55}${color3}${execpi 60 VinDSL_Cal_9=`date +%-d`; cal -h | sed -e 's/\r//g' -e 's/^/ /g' -e '1d' -e s/^/"\$\{offset 100"\}/ -e 's/\<'"$VinDSL_Cal_9"'\>/${color9}&${color3}/'}
####
## Uncomment for "MONDAY = First Day-of-the-Week" valid Jan.2015 - Dec.2016 (use mono fonts only)
## Tweaked for proper alignment of annoying months with six calendar weeks.
# ${if_match "${time %b %G}"=="Mar 2015"}${voffset -76}${else}${if_match "${time %b %G}"=="Aug 2015"}${voffset -76}${else}${if_match "${time %b %G}"=="Nov 2015"}${voffset -76}${else}${if_match "${time %b %G}"=="May 2016"}${voffset -76}${else}${if_match "${time %b %G}"=="Oct 2016"}${voffset -76}${else}${voffset -70}${endif}${endif}${endif}${endif}${endif}${font DroidSansMono:size=7.55}${color3}${execpi 60 VinDSL_Cal_9=`date +%-d`; ncal -M -C -h | sed -e 's/\r//g' -e 's/^/ /g' -e '1d' -e s/^/"\$\{offset 100"\}/ -e 's/\<'"$VinDSL_Cal_9"'\>/${color9}&${color3}/'}
##################################
##  RHYTHMBOX 1 (Experimental)  ##
##################################
# ${if_running rhythmbox}
# ${voffset -13}${font DroidSans:bold:size=8}${color4}RHYTHMBOX${offset 8}${color6}${voffset -2}${hr 1}${font}
# ${voffset 4}${font DroidSans:size=8.25}${color3}${if_match "${execpi 2 expr length "`/usr/bin/rhythmbox-client --print-playing-format %tt | head -n 1`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 rhythmbox-client --print-playing-format %tt --no-start}}${font}${else}${alignc}${execi 2 rhythmbox-client --print-playing-format %tt --no-start}${font}${endif}${endif}
##################################
##  RHYTHMBOX 2 (Experimental)  ##
##################################
${if_running rhythmbox}
${voffset -13}${font DroidSans:bold:size=8}${color4}RHYTHMBOX${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 3}${font DroidSans:size=7.85}${color3}${if_match "${execpi 2 expr length "`qdbus org.mpris.MediaPlayer2.rhythmbox /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title | cut -c 14-""`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 qdbus org.mpris.MediaPlayer2.rhythmbox /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title | cut -c 14-""}}${font}${else}${alignc}${execi 2 qdbus org.mpris.MediaPlayer2.rhythmbox /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title | cut -c 14-""}${font}${endif}${endif}
##################################
##    BANSHEE (Experimental)    ##
##################################
${if_running banshee}
${voffset -25}${font DroidSans:bold:size=8}${color4}BANSHEE${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 3}${font DroidSans:size=7.85}${color3}${if_match "${execpi 2 expr length "`/usr/bin/banshee --query-title --no-present | cut -f1- -d" "`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 banshee --query-title --no-present | cut -f2- -d" "}}${font}${else}${alignc}${execi 2 banshee --query-title --no-present | cut -f2- -d" "}${font}${endif}${endif}
##################################
##   GUAYADEQUE (Experimental)  ##
##################################
${if_running guayadeque}
${voffset -15}${font DroidSans:bold:size=8}${color4}GUAYADEQUE${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 2}${font DroidSans:size=7.85}${color3}${if_match "${execpi 2 expr length "`qdbus org.mpris.guayadeque /\Player org.freedesktop.MediaPlayer.GetMetadata | grep title | cut -f2- -d" "`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 qdbus org.mpris.guayadeque /\Player org.freedesktop.MediaPlayer.GetMetadata | grep title | cut -f2- -d" "}}${font}${else}${alignc}${execi 2 qdbus org.mpris.guayadeque /\Player org.freedesktop.MediaPlayer.GetMetadata | grep title | cut -f2- -d" "}${font}${endif}${endif}
##################################
##     VLC (Experimental)       ##
##################################
${if_running vlc}
${voffset -37}${font DroidSans:bold:size=8}${color4}VLC${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 6}${font DroidSans:size=8.25}${color3}${if_match "${execpi 2 expr length "`qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep xesam:artist: | cut -c -13 --complement | tr '\n' ' ' && qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title: | cut -c -13 --complement`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep xesam:artist: | cut -c -13 --complement | tr '\n' ' ' && qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title: | cut -c -13 --complement}}${font}${else}${alignc}${execi 2 qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep xesam:artist: | cut -c -13 --complement | tr '\n' ' ' && qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title: | cut -c -13 --complement}${font}${endif}${endif}
]]

If you're using Pluma to tweak this code:  Pluma -> View Highlight Mode -> Scripts -> Lua

« Last Edit: August 02, 2016, 04:36:56 pm by VinDSL, Reason: Update »

Offline Atrail

  • nOOb
  • *
  • Posts: 1
  • Karma: 0
  • New Forum User
    • View Profile
  • Peppermint version(s): 7
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #1 on: August 02, 2016, 03:36:04 pm »
That is one of the best diplays I have seen on any Linux O.S.
Great Work
Atrail

Offline PCNetSpec

  • Administrator
  • Hero
  • *****
  • Posts: 25300
  • Karma: 2793
  • "-rw-rw-rw-" .. The Number Of The Beast
    • View Profile
    • PCNetSpec
  • Peppermint version(s): Peppermint 8R, 9, and 9R
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #2 on: August 02, 2016, 03:49:55 pm »
Yeah Mr DSL is the conky dude alright :)

BTW, welcome to the for Atail :)
WARNING: You are logged into reality as 'root' .. logging in as 'insane' is the only safe option.

Team Peppermint
PCNetSpec

Offline VinDSL

  • Global Moderator
  • Hero
  • *****
  • Posts: 5183
  • Karma: 939
  • Peppermint Mod
    • View Profile
  • Peppermint version(s): Developmental Builds
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #3 on: August 02, 2016, 04:26:24 pm »
That is one of the best diplays I have seen on any Linux O.S.
Great Work
Atrail

Thanks, Atrail, and welcome aboard !

I'll tweak this Conky 1.10x version some more, then do a proper write-up in the 'big thread' on Ubu Forums (427K Views / 2K Replies):  https://goo.gl/pn6SOS

I don't want to clog this site with a bunch of 'conkystador' traffic ...   ;)

Offline VinDSL

  • Global Moderator
  • Hero
  • *****
  • Posts: 5183
  • Karma: 939
  • Peppermint Mod
    • View Profile
  • Peppermint version(s): Developmental Builds
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #4 on: August 02, 2016, 04:27:34 pm »
Yeah Mr DSL is the conky dude alright :)

Thanks, Mark !

I made the 'green' theme, just for you ...   :D

Offline PCNetSpec

  • Administrator
  • Hero
  • *****
  • Posts: 25300
  • Karma: 2793
  • "-rw-rw-rw-" .. The Number Of The Beast
    • View Profile
    • PCNetSpec
  • Peppermint version(s): Peppermint 8R, 9, and 9R
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #5 on: August 02, 2016, 06:03:08 pm »
Gee thanks <in my most sarcastic tone>  ::)
WARNING: You are logged into reality as 'root' .. logging in as 'insane' is the only safe option.

Team Peppermint
PCNetSpec

Offline VinDSL

  • Global Moderator
  • Hero
  • *****
  • Posts: 5183
  • Karma: 939
  • Peppermint Mod
    • View Profile
  • Peppermint version(s): Developmental Builds
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #6 on: August 04, 2016, 02:24:29 am »
I switched back to nVidia drivers -- this time 367.35    ::)

I found out, since this GT 710 is a new card, I needed to go with NEW drivers.  The stale Nouveau & nVidia drivers in the Ubu repos were meh.

As an aside, after 24 hours of no hard locks, I decided to take a chance and reinstall the xfce4-power-manger.  So far, it's working too.  YaY !

Anyway, switching vid drivers requires spending a half-day tweaking Conky.  I don't know if I can get the Lau bar graphs working correctly. 

I'll keep banging away at it and see what happens ...





« Last Edit: August 04, 2016, 02:41:05 am by VinDSL, Reason: Addendum »

Offline tppthpthp

  • Jr. Member
  • **
  • Posts: 28
  • Karma: 3
  • New Forum User
    • View Profile
  • Peppermint version(s): 6 & 7
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #7 on: August 04, 2016, 12:50:09 pm »
Sooo Cooool.

Very Nice.
tppthpthp aka: "bob"

Offline VinDSL

  • Global Moderator
  • Hero
  • *****
  • Posts: 5183
  • Karma: 939
  • Peppermint Mod
    • View Profile
  • Peppermint version(s): Developmental Builds
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #8 on: August 04, 2016, 01:49:56 pm »
Thx !  I'm sort of between a rock n' a hard spot right now, because of the driver situation.

The new video card I installed in this machine requires the latest nVidia drivers or it hard locks -- could be 3 minutes or 3 hours.  But, the latest nVidia drivers (for instance) now include 'nvidia-settings' in the video drivers themselves.  Conky, of course,  can't find the 'nvidia-settings' app, because it's integrated into the nVidia driver code -- it's not a standalone app now  -- and so forth, and so on, blah, blah, blah.

I could always nix the custom Lua code, but where's the fun in that ?   ;D

I'll probably end up having to haxor the Conky code, and submit a 'pull' over on Github, before the Lua code starts working correctly in Conky, with the latest nVidia drivers.  Or, maybe I can successfully haxor the custom Lua modules and get them to play nicely ....  who knows where this will all lead ?

BTW, this is one of the reasons why Conky is soooo addictive !  LoL !

Anyway, it's a start ...


Offline Freth

  • nOOb
  • *
  • Posts: 8
  • Karma: 1
  • New Forum User
    • View Profile
  • Peppermint version(s): 6
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #9 on: August 04, 2016, 07:52:09 pm »
I got Conky working, with the fonts.  Everything displays except for  weather.  I found and downloaded Conkywx from the author, but I am thinking I need a config file somewhere.  I can run Conkywx separately and get a desktop full of displays, but Conky weather section itself remains empty when running your Conky script.  What am I missing?  Oh and the graph bars aren't showing up (yes, I have lua installed).
« Last Edit: August 04, 2016, 08:18:27 pm by Freth »

Offline VinDSL

  • Global Moderator
  • Hero
  • *****
  • Posts: 5183
  • Karma: 939
  • Peppermint Mod
    • View Profile
  • Peppermint version(s): Developmental Builds
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #10 on: August 04, 2016, 09:17:15 pm »
Assuming you need Imperial weather readout...

Code: [Select]
##################################################
## VinDSL | rev. 16-08-04 12:47 | ver. GRAPHIC  ##
##################################################
## IMPERIAL WEATHER TEMPLATE for Conkywx 1.10.1 ##
##################################################
${voffset -4}${font RadioSpace:size=31.8}${color6}${alignc -18}[PT]${font}${font Arrows:size=26}${voffset -13}${offset 2}${color6}[FCTTF]${font}
${voffset 5}${font DroidSansFallback:bold:size=7.4}${alignc 6}${color5}Feels${offset 3}like${offset 1}:${offset 2}${color6}[FL]${offset 2}${color5}/${offset 3}${color6}[FCTT]${font}
${voffset -38}${goto 203}${font DroidSansFallback:bold:size=8.3}${color6}[D1T]${font}
${voffset -5}${goto 203}${font DroidSansFallback:bold:size=7.2}${color5}CoR${offset 3}${color6}[D1P]${font}
${voffset -40}${goto 188}${font KRARound:size=41.6}${color6}I${font}
${voffset 6}${font Ubuntu:size=22.75}${color5}${alignc}[CT]${font}
${voffset 7}${goto 34}${font DroidSansFallback:bold:size=8}${color5}Sunrise${offset 1}:${offset 1}${color6}[SR]${font}${voffset -2}${offset 3}${font Arrows:size=14}${color6}[FCTSRF]${font}${voffset -1}${offset 10}${font DroidSansFallback:bold:size=8}${color5}Sunset${offset 1}:${offset 1}${color6}[SS]${font}${voffset -2}${offset 3}${font Arrows:size=14}${color6}[FCTSSF]${font}
${voffset 8}${goto 87}${font DroidSansFallback:bold:size=7.55}${color5}Humidity${offset 1}:${offset 2}${color6}[HM]${font}${voffset -2}${offset 4}${font Arrows:size=14}${color6}[FCTHF]${font}${voffset 11}${goto 86}${font DroidSansFallback:bold:size=7.55}${color5}Barometer${offset 1}:${offset 2}${color6}[BR]${font}${voffset -2}${offset 4}${font Arrows:size=14}${color6}[FCTPF]${font}${voffset 11}${goto 86}${font DroidSansFallback:bold:size=7.55}${color5}Moonrise${offset 1}:${offset 1}${color6}[MR]${font}${voffset -2}${offset 4}${font Arrows:size=14}${color6}[FCTMRF]${font}${voffset 11}${goto 86}${font DroidSansFallback:bold:size=7.55}${color5}Moonset${offset 1}:${offset 1}${color6}[MS]${font}${voffset -2}${offset 4}${font Arrows:size=14}${color6}[FCTMSF]${font}${voffset 11}${goto 87}${font DroidSansFallback:bold:size=7.55}${color5}Full${offset 3}Moon${offset 1}:${offset 2}${color6}[FM]${font}
${voffset -65}${goto 16}${font ConkyWindNESW:size=41.6}${color6}[BF]${font}
${voffset -33}${font DroidSans:bold:size=10.5}${color6}${alignc -92}[MV]${font}
${voffset 19}${goto 22}${font DroidSans:bold:size=8.45}${color3}[WS] mph${voffset -1}${goto 210}[MP]${font}
${voffset 9}${goto 26}${font DroidSans:bold:size=8.5}${color5}[D2D]${goto 88}[D3D]${goto 145}[D4D]${goto 203}[D5D]${font}
${image [PIC] -p 12,520 -s 46x46}${image [D2I] -p 19,715 -s 34x34}${image [D3I] -p 81,715 -s 34x34}${image [D4I] -p 138,715 -s 34x34}${image [D5I] -p 197,715 -s 34x34}${image [MIC] -p 190,627 -s 46x46}
${voffset 25}${goto 20}${font DroidSansFallback:bold:size=8.5}${color3}[D2T]${goto 84}[D3T]${goto 142}[D4T]${goto 200}[D5T]${font}
${voffset -1}${goto 22}${font DroidSans:bold:size=8.45}${color5}CoR${offset 3}${color3}[D2P]${goto 86}${color5}CoR${offset 3}${color3}[D3P]${goto 144}${color5}CoR${offset 3}${color3}[D4P]${goto 203}${color5}CoR${offset 3}${color3}[D5P]${font}

If you're going to play around with this Conky script, you really should look at this thread:  https://goo.gl/pn6SOS

You don't need to read all 246 pages, but if you look around, it should answer all your questions ...   ;)

Offline stevesveryown

  • Member
  • ***
  • Posts: 218
  • Karma: 37
  • Peppermint Fan
    • View Profile
    • stevesveryown
  • Peppermint version(s): Peppermint 8, 9 & 10!!!!
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #11 on: August 06, 2016, 05:31:17 pm »
Wow, awesome creation.  And here I felt I accomplished something when I learned how to change fonts and colors in conky.  ;)

Offline PCNetSpec

  • Administrator
  • Hero
  • *****
  • Posts: 25300
  • Karma: 2793
  • "-rw-rw-rw-" .. The Number Of The Beast
    • View Profile
    • PCNetSpec
  • Peppermint version(s): Peppermint 8R, 9, and 9R
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #12 on: August 06, 2016, 05:48:25 pm »
Mr DSL has been at this conky stuff since woolly mammoths roamed the planet, so don't feel too bad .. I know I don't understand half of it ;)
WARNING: You are logged into reality as 'root' .. logging in as 'insane' is the only safe option.

Team Peppermint
PCNetSpec

Offline VinDSL

  • Global Moderator
  • Hero
  • *****
  • Posts: 5183
  • Karma: 939
  • Peppermint Mod
    • View Profile
  • Peppermint version(s): Developmental Builds
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #13 on: August 06, 2016, 10:37:40 pm »
Tweaked the '.conkyrc' file -- added a couple of templates '${template7}' & '${template8}' so you can put the route interfaces in one spot, rather than 12 places.  Been meaning to do that for years ...   ;D

Code: [Select]
--##################################################
--## VinDSL | rev 16-09-05 23:21 | ver 1.10.1-P7  ##
--##################################################
--##             August 2016 Series               ##
--##################################################

--## íPLEASE READ THE FINE PRINT! ##

--####
--## Development Platforms (current)
--#
--#  Peppermint Linux OS Seven        (GNOME 3.18 - Conky 1.10.x)
--#  Ubuntu 16.10 'Yakkety Yak'       (GNOME-SHELL - UNITY - Conky 1.10.x)
--#  Screen Resolution: 1280x1024x24  (DELL UltraSharp 1907FP)
--#
--## Tips n' Tricks: Conky 1.8.x - 1.9.x will no longer be supported. RIP :)

--####
--## Prerequisites (required)
--#
--#  conky-all 1.10.x
--#  Conkywx 5.0.0-x (Paramvir Likhari)
--#  UTF-8 Compatible Text Editor
--#  mesa-utils - Basic GL Utilities

--## DBus toolsets (required for experimental music players below)
--## Install one PAIR or the other PAIR (but NOT both pair) depending on your distro,
--## Examples from Ubuntu PPA - package names are in ('parenthesis'):
--#
--#  Qt 4 D-Bus tool ('qdbus') & Qt 4 development tools ('qt4-dev-tools')
--#  Qt 5 D-Bus tool ('qdbus-qt5') & Qt 5 base development programs ('qtbase5-dev-tools')

--####
--## Installed fonts (required)
--#
--#  Arrows (JLH Fonts - not included in link below)
--#  ConkyWeather (Stanko Metodiev)
--#  Cut Outs for 3D FX (Fonts & Things)
--#  Droid Font Family (Google Android SDK)
--#  KR A Round (Kat's Fun Fonts)
--#  Moon Phases (Curtis Clark)
--#  OpenLogos (Icoma)
--#  PizzaDude Bullets (Jakob Fischer)
--#  Radio Space (Iconian Fonts)
--#  StyleBats (Vinterstille)
--#  Ubuntu Font Family (Canonical Ltd)
--#  Ubuntu Title Bold (Paulo Silva - not included in link below)
--#  Weather (Jonathan Macagba)
--#
--## Tips n' Tricks from: Mr. Peachy, djyoung4, and 42dorian (Thanks!)
--## Most of the necessary fonts can be downloaded here: http://goo.gl/QPBcPm
--## Unzip the fonts into your font folder, for example: /home/username/.fonts
--## Run this command in a terminal (rebuilds font cache file): sudo fc-cache -fv

conky.config = {

--####
--## Use XFT? Required to Force UTF8 (see below)
--#
use_xft = true,
font = 'DroidSansFallback:size=9.55',
xftalpha = 0.1,

--####
--## Force UTF8? Requires XFT (see above)
--## Displays degree symbol, instead of ┬░, etc.
--#
override_utf8_locale = true,

--####
--## This buffer is used for single lines, text, output from $exec, and other variables.
--## Increasing the 'text_buffer_size' (too high) will drastically reduce Conky's performance.
--## Decreasing the buffer size (too low) will truncate content and cause strange display output.
--## Standard text buffer size is 256 bytes (cannot be less). Adjust YOUR buffer wisely!
--## Tips n' Tricks from dk75:"You don't need to create a 12KiB buffer for every Conky config line."
--#
text_buffer_size = 4352,

--####
--## Maximum number of special things, e.g. fonts, offsets, aligns, etc. (default is 512)
--## Tips n' Tricks from: sparker256 (Thanks, Bill!)
--## (Currently not working in Conky 1.10 - Disabled)
--#
--max_specials 600,

--####
--## Maximum size of user text buffer, e.g. for layout below TEXT line (default is 16384)
--## Increase this, as needed, to accommodate large config files with a great deal of text.
--## Tips n' Tricks from: Cavsfan
--#
max_user_text = 32768,

--####
--## Daemonize Conky, aka 'fork to background'.
--#
background = true,

--####
--## Update interval in seconds.
--#
update_interval = 2.0,

--####
--## The number of times Conky will update before quitting.
--## Zero makes Conky run forever.
--#
total_run_times = 0,

--####
--## Create 'own_window' type. Makes Conky behave like other panels.
--#
own_window = true,
own_window_transparent = true,
own_window_type = 'normal',
own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
--####
--## Some distros require the following lines for TRUE transparency.
--## BOTH of these lines need to be Commented/Uncommented in tandem.
--## (Currently not working in Conky 1.10 - Disabled)
--#
--own_window_argb_visual = true,
--own_window_argb_value = 255,
--####
--## Don't want TRUE transparency? (icons look janky on certain walls)
--## Comment BOTH of the lines above and Uncomment the line below.
--## (Currently not working in Conky 1.10 - Disabled)
--#
--# own_window_argb_visual = false,

--####
--## Force images to redraw when they change.
--#
imlib_cache_size = 1,

--####
--## Use double buffering? Reduces flicker.
--#
double_buffer = true,

--####
--## Draw shades?
--#
draw_shades = false,
default_shade_color = '333300',
--# default_shade_color = '3c3c3c',
--# default_shade_color = '494949',
--# default_shade_color = '565656',
--# default_shade_color = '626262',

--####
--## Draw outlines?
--#
draw_outline = false,

--####
--## Draw borders around text?
--#
draw_borders = false,

--####
--## Draw borders around graphs?
--#
draw_graph_borders = false,

--####
--## Print text to stdout?
--## Print text in console?
--#
out_to_ncurses = false,
out_to_console = false,

--####
--## Text alignment.
--#
alignment = 'top_right',

--####
--## Minimum size of the text area.
--#
minimum_width = 245,
minimum_height = 1394,

--####
--## Maximum width of the text area.
--#
maximum_width = 245,

--####
--## Gap between text and screen borders.
--#
gap_x = 6,  --# Left/Right
gap_y = 32, --# Top/Bottom

--####
--## Shorten MiB/GiB to M/G in stats.
--#
short_units = true,

--####
--## Pad % symbol spacing after numbers.
--#
pad_percents = 0,

--####
--## Pad spacing between text and borders.
--#
border_inner_margin = 4,

--####
--## Limit the length of names in "Top Processes".
--#
top_name_width = 10,

--####
--## Subtract file system -/+buffers/cache from used memory?
--## Set to true, to produce meaningful physical memory stats.
--#
no_buffers = true,

--####
--## Set to true, if you want all text to be in UPPERCASE.
--#
uppercase = false,

--####
--## Number of cpu samples to average.
--## Set to 1 to disable averaging.
--#
cpu_avg_samples = 2,

--####
--## Number of net samples to average.
--## Set to 1 to disable averaging.
--#
net_avg_samples = 2,

--####
--## Add spaces to keep things from moving around?
--## Only affects certain objects.
--#
use_spacer = 'right',

--####
--## My colors (suit yourself)
--#
color0 = 'white', --#FFFFFF
color1 = 'ivory', --#FFFFF0
color2 = 'ivory2', --#EEEEE0
color3 = 'ivory3', --#CDCDC1
color4 = 'ffcc66', --#FFCC66
color5 = 'ivory3', --#CDCDC1
color6 = 'gray', --#BEBEBE
color7 = 'antiquewhite4', --#8B8378
color8 = 'dimgray', --#696969
color9 = 'tomato', --#FF6347

--#####
--## Load Lua for shading (optional)
--## Set the path to your script here.
--## (Currently not working in Conky 1.10 - Disabled)
--#
-- lua_load = '~/.conky/draw_bg.lua',
-- lua_draw_hook_pre = 'draw_bg',

--####
--## Load Lua for bargraphs (required)
--## Set the path to your script here.
--#
lua_load = '~/.conky/bargraph_small.lua',
lua_draw_hook_post = 'main_bars',

--####
--## Define the locations of Conkywx files (required)
--## Set the path to your .confs and templates here.
--#
template0 = '/usr/share/conkywx/conkywx.sh',
template1 = '/home/vindsl/.config/conkywx/vindsl-imperial-conkywx.conf',
template2 = '/home/vindsl/.config/conkywx/vindsl-metric-conkywx.conf',
template3 = '/home/vindsl/.config/conkywx/wx-wu-vindsl-imperial-weather-dingbat-template.sh',
template4 = '/home/vindsl/.config/conkywx/wx-wu-vindsl-imperial-weather-graphic-template.sh',
template5 = '/home/vindsl/.config/conkywx/wx-wu-vindsl-metric-weather-dingbat-template.sh',
template6 = '/home/vindsl/.config/conkywx/wx-wu-vindsl-metric-weather-graphic-template.sh',

--## Tips n' Tricks: To discover the following, type 'route' in a terminal and look in the Iface column.

--####
--## Define the wireless interface name here wlan0, wlan1, etc. (required)
--#
template7 = 'wlan0',

--####
--## Define the wired interface name here eth0, eth1, etc. (required)
--#
template8 = 'eno1'

}
conky.text = [[

##################################
##             LOGO             ##
##################################
## Uncomment for hard-coded ID (static)
# ${offset -3}${voffset -34}${font OpenLogos:size=106}${color2}v${font}${voffset -78}${goto 180}${font UbuntuTitleBold:size=19.55}${color2}${offset 4}1${offset 2}6${offset 1}.${offset 0}1${offset 1}0${font}
####
## Uncomment for soft-coded ID (dynamic)
# ${voffset -30}${font OpenLogos:size=103}${color2}v${font}${voffset -75}${goto 179}${font UbuntuTitleBold:size=19.6}${color4}${execpi 1800 cat /etc/*release | grep 'RELEASE' | awk -F'=' '{print $2}'}${font}
## Additional ID (branch version, code name, release date, etc.)
# ${voffset 0}${goto 185}${font Ubuntu-B:bold:size=7.55}${color5}${execpi 1800 conky --version | sed -n 1p | cut -b1-13}${font}
# ${voffset 0}${goto 182}${font Ubuntu-B:bold:size=7.55}${color5}Conky ${conky_version}${font}
# ${voffset 0}${goto 182}${font Ubuntu-B:size=8}${color4}Pre-Alpha${font}
####
## Uncomment to display YOUR custom graphic image (upper-right corner)
# ${voffset -30}${font OpenLogos:size=103}${color2}v${font}${voffset -52}${image /home/vindsl/Pictures/BDC/Avatar(Transparent-50)55x55.png -p 180,0 -s 52x52 -n}
${voffset -1}${image /home/vindsl/.conky/logos/peppermint_logo_small_4.png -n}${voffset 18}${goto 45}${font Ubuntu-B:bold:size=7.55}${color5}${font Ubuntu-B:bold:size=7.55}${color5}Conkywx ${execpi 1800 conkywx -v}${goto 180}Conky ${conky_version}${font}${voffset -5}
##################################
##            SYSTEM            ##
##################################
${voffset 4}${font DroidSans:bold:size=8.25}${color4}SYSTEM${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 4}${font OpenLogos:size=10}${color2}u${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}${execpi 1800 lsb_release -sd | sed -e 's/Ubuntu/Ubuntu/g' -e 's/development/dev/g'}${alignr}${execpi 1800 lsb_release -sr}${font}
# ${voffset 4}${font OpenLogos:size=10}${color2}u${voffset -4}${font DroidSans:size=8.55}${color3}${offset 5}${execpi 1800 lsb_release -sd}${alignr}32 Bit${font}
${voffset 0}${offset -2}${font OpenLogos:size=12}${color2}Z${voffset -4}${font DroidSans:size=8.55}${color3}${offset 3}${sysname}${offset 3}${kernel}${alignr}${font DroidSans:size=8.3}${machine}${font}
####
## Uncomment for nVidia ID (nvidia-smi version - dynamic)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}${execpi 1800 nvidia-smi -q | grep "Product Name" | sed -e 's/.*: /nVidia /'}${alignr}${execpi 1800 nvidia-smi -q | grep "Driver Version" | awk '{print $4}'}${font}
####
## Uncomment for 'nvidia-current' driver ID (DPKG version - hybrid)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce 7600 GT${alignr}${font DroidSans:size=8.3}${execpi 1800 dpkg --status nvidia-current | grep Version | cut -f 1 -d '-' | sed 's/[^.,0-9]//g'}${font}
####
## Uncomment for nvidia driver ID (OpenGL version - hydrid)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce 7600 GT${offset 3}(${offset 2}${execpi 2 nvidia-settings -q gpucoretemp -t --verbose=none | awk '{s+=$1}END{print s/NR}' RS=" "}░${offset 1})${alignr}${font DroidSans:size=8.3}${execpi 1800 glxinfo | grep 'OpenGL version string' | sed -e 's/OpenGL.*: //' | cut -c '14-20'}${font}
## Uncomment when running Nouveau drivers
# ${voffset 1}${font StyleBats:size=10}${color2}d${voffset -1}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce GT 710${voffset -2}${alignr}nouveau${font}
## Uncomment when running nVidia drivers with GPU temp
${voffset 1}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce GT 710${offset 3}(${offset 2}${execpi 2 nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits}░${offset 1})${alignr}${font DroidSans:size=8.3}${execpi 1800 nvidia-smi -q | grep "Driver Version" | awk '{print $4}'}${font}
####
## Uncomment for hard-coded video ID (Nouveau version - static)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}nVidia GeForce 7600 GT${offset 2}${alignr}nouveau${font DroidSans:size=8.3}${font}
####
## Uncomment for hard-coded video ID (Generic version / any card / any driver - static)
# ${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}Video Card Product Name${alignr}Driver Version${font DroidSans:size=8.3}${font}
####
## Uncomment for CPU ID / CPU Temp / CPU frequency (hybrid)
# ${voffset 2}${font StyleBats:size=10}${color2}A${voffset 0}${font DroidSans:size=8.55}${color3}${offset 5}Intel${offset 3}P4${offset 3}Extreme${offset 3}Edition${offset 3}(${offset 2}${execpi 2 sensors | grep 'temp1' | cut -c16-17}░${offset 1})${alignr 1}${font DroidSans:size=8.3}${freq_g cpu0}${offset 1}GHz${font}
## Uncomment for CPU ID / CPU Temp / CPU frequency (hybrid)
${voffset 1}${font StyleBats:size=10}${color2}A${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}Intel${offset 3}Core${offset 3}i5-3470${offset 4}(${offset 2}${execpi 2 sensors | grep 'Core 0' | sed -n 1p | cut -b18-19}░${voffset -1}${offset 1})${alignr -3}${font DroidSans:size=8.3}${freq_g cpu0}${voffset -1}${offset 2}GHz${font}
####
## Uncomment for System Uptime (hybdid)
${voffset 2}${font StyleBats:size=10}${color2}q${voffset -2}${font DroidSans:size=8.55}${color3}${offset 5}System${offset 3}Uptime${voffset -1}${alignr}${font DroidSans:size=8.3}${uptime_short}${font}
##################################
##          PROCESSORS          ##
##################################
${voffset 4}${font DroidSans:bold:size=8}${color4}PROCESSORS${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 5}${font StyleBats:size=9.9}${color2}k${voffset -1}${font DroidSansFallback:size=8}${color3}${offset 2}CPU1${offset 5}${font DroidSans:size=8}${cpu cpu0}%${font DroidSansFallback:size=8}${goto 137}${voffset -1}CPU2${offset 5}${font DroidSans:size=8}${cpu cpu1}%${font}
${voffset 1}${font StyleBats:size=9.9}${color2}k${voffset -1}${font DroidSansFallback:size=8}${color3}${offset 2}CPU3${offset 5}${font DroidSans:size=8}${cpu cpu2}%${font DroidSansFallback:size=8}${goto 137}${voffset -1}CPU4${offset 5}${font DroidSans:size=8}${cpu cpu3}%${font}
##################################
##            MEMORY            ##
##################################
${voffset 4}${font DroidSans:bold:size=8}${color4}MEMORY${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 6}${font StyleBats:size=10}${color2}l${voffset -2}${font DroidSansFallback:size=8}${color3}${offset 3}RAM${goto 97}${font DroidSans:size=8.2}${mem}${goto 133}/${offset 5}${memmax}${alignr}${memperc}%${font}
##################################
##             HDD              ##
##################################
${voffset 14}${font DroidSans:bold:size=8}${color4}HDD${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 7}${font StyleBats:size=9.9}${color2}x${voffset -2}${font DroidSansFallback:size=8}${color3}${offset 4}ROOT${goto 95}${font DroidSans:size=8.2}${fs_used /}${goto 133}/${offset 5}${fs_size /}${alignr}${fs_free_perc /}%${font}
${voffset 16}${font StyleBats:size=9.9}${color2}x${voffset -2}${font DroidSansFallback:size=8}${color3}${offset 4}HOME${goto 95}${font DroidSans:size=8.2}${fs_used /home}${goto 133}/${offset 5}${fs_size /home}${alignr}${fs_free_perc /home}%${font}
${voffset 16}${font StyleBats:size=9.9}${color2}4${voffset -2}${font DroidSansFallback:size=8}${color3}${offset 4}SWAP${goto 95}${font DroidSans:size=8.2}${swap}${goto 133}/${offset 5}${swapmax}${alignr}${swapperc}%${font}
##################################
##         TOP PROCESSES        ##
##################################
${voffset 15}${font DroidSans:bold:size=8}${color4}TOP PROCESSES${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 4}${font StyleBats:size=10}${color1}h${voffset -1}${font DroidSansFallback:size=8.65}${color3}${offset 2}${top_mem name 1}${goto 120}${font DroidSans:size=8.2}${top_mem mem_res 1}${alignr}${top_mem mem 1}%${font}
${voffset 0}${font StyleBats:size=10}${color1}h${voffset -1}${font DroidSansFallback:size=8.65}${color3}${offset 2}${top_mem name 2}${goto 120}${font DroidSans:size=8.2}${top_mem mem_res 2}${alignr}${top_mem mem 2}%${font}
${voffset 0}${font StyleBats:size=10}${color1}h${voffset -1}${font DroidSansFallback:size=8.65}${color3}${offset 2}${top_mem name 3}${goto 120}${font DroidSans:size=8.2}${top_mem mem_res 3}${alignr}${top_mem mem 3}%${font}
# ${voffset 0}${font StyleBats:size=10}${color1}h${voffset -1}${font DroidSansFallback:size=8.65}${color3}${offset 2}${top_mem name 4}${goto 120}${font DroidSans:size=8.2}${top_mem mem_res 4}${alignr}${top_mem mem 4}%${font}
# ${voffset 0}${font StyleBats:size=10}${color1}h${voffset -1}${font DroidSansFallback:size=8.65}${color3}${offset 2}${top_mem name 5}${goto 120}${font DroidSans:size=8.2}${top_mem mem_res 5}${alignr}${top_mem mem 5}%${font}
# ${voffset 0}${font StyleBats:size=10}${color1}h${voffset -1}${font DroidSansFallback:size=8.65}${color3}${offset 2}${top_mem name 6}${goto 120}${font DroidSans:size=8.2}${top_mem mem_res 6}${alignr}${top_mem mem 6}%${font}
##################################
##   NETWORK - AUTO DETECTION   ##
##################################
## WIRELESS/WIFI SECTION ##
${if_existing /proc/net/route ${template7}}
${voffset -11}${font DroidSans:bold:size=8}${color4}WIFI NET${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 4}${font PizzaDudeBullets:size=9.5}${color6}T${font DroidSans:size=8.65}${color3}${offset 5}Download${goto 120}${font DroidSans:size=8.3}${totaldown ${template7}}${alignr}${font DroidSans:size=8.3}${downspeed ${template7}}${font}
${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}N${font DroidSans:size=8.65}${color3}${offset 5}Upload${goto 120}${font DroidSans:size=8.3}${totalup ${template7}}${alignr}${font DroidSans:size=8.3}${upspeed ${template7}}${font}
${voffset 4}${font PizzaDudeBullets:size=9.5}${color6}a${font DroidSans:size=8.65}${color3}${offset 5}Private${offset 3}IP${goto 123}${font DroidSansFallback:size=8.5}LAN${alignr}${font DroidSans:size=8.3}${addr ${template7}}${font}
#
## Uncomment [THIS] to display your Public/WAN URL (WIFI) - via checkip.dyndns.org
${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}a${font DroidSans:size=8.65}${color3}${offset 5}Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.5}WAN${font DroidSans:size=8.3}${alignr}${execi 1800 wget -q -O - checkip.dyndns.org | sed -e 's/[^[:digit:]\|.]//g'}${font}${else}
#
## Uncomment [OR THIS] to obscure your Public/WAN URL (WIFI) - for privacy, screenshots, etc
# ${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}a${font DroidSans:size=8.65}${color3}${offset 5}Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.5}WAN${font DroidSans:size=8.3}${alignr}Demo Mode${font}${else}
#
## WIRED/ETHERNET SECTION ##
${if_existing /proc/net/route ${template8}}
${voffset -23}${font DroidSans:bold:size=8}${color4}WIRED NET${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 4}${font PizzaDudeBullets:size=9.5}${color6}T${voffset 1}${font DroidSansFallback:size=8.2}${color3}${offset 5}Download${goto 120}${font DroidSans:size=8.3}${totaldown ${template8}}${alignr}${font DroidSans:size=8.2}${downspeed ${template8}}${font}
${voffset -3}${font PizzaDudeBullets:size=9.5}${color6}N${voffset 1}${font DroidSansFallback:size=8.2}${color3}${offset 5}Upload${goto 120}${font DroidSans:size=8.3}${totalup ${template8}}${alignr}${font DroidSans:size=8.2}${upspeed ${template8}}${font}
${voffset 0}${font PizzaDudeBullets:size=9.5}${color6}a${voffset 1}${font DroidSansFallback:size=8.2}${color3}${offset 5}Private${offset 3}IP${goto 123}${font DroidSansFallback:size=8.3}LAN${alignr}${font DroidSans:size=8.2}${addr ${template8}}${font}
#
## Uncomment [THIS] to display your Public/WAN URL (WIRED) - via checkip.dyndns.org
# ${voffset -3}${font PizzaDudeBullets:size=9.5}${color6}a${voffset 1}${font DroidSans:size=8.2}${color3}${offset 5}Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.3}WAN${font DroidSans:size=8.3}${voffset -1}${alignr}${execi 1800 wget -q -O - checkip.dyndns.org | sed -e 's/[^[:digit:]\|.]//g'}${font}${else}
#
## Uncomment [OR THIS] to obscure your Public/WAN URL (WIRED) - for privacy, screenshots, etc
${voffset -3}${font PizzaDudeBullets:size=9.5}${color6}a${voffset 1}${font DroidSans:size=8.2}${color3}${offset 5}Public${offset 7}IP${goto 121}${font DroidSansFallback:size=8.5}WAN${font DroidSans:size=8.3}${voffset -1}${alignr}Demo Mode${font}${else}
#
## COMMON DISCONNECTED/OFFLINE SECTION ##
${voffset -22}${font DroidSans:bold:size=8}${color4}NETWORK${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 25}${goto 77}${font DroidSans:bold:size=8}NO CONNECTION${voffset 23}${font}${endif}${endif}
##################################
##      CONKYWX WEATHER         ##
##################################
${voffset 4}${font DroidSans:bold:size=8.25}${color4}CONKYWX${offset 8}${color6}${voffset -2}${hr 1}${font}
####
## Uncomment for IMPERIAL Weather Stats (DINGBAT font set).
# ${execpi 900 ${template0} -c "${template1}" -t "${template3}"}${font}
####
## Uncomment for IMPERIAL Weather Stats (GRAPHIC icon set).
${execpi 900 ${template0} -c "${template1}" -t "${template4}"}${font}
####
## Uncomment for METRIC Weather Stats (DINGBAT font set).
# ${execpi 900 ${template0} -c "${template2}" -t "${template5}"}${font}
####
## Uncomment for METRIC Weather Stats (GRAPHIC icon set).
# ${execpi 900 ${template0} -c "${template2}" -t "${template6}"}${font}
##################################
##           TIME               ##
##################################
${voffset 5}${font DroidSans:bold:size=8}${color4}TIME${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset -6}${font RadioSpace:size=32}${color3}${if_match ${time %l}<=9}${alignc 7}${time %l:%M}${offset 3}${time %p}${else}${if_match ${time %l}>=10}${alignc -1}${time %l:%M}${offset 3}${time %p}${endif}${endif}${font}
##################################
##         CALENDAR             ##
##################################
${voffset 3}${font DroidSans:bold:size=8}${color4}DATE${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 10}${font DroidSansMono:size=7.55}${color2}${alignc 60}${time %A}${font}
${voffset -4}${font DroidSansFallback:bold:size=18}${if_match ${time %e}<=9}${color3}${alignc 65}${time %e}${font}${else}${if_match ${time %e}>=10}${color3}${alignc 60}${time %e}${endif}${endif}${font}
${voffset 0}${font DroidSansMono:size=7.55}${color2}${alignc 60}${time %B}${font}
${voffset -2}${font DroidSansMono:size=7.6}${color2}${alignc 60}${time %Y}${font}
${voffset -78}${font CutOutsFor3DFX:size=67}${color6}${alignc 95}2${font}
####
## Uncomment for "SUNDAY = First Day-of-the-Week" valid Jan.2015 - Dec.2016 (use mono fonts only)
## Tweaked for proper alignment of annoying months with six calendar weeks.
${if_match "${time %b %G}"=="May 2015"}${voffset -66}${else}${if_match "${time %b %G}"=="Aug 2015"}${voffset -66}${else}${if_match "${time %b %G}"=="Jan 2016"}${voffset -66}${else}${if_match "${time %b %G}"=="Jul 2016"}${voffset -66}${else}${if_match "${time %b %G}"=="Oct 2016"}${voffset -82}${else}${voffset -60}${endif}${endif}${endif}${endif}${endif}${font DroidSansMono:size=7.55}${color3}${execpi 60 VinDSL_Cal_9=`date +%-d`; cal -h | sed -e 's/\r//g' -e 's/^/ /g' -e '1d' -e s/^/"\$\{offset 100"\}/ -e 's/\<'"$VinDSL_Cal_9"'\>/${color9}&${color3}/'}
####
## Uncomment for "MONDAY = First Day-of-the-Week" valid Jan.2015 - Dec.2016 (use mono fonts only)
## Tweaked for proper alignment of annoying months with six calendar weeks.
# ${if_match "${time %b %G}"=="Mar 2015"}${voffset -76}${else}${if_match "${time %b %G}"=="Aug 2015"}${voffset -76}${else}${if_match "${time %b %G}"=="Nov 2015"}${voffset -76}${else}${if_match "${time %b %G}"=="May 2016"}${voffset -76}${else}${if_match "${time %b %G}"=="Oct 2016"}${voffset -76}${else}${voffset -70}${endif}${endif}${endif}${endif}${endif}${font DroidSansMono:size=7.55}${color3}${execpi 60 VinDSL_Cal_9=`date +%-d`; ncal -M -C -h | sed -e 's/\r//g' -e 's/^/ /g' -e '1d' -e s/^/"\$\{offset 100"\}/ -e 's/\<'"$VinDSL_Cal_9"'\>/${color9}&${color3}/'}
##################################
##  RHYTHMBOX 1 (Experimental)  ##
##################################
# ${if_running rhythmbox}
# ${voffset -13}${font DroidSans:bold:size=8}${color4}RHYTHMBOX${offset 8}${color6}${voffset -2}${hr 1}${font}
# ${voffset 4}${font DroidSans:size=8.25}${color3}${if_match "${execpi 2 expr length "`/usr/bin/rhythmbox-client --print-playing-format %tt | head -n 1`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 rhythmbox-client --print-playing-format %tt --no-start}}${font}${else}${alignc}${execi 2 rhythmbox-client --print-playing-format %tt --no-start}${font}${endif}${endif}
##################################
##  RHYTHMBOX 2 (Experimental)  ##
##################################
${if_running rhythmbox}
${voffset -13}${font DroidSans:bold:size=8}${color4}RHYTHMBOX${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 3}${font DroidSans:size=7.85}${color3}${if_match "${execpi 2 expr length "`qdbus org.mpris.MediaPlayer2.rhythmbox /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title | cut -c 14-""`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 qdbus org.mpris.MediaPlayer2.rhythmbox /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title | cut -c 14-""}}${font}${else}${alignc}${execi 2 qdbus org.mpris.MediaPlayer2.rhythmbox /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title | cut -c 14-""}${font}${endif}${endif}
##################################
##    BANSHEE (Experimental)    ##
##################################
${if_running banshee}
${voffset -25}${font DroidSans:bold:size=8}${color4}BANSHEE${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 3}${font DroidSans:size=7.85}${color3}${if_match "${execpi 2 expr length "`/usr/bin/banshee --query-title --no-present | cut -f1- -d" "`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 banshee --query-title --no-present | cut -f2- -d" "}}${font}${else}${alignc}${execi 2 banshee --query-title --no-present | cut -f2- -d" "}${font}${endif}${endif}
##################################
##   GUAYADEQUE (Experimental)  ##
##################################
${if_running guayadeque}
${voffset -15}${font DroidSans:bold:size=8}${color4}GUAYADEQUE${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 2}${font DroidSans:size=7.85}${color3}${if_match "${execpi 2 expr length "`qdbus org.mpris.guayadeque /\Player org.freedesktop.MediaPlayer.GetMetadata | grep title | cut -f2- -d" "`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 qdbus org.mpris.guayadeque /\Player org.freedesktop.MediaPlayer.GetMetadata | grep title | cut -f2- -d" "}}${font}${else}${alignc}${execi 2 qdbus org.mpris.guayadeque /\Player org.freedesktop.MediaPlayer.GetMetadata | grep title | cut -f2- -d" "}${font}${endif}${endif}
##################################
##     VLC (Experimental)       ##
##################################
${if_running vlc}
${voffset -32}${font DroidSans:bold:size=8}${color4}VLC${offset 8}${color6}${voffset -2}${hr 1}${font}
${voffset 6}${font DroidSans:size=8.25}${color3}${if_match "${execpi 2 expr length "`qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep xesam:artist: | cut -c -13 --complement | tr '\n' ' ' && qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title: | cut -c -13 --complement`"}" >= "48"}${alignr 15}${scroll 38 4* ${execi 2 qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep xesam:artist: | cut -c -13 --complement | tr '\n' ' ' && qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title: | cut -c -13 --complement}}${font}${else}${alignc}${execi 2 qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep xesam:artist: | cut -c -13 --complement | tr '\n' ' ' && qdbus org.mpris.MediaPlayer2.vlc /\org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Metadata | grep title: | cut -c -13 --complement}${font}${endif}${endif}
]]



Offline VinDSL

  • Global Moderator
  • Hero
  • *****
  • Posts: 5183
  • Karma: 939
  • Peppermint Mod
    • View Profile
  • Peppermint version(s): Developmental Builds
Re: Conky 1.10.1 / Conkywx 5.0.0-1
« Reply #14 on: August 06, 2016, 10:37:58 pm »
And, here's the current haxored  'bargraph_small.lua' file ...

Code: [Select]
--[[
BARGRAPH WIDGET
v2.1 by wlourf (07 Jan. 2011) - v2.2 VinDSL hack (05 Aug. 2016)
this widget draws a bargraph with different effects
http://u-scripts.blogspot.com/2010/07/bargraph-widget.html

To call the script in a conky, use, before TEXT
lua_load /path/to/the/script/bargraph.lua
lua_draw_hook_pre main_rings
and add one line (blank or not) after TEXT

Parameters are :
3 parameters are mandatory
name - the name of the conky variable to display, for example for {$cpu cpu0}, just write name="cpu"
arg  - the argument of the above variable, for example for {$cpu cpu0}, just write arg="cpu0"
       arg can be a numerical value if name=""
max  - the maximum value the above variable can reach, for example, for {$cpu cpu0}, just write max=100

Optional parameters:
x,y       - coordinates of the starting point of the bar, default = middle of the conky window
cap       - end of cap line, ossibles values are r,b,s (for round, butt, square), default="b"
        http://www.cairographics.org/samples/set_line_cap/
angle   - angle of rotation of the bar in degress, default = 0 (i.e. a vertical bar)
        set to 90 for an horizontal bar
skew_x   - skew bar around x axis, default = 0
skew_y   - skew bar around y axis, default = 0
blocks    - number of blocks to display for a bar (values >0) , default= 10
height   - height of a block, default=10 pixels
width   - width of a block, default=20 pixels
space   - space between 2 blocks, default=2 pixels
angle_bar - this angle is used to draw a bar on a circular way (ok, this is no more a bar !) default=0
radius   - for cicular bars, internal radius, default=0
        with radius, parameter width has no more effect.

Colours below are defined into braces {colour in hexadecimal, alpha}
fg_colour    - colour of a block ON, default= {0x00FF00,1}
bg_colour    - colour of a block OFF, default = {0x00FF00,0.5}
alarm      - threshold, values after this threshold will use alarm_colour colour , default=max
alarm_colour - colour of a block greater than alarm, default=fg_colour
smooth      - (true or false), create a gradient from fg_colour to bg_colour, default=false
mid_colour   - colours to add to gradient, with this syntax {position into the gradient (0 to1), colour hexa, alpha}
           for example, this table {{0.25,0xff0000,1},{0.5,0x00ff00,1},{0.75,0x0000ff,1}} will add
           3 colours to gradient created by fg_colour and alarm_colour, default=no mid_colour
led_effect   - add LED effects to each block, default=no led_effect
           if smooth=true, led_effect is not used
           possibles values : "r","a","e" for radial, parallel, perdendicular to the bar (just try!)
           led_effect has to be used with theses colours :
fg_led      - middle colour of a block ON, default = fg_colour
bg_led      - middle colour of a block OFF, default = bg_colour
alarm_led    - middle colour of a block > ALARM,  default = alarm_colour

reflection parameters, not available for circular bars
reflection_alpha  - add a reflection effect (values from 0 to 1) default = 0 = no reflection
            other values = starting opacity
reflection_scale  - scale of the reflection (default = 1 = height of text)
reflection_length - length of reflection, define where the opacity will be set to zero
            values from 0 to 1, default =1
reflection       - position of reflection, relative to a vertical bar, default="b"
            possibles values are : "b","t","l","r" for bottom, top, left, right
draw_me        - if set to false, text is not drawn (default = true or 1)
            it can be used with a conky string, if the string returns 1, the text is drawn :
            example : "${if_empty ${wireless_essid wlan0}}${else}1$endif",

v1.0 (10 Feb. 2010) original release
v1.1 (13 Feb. 2010) numeric values can be passed instead conky stats with parameters name="", arg = numeric_value
v1.2 (28 Feb. 2010) just renamed the widget to bargraph
v1.3 (03 Mar. 2010) added parameters radius & angle_bar to draw the bar in a circular way
v2.0 (12 Jul. 2010) rewrite script + add reflection effects and parameters are now set into tables
v2.1 (07 Jan. 2011) Add draw_me parameter and correct memory leaks, thanks to "Creamy Goodness"
v2.2 (05 Aug. 2016) VinDSL hack - Got rid of the alarms, to be more compatible with Conky 1.10.x

--      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 version 3 (GPLv3)
--
--      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, write to the Free Software
--      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
--      MA 02110-1301, USA.

]]

require 'cairo'

----------------START OF PARAMETERS ----------
function conky_main_bars()
local bars_settings={
{ --[ Graph for CPU1 ]--
name="cpu",
arg="cpu0",
max=100,
bg_colour={0xcacaca,0.25},
fg_colour={0x00ff00,0.55},
mid_colour={{0.45,0xFFFF00,1},{0.8,0xFF8000,1},{0.95,0xFF0000,1}},
x=82,y=169,
blocks=16,
space=1,
height=2,width=6,
angle=90,
smooth = true
},
{ --[ Graph for CPU2 ]--
name="cpu",
arg="cpu1",
max=100,
bg_colour={0xcacaca,0.25},
fg_colour={0x00ff00,0.55},
mid_colour={{0.45,0xFFFF00,1},{0.8,0xFF8000,1},{0.95,0xFF0000,1}},
x=200,y=169,
blocks=16,
space=1,
height=2,width=6,
angle=90,
smooth = true
},
{ --[ Graph for CPU3 ]--
name="cpu",
arg="cpu2",
max=100,
bg_colour={0xcacaca,0.25},
fg_colour={0x00ff00,0.55},
mid_colour={{0.45,0xFFFF00,1},{0.8,0xFF8000,1},{0.95,0xFF0000,1}},
x=82,y=185,
blocks=16,
space=1,
height=2,width=6,
angle=90,
smooth = true
},
{ --[ Graph for CPU4 ]--
name="cpu",
arg="cpu3",
max=100,
bg_colour={0xcacaca,0.25},
fg_colour={0x00ff00,0.55},
mid_colour={{0.45,0xFFFF00,1},{0.8,0xFF8000,1},{0.95,0xFF0000,1}},
x=200,y=185,
blocks=16,
space=1,
height=2,width=6,
angle=90,
smooth = true
},
{ --[ Graph for Memory ]--
name="memperc",
arg="",
max=100,
bg_colour={0xFFFFFF,0.25},
fg_colour={0x00FF00,0.55},
mid_colour={{0.45,0xFFFF00,1},{0.8,0xFF8000,1},{0.95,0xFF0000,1}},
x=15,y=238,
blocks=78,
space=1,
height=2,width=5,
angle=90,
smooth=true
},
{ --[ Graph for Root ]--
name="fs_used_perc",
arg="/",
max=100,
bg_colour={0xFFFFFF,0.25},
fg_colour={0x00FF00,0.55},
mid_colour={{0.45,0xFFFF00,1},{0.8,0xFF8000,1},{0.95,0xFF0000,1}},
x=15,y=287,
blocks=78,
space=1,
height=2,width=5,
angle=90,
smooth=true
},
{ --[ Graph for Home ]--
name="fs_used_perc",
arg="/home",
max=100,
bg_colour={0xFFFFFF,0.25},
fg_colour={0x00FF00,0.55},
mid_colour={{0.45,0xFFFF00,1},{0.8,0xFF8000,1},{0.95,0xFF0000,1}},
x=15,y=318,
blocks=78,
space=1,
height=2,width=5,
angle=90,
smooth=true
},
{ --[ Graph for Swap ]--
name="swapperc",
arg="",
max=100,
bg_colour={0xFFFFFF,0.25},
fg_colour={0x00FF00,0.55},
mid_colour={{0.45,0xFFFF00,1},{0.8,0xFF8000,1},{0.95,0xFF0000,1}},
x=15,y=347,
blocks=78,
space=1,
height=2,width=5,
angle=90,
smooth=true
},
}
-----------END OF PARAMETERS--------------



if conky_window == nil then return end

local cs = cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, conky_window.width, conky_window.height)

cr = cairo_create(cs)
--prevent segmentation error when reading cpu state
    if tonumber(conky_parse('${updates}'))>3 then
        for i in pairs(bars_settings) do

        draw_multi_bar_graph(bars_settings[i])

        end
    end
cairo_destroy(cr)
cairo_surface_destroy(cs)
cr=nil

end



function draw_multi_bar_graph(t)
cairo_save(cr)
--check values
if t.draw_me == true then t.draw_me = nil end
if t.draw_me ~= nil and conky_parse(tostring(t.draw_me)) ~= "1" then return end
if t.name==nil and t.arg==nil then
print ("No input values ... use parameters 'name' with 'arg' or only parameter 'arg' ")
return
end
if t.max==nil then
print ("No maximum value defined, use 'max'")
return
end
if t.name==nil then t.name="" end
if t.arg==nil then t.arg="" end

--set default values
if t.x == nil then t.x = conky_window.width/2 end
if t.y == nil then t.y = conky_window.height/2 end
if t.blocks == nil then t.blocks=10 end
if t.height == nil then t.height=10 end
if t.angle == nil then t.angle=0 end
t.angle = t.angle*math.pi/180
--line cap style
if t.cap==nil then t.cap = "b" end
local cap="b"
for i,v in ipairs({"s","r","b"}) do
if v==t.cap then cap=v end
end
local delta=0
if t.cap=="r" or t.cap=="s" then delta = t.height end
if cap=="s" then cap = CAIRO_LINE_CAP_SQUARE
elseif cap=="r" then
cap = CAIRO_LINE_CAP_ROUND
elseif cap=="b" then
cap = CAIRO_LINE_CAP_BUTT
end
--end line cap style
--if t.led_effect == nil then t.led_effect="r" end
if t.width == nil then t.width=20 end
if t.space == nil then t.space=2 end
if t.radius == nil then t.radius=0 end
if t.angle_bar == nil then t.angle_bar=0 end
t.angle_bar = t.angle_bar*math.pi/360 --halt angle

--colours
if t.bg_colour == nil then t.bg_colour = {0x00FF00,0.5} end
if #t.bg_colour~=2 then t.bg_colour = {0x00FF00,0.5} end
if t.fg_colour == nil then t.fg_colour = {0x00FF00,1} end
if #t.fg_colour~=2 then t.fg_colour = {0x00FF00,1} end
if t.alarm_colour == nil then t.alarm_colour = t.fg_colour end
if #t.alarm_colour~=2 then t.alarm_colour = t.fg_colour end

if t.mid_colour ~= nil then
for i=1, #t.mid_colour do
    if #t.mid_colour[i]~=3 then
    print ("error in mid_color table")
    t.mid_colour[i]={1,0xFFFFFF,1}
    end
end
    end

if t.bg_led ~= nil and #t.bg_led~=2 then t.bg_led = t.bg_colour end
if t.fg_led ~= nil and #t.fg_led~=2 then t.fg_led = t.fg_colour end
if t.alarm_led~= nil and #t.alarm_led~=2 then t.alarm_led = t.fg_led end

if t.led_effect~=nil then
if t.bg_led == nil then t.bg_led = t.bg_colour end
if t.fg_led == nil then t.fg_led = t.fg_colour end
if t.alarm_led == nil  then t.alarm_led = t.fg_led end
end


if t.alarm==nil then t.alarm = t.max end --0.8*t.max end
if t.smooth == nil then t.smooth = false end

if t.skew_x == nil then
t.skew_x=0
else
t.skew_x = math.pi*t.skew_x/180
end
if t.skew_y == nil then
t.skew_y=0
else
t.skew_y = math.pi*t.skew_y/180
end

if t.reflection_alpha==nil then t.reflection_alpha=0 end
if t.reflection_length==nil then t.reflection_length=1 end
if t.reflection_scale==nil then t.reflection_scale=1 end

--end of default values


  local function rgb_to_r_g_b(col_a)
return ((col_a[1] / 0x10000) % 0x100) / 255., ((col_a[1] / 0x100) % 0x100) / 255., (col_a[1] % 0x100) / 255., col_a[2]
end


--functions used to create patterns

local function create_smooth_linear_gradient(x0,y0,x1,y1)
local pat = cairo_pattern_create_linear (x0,y0,x1,y1)
cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(t.fg_colour))
cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(t.alarm_colour))
if t.mid_colour ~=nil then
for i=1, #t.mid_colour do
cairo_pattern_add_color_stop_rgba (pat, t.mid_colour[i][1], rgb_to_r_g_b({t.mid_colour[i][2],t.mid_colour[i][3]}))
end
end
return pat
end

local function create_smooth_radial_gradient(x0,y0,r0,x1,y1,r1)
local pat =  cairo_pattern_create_radial (x0,y0,r0,x1,y1,r1)
cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(t.fg_colour))
cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(t.alarm_colour))
if t.mid_colour ~=nil then
for i=1, #t.mid_colour do
cairo_pattern_add_color_stop_rgba (pat, t.mid_colour[i][1], rgb_to_r_g_b({t.mid_colour[i][2],t.mid_colour[i][3]}))
end
end
return pat
end

local function create_led_linear_gradient(x0,y0,x1,y1,col_alp,col_led)
local pat = cairo_pattern_create_linear (x0,y0,x1,y1) ---delta, 0,delta+ t.width,0)
cairo_pattern_add_color_stop_rgba (pat, 0.0, rgb_to_r_g_b(col_alp))
cairo_pattern_add_color_stop_rgba (pat, 0.5, rgb_to_r_g_b(col_led))
cairo_pattern_add_color_stop_rgba (pat, 1.0, rgb_to_r_g_b(col_alp))
return pat
end

local function create_led_radial_gradient(x0,y0,r0,x1,y1,r1,col_alp,col_led,mode)
local pat = cairo_pattern_create_radial (x0,y0,r0,x1,y1,r1)
if mode==3 then
cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(col_alp))
cairo_pattern_add_color_stop_rgba (pat, 0.5, rgb_to_r_g_b(col_led))
cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(col_alp))
else
cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(col_led))
cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(col_alp))
end
return pat
end






local function draw_single_bar()
--this fucntion is used for bars with a single block (blocks=1) but
--the drawing is cut in 3 blocks : value/alarm/background
--not zvzimzblr for circular bar
local function create_pattern(col_alp,col_led,bg)
local pat

if not t.smooth then
if t.led_effect=="e" then
pat = create_led_linear_gradient (-delta, 0,delta+ t.width,0,col_alp,col_led)
elseif t.led_effect=="a" then
pat = create_led_linear_gradient (t.width/2, 0,t.width/2,-t.height,col_alp,col_led)
elseif  t.led_effect=="r" then
pat = create_led_radial_gradient (t.width/2, -t.height/2, 0, t.width/2,-t.height/2,t.height/1.5,col_alp,col_led,2)
else
pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))
end
else
if bg then
pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(t.bg_colour))
else
pat = create_smooth_linear_gradient(t.width/2, 0, t.width/2,-t.height)
end
end
return pat
end

local y1=-t.height*pct/100
local y2,y3
if pct>(100*t.alarm/t.max) then
y1 = -t.height*t.alarm/100
y2 = -t.height*pct/100
if t.smooth then y1=y2 end
end

if t.angle_bar==0 then

--block for fg value
local pat = create_pattern(t.fg_colour,t.fg_led,false)
cairo_set_source(cr,pat)
cairo_rectangle(cr,0,0,t.width,y1)
cairo_fill(cr)
cairo_pattern_destroy(pat)

-- block for alarm value
if not t.smooth and y2 ~=nil then
pat = create_pattern(t.alarm_colour,t.alarm_led,false)
cairo_set_source(cr,pat)
cairo_rectangle(cr,0,y1,t.width,y2-y1)
cairo_fill(cr)
y3=y2
cairo_pattern_destroy(pat)
else
y2,y3=y1,y1
end
-- block for bg value
cairo_rectangle(cr,0,y2,t.width,-t.height-y3)
pat = create_pattern(t.bg_colour,t.bg_led,true)
cairo_set_source(cr,pat)
cairo_pattern_destroy(pat)
cairo_fill(cr)
end
end  --end single bar






local function draw_multi_bar()
--function used for bars with 2 or more blocks
for pt = 1,t.blocks do
--set block y
local y1 = -(pt-1)*(t.height+t.space)
local light_on=false

--set colors
local col_alp = t.bg_colour
local col_led = t.bg_led
if pct>=(100/t.blocks) or pct>0 then --ligth on or not the block
if pct>=(pcb*(pt-1))  then
light_on = true
col_alp = t.fg_colour
col_led = t.fg_led
if pct>=(100*t.alarm/t.max) and (pcb*pt)>(100*t.alarm/t.max) then
col_alp = t.alarm_colour
col_led = t.alarm_led
end
end
end

--set colors
--have to try to create gradients outside the loop ?
local pat

if not t.smooth then
if t.angle_bar==0 then
if t.led_effect=="e" then
pat = create_led_linear_gradient (-delta, 0,delta+ t.width,0,col_alp,col_led)
elseif t.led_effect=="a" then
pat = create_led_linear_gradient (t.width/2, -t.height/2+y1,t.width/2,0+t.height/2+y1,col_alp,col_led)
elseif  t.led_effect=="r" then
pat = create_led_radial_gradient (t.width/2, y1, 0, t.width/2,y1,t.width/1.5,col_alp,col_led,2)
else
pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))
end
else
if t.led_effect=="a"  then
pat = create_led_radial_gradient (0, 0, t.radius+(t.height+t.space)*(pt-1),
0, 0, t.radius+(t.height+t.space)*(pt),
col_alp,col_led,3)
else
pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))
end

end
else

if light_on then
if t.angle_bar==0 then
pat = create_smooth_linear_gradient(t.width/2, t.height/2, t.width/2,-(t.blocks-0.5)*(t.height+t.space))
else
pat = create_smooth_radial_gradient(0, 0, (t.height+t.space),  0,0,(t.blocks+1)*(t.height+t.space),2)
end
else
pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(t.bg_colour))
end
end
cairo_set_source (cr, pat)
cairo_pattern_destroy(pat)

--draw a block
if t.angle_bar==0 then
cairo_move_to(cr,0,y1)
cairo_line_to(cr,t.width,y1)
else
cairo_arc( cr,0,0,
t.radius+(t.height+t.space)*(pt)-t.height/2,
-t.angle_bar -math.pi/2 ,
t.angle_bar -math.pi/2)
end
cairo_stroke(cr)
end
end




local function setup_bar_graph()
--function used to retrieve the value to display and to set the cairo structure
if t.blocks ~=1 then t.y=t.y-t.height/2 end

local value = 0
if t.name ~="" then
value = tonumber(conky_parse(string.format('${%s %s}', t.name, t.arg)))
--$to_bytes doesn't work when value has a decimal point,
--https://garage.maemo.org/plugins/ggit/browse.php/?p=monky;a=commitdiff;h=174c256c81a027a2ea406f5f37dc036fac0a524b;hp=d75e2db5ed3fc788fb8514121f67316ac3e5f29f
--http://sourceforge.net/tracker/index.php?func=detail&aid=3000865&group_id=143975&atid=757310
--conky bug?
--value = (conky_parse(string.format('${%s %s}', t.name, t.arg)))
--if string.match(value,"%w") then
-- value = conky_parse(string.format('${to_bytes %s}',value))
--end
else
value = tonumber(t.arg)
end

if value==nil then value =0 end

pct = 100*value/t.max
pcb = 100/t.blocks

cairo_set_line_width (cr, t.height)
cairo_set_line_cap  (cr, cap)
cairo_translate(cr,t.x,t.y)
cairo_rotate(cr,t.angle)

local matrix0 = cairo_matrix_t:create()
tolua.takeownership(matrix0)
cairo_matrix_init (matrix0, 1,t.skew_y,t.skew_x,1,0,0)
cairo_transform(cr,matrix0)



--call the drawing function for blocks
if t.blocks==1 and t.angle_bar==0 then
draw_single_bar()
if t.reflection=="t" or t.reflection=="b" then cairo_translate(cr,0,-t.height) end
else
draw_multi_bar()
end

--dot for reminder
--[[
if t.blocks ~=1 then
cairo_set_source_rgba(cr,1,0,0,1)
cairo_arc(cr,0,t.height/2,3,0,2*math.pi)
cairo_fill(cr)
else
cairo_set_source_rgba(cr,1,0,0,1)
cairo_arc(cr,0,0,3,0,2*math.pi)
cairo_fill(cr)
end]]

--call the drawing function for reflection and prepare the mask used
if t.reflection_alpha>0 and t.angle_bar==0 then
local pat2
local matrix1 = cairo_matrix_t:create()
tolua.takeownership(matrix1)
if t.angle_bar==0 then
pts={-delta/2,(t.height+t.space)/2,t.width+delta,-(t.height+t.space)*(t.blocks)}
if t.reflection=="t" then
cairo_matrix_init (matrix1,1,0,0,-t.reflection_scale,0,-(t.height+t.space)*(t.blocks-0.5)*2*(t.reflection_scale+1)/2)
pat2 = cairo_pattern_create_linear (t.width/2,-(t.height+t.space)*(t.blocks),t.width/2,(t.height+t.space)/2)
elseif t.reflection=="r" then
cairo_matrix_init (matrix1,-t.reflection_scale,0,0,1,delta+2*t.width,0)
pat2 = cairo_pattern_create_linear (delta/2+t.width,0,-delta/2,0)
elseif t.reflection=="l" then
cairo_matrix_init (matrix1,-t.reflection_scale,0,0,1,-delta,0)
pat2 = cairo_pattern_create_linear (-delta/2,0,delta/2+t.width,-0)
else --bottom
cairo_matrix_init (matrix1,1,0,0,-1*t.reflection_scale,0,(t.height+t.space)*(t.reflection_scale+1)/2)
pat2 = cairo_pattern_create_linear (t.width/2,(t.height+t.space)/2,t.width/2,-(t.height+t.space)*(t.blocks))
end
end
cairo_transform(cr,matrix1)

if t.blocks==1 and t.angle_bar==0 then
draw_single_bar()
cairo_translate(cr,0,-t.height/2)
else
draw_multi_bar()
end


cairo_set_line_width(cr,0.01)
cairo_pattern_add_color_stop_rgba (pat2, 0,0,0,0,1-t.reflection_alpha)
cairo_pattern_add_color_stop_rgba (pat2, t.reflection_length,0,0,0,1)
if t.angle_bar==0 then
cairo_rectangle(cr,pts[1],pts[2],pts[3],pts[4])
end
cairo_clip_preserve(cr)
cairo_set_operator(cr,CAIRO_OPERATOR_CLEAR)
cairo_stroke(cr)
cairo_mask(cr,pat2)
cairo_pattern_destroy(pat2)
cairo_set_operator(cr,CAIRO_OPERATOR_OVER)

end --reflection
pct,pcb=nil
end --setup_bar_graph()

--start here !
setup_bar_graph()
cairo_restore(cr)
end

Got rid of the alarms, to make it more compatible with Conky 1.10.x    8)