Conky Window Type 'override'


#1

I’ve been using and tweaking on conky for years. But starting on a native install of 18.04 I’m stuck on finding a solution to this one. I just confirmed 18.10 is identical.

own_window_type = 'override',

Causes this:

Updating “paints” instead of replacing the text. It doesn’t start immediately but takes a combo of window focus following desktop focus.

After methodically going through all the other window types, including most own_window settings, nothing works as good otherwise. Most other types has different issues (like being on top of windows).

I’m concluding it’s conky itself, possibly not operating in some new graphics paradyms because it doesn’t matter:

Native installs or VMs.
Nvidia or Nouveau or VBox drivers or versions.
Marco(s) or Compiz

Searching for this type of symptom has been a challenge. Anyone else run into this?


#2

Does it happen when using Marco with no compositing (and so no transparency)?

I’ve found a thread with an issue that might be similar to yours judging by the screenshot, though it’s several years old; might be worth a try: https://www.linuxquestions.org/questions/linux-desktop-74/conky-text-rendering-problem-on-desktop-environments-4175470253/


#3

Thanks for the link, I’ll definitely look into it.

Strangely, Marco no-compositor does it, too. It’s surprising conky works at all.

EDIT: The thread is using type ‘desktop’. What I see with this is any time the desktop gets focus the conky display disappears never to be seen again but the conky status seems unaffected. I’ve noted things like - desktop focus is involved in so many of the issues I wonder if this is a big clue I’m not equipped for.


#4

It’s weird that without composition you still have a transparent Conky window, it should likely be black (or grey, or whatever). You don’t have another compositor running that you started manually, like Compton?


#5

No known other compositor. Conky has had its own methods for transparency in the past so a lot may be happening. A kzillion options. :slight_smile:


#6

The best own_window_type I’ve found is dock, with a compositor. Yes, transparency goes away with no compositor:

But I get a totally new on-top of the text with compositing:

And I tweaked lots of other settings trying to eliminate this affect.


#7

I have conky 1.10.8-1 running in UM 18.04 and use Marco (Adaptive compositor).
I don’t appear to have your problems using own_window_type = ‘normal’, see below:

–####
–## 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.x - 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.x - Disabled)
–#
–# own_window_argb_visual = false,

Perhaps this will help you find a solution that works @Bill_MI


#8

Hey, bingo! ‘own_window_hints’ values do the trick with ‘normal’ as it looks like an app window otherwise. And it does seem ok with compiz in this VM (I’m dependent on Zoom). I’ll be testing this bigtime, thanks!

I’ve only been playing with this on-and-off since 18.04 came out. :slight_smile:


#9

Glad to be of help. Setting up Conky can waste hours upon hours.


#10

Hours? Oh I know all about that! :slight_smile:

Can I ask a favor with your settings? Any keyboard shortcut is doing it - I’ll suggest Ctl+Alt+T to open a terminal.

  1. Go to a desktop with nothing open on it. Blank. Except conky of course.
  2. Ctl+Alt+T opens terminal and takes focus.
  3. Ctrl+D closes terminal, desktop takes focus (assuming).

Now, does Ctl+Alt+T open terminal again?
Does any keyboard shortcut work?
I see keyboard shortcuts BROKEN at this point.

I find clicking the desktop restores keyboard shortcut usage.

It could be another setting of mine but I see this issue in both compiz and Marco/Adaptive. Again, something isn’t right about desktop and focus, a common theme.

TIA!


#11

Ctl+Alt+T then Ctrl+D works on my rig repeatedly.


#12

A big thanks for confirming this. I have some looking to do.


#13

I’ll just post my entire conky, actually I run two conkys but this one should have something in it that can help you Bill. Good luck.

conky.config = {

–####
–## Use XFT? Required to Force UTF8 (see below)
–#
use_xft = true,
font = ‘xftfont 123:size=8.00’,
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.x - 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 = 1.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, --# was 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.x - 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.x - Disabled)
–#
–# own_window_argb_visual = false,

–# own_window_colour = ivory --# ??

–####
–## 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, --# was 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 = ‘bottom_right’,

–####
–## Minimum size of the text area.
–#
minimum_width = 190,
minimum_height = 480,

–####
–## Maximum width of the text area.
–#
maximum_width = 200,

–####
–## Gap between text and screen borders.
–#
gap_x = 10, --# Left/Right
gap_y = 56, --# Top/Bottom, was 36

–####
–## Shorten MiB/GiB to M/G in stats.
–#
short_units = false,

–####
–## Pad % symbol spacing after numbers.
–#
pad_percents = 1,

–####
–## 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

} --end conky.config

conky.text = [[
${color DimGray}${font}${font Arial:bold:size=10}${color Tan1}SYSTEM $nodename${color turquoise1} ${hr 2}
$font${color white}$sysname $kernel $alignr $machine
Version $alignr ${execi 60 lsb_release -sd | cut -f 2| tr “[:upper:]” “[:lower:]”}
Intel Core2 Duo $alignr${freq_g cpu1} Ghz
Uptime $alignr${uptime}
File System $alignr ${fs_type}

${font Arial:bold:size=10}${color Tan2}PROCESSORS ${color turquoise1}${hr 2}
$font${color white}Core1 ${cpu cpu1}% $font${color gray68}${cpubar cpu1}
$font${color white}Core2 ${cpu cpu2}% $font${color gray68}${cpubar cpu2}

${font Arial:bold:size=10}${color red}MEMORY ${color turquoise1}${hr 2}
$font${color white}RAM $alignc $memmax $alignr $memperc% used
$font${color gray68}$membar

${font Arial:bold:size=10}${color red}PARTITIONS ${color turquoise1}${hr 2}
$font${color white}/root sda9 $alignc ${fs_size /} $alignr ${fs_used_perc /}% used
$font${color gray68}${fs_bar /}
$font${color white}/data4 sda6 $alignc ${fs_size /home/data4} $alignr ${fs_used_perc /home/data4}% used
$font${color gray68}${fs_bar /home/data4}

${font Arial:bold:size=10}${color red}PROCESSES ${color turquoise1}${hr 2}
${color white}$font${top_mem name 1}${alignr}${top mem 1} %
$font${top name 2}${alignr}${top mem 2} %
$font${top name 3}${alignr}${top mem 3} %
$font${top name 4}${alignr}${top mem 4} %
$font${top name 5}${alignr}${top mem 5} %
$font${top name 6}${alignr}${top mem 6} %
$font${top name 7}${alignr}${top mem 7} %
$font${top name 8}${alignr}${top mem 8} %
$font${top name 9}${alignr}${top mem 9} %
$font${top name 10}${alignr}${top mem 10} %

${font Arial:bold:size=10}${color brown}WIRELESS ${color turquoise1}${hr 2}
$font${color white}IP on wlan0 $alignr ${addr wlan0}
Public IP: ${alignr} ${execi 1800 ~/scripts/wan-ip.sh}
Download rate: $alignr ${downspeed wlan0} kb/s
Upload rate: $alignr ${upspeed wlan0} kb/s
Downloaded: $alignr ${totaldown wlan0}
Uploaded: $alignr ${totalup wlan0}
Sig. strength ${wireless_essid wlan0}: $alignr${wireless_link_qual_perc wlan0}%
]] --end conky.text


#14

Great! Thanks! Save a few hours. :grinning:

Since I highly customize the desktop, I created a new user just to test my exact conky config on default settings. It does seem to prove my conky config contains the issue.


#15

Hey @mdooley, thanks to you I find it’s likely some nvidia graphics quirk doing this. Or something else in hardware. Here’s what I did.

native 18.04 install on a second hd
Your conkyrc has the same problem so to eliminate my other customizations, I live booted 18.04.1 and did nothing more than install conky-std and tried your config. Same issue there.

VBox VM
The fact this also happens in a VBox VM 16.04 host running 18.04 guest means this quirk must be showing through the VBox drivers, too.

In case this helps anyone else my graphics info on this Dell XPS8700 desktop:

~$ inxi -G
Graphics:  Card: NVIDIA GK208 [GeForce GT 720]
           Display Server: x11 (X.Org 1.19.6 )
           drivers: nouveau (unloaded: modesetting,fbdev,vesa)
           Resolution: [email protected]
           OpenGL: renderer: NV108 version: 4.3 Mesa 18.0.5

A big thanks to you and @terzag for all your help!

EDIT: Now I find changing to type ‘dock’ with those window_hints and issues do go away but replaced by new ones. Oh well, I have to stop posting intermediate results.


#16

For the record, I found what appears to be the only known solution. It’s to setup with type ‘normal’ (or ‘dock’ seems to be the same) with true transparency and use compiz “nofocus” on the conky window.

Here’s the .conkyrc own_window section. Notice I explicitly set all values.

--# Ok if compiz Window Rules  nofocus, title=Conky (or class=Conky)
--# Seems the same type normal or dock
    own_window = true,
    own_window_colour = 'black',
    own_window_class = 'Conky',
    own_window_title = 'Conky',
    own_window_type = 'normal',
    own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
    own_window_transparent = true,
    own_window_argb_visual = true,
    own_window_argb_value = 0,

And the compiz setting:

The killer is how this Conky window gets focus on a blank desktop which breaks keyboard shortcuts until the desktop is left-clicked. The compiz nofocus takes care of that soooo I have not found a workaround for Marco at all.

In this quest I found a few things.

  1. Don’t trust behavior after actively changing .conkyrc in a session. A reboot may differ!
  2. The Conky universe is just one big trial-and-error.
  3. I suspect this Dell / nVidia environment somehow made this into a major project.
  4. For some strange reason, sometimes I can place a desktop icon in the conky window area and sometimes not. Not sure what changes it.

Hope this helps someone else.


#17

Thanks di cuore x ottimo conky !


#18

Did any1 solved that? Cause i’m still getting this,


#19

Hi @Olotot, I solved it but had to set Compiz to “nofocus” the conky window. Details in post 16 above.

In other words, I have no solution if using Marco.

Compiz and Marco are Window Manager options in MATE-Tweak in case you’re not familiar. While I’ve been using Compiz for years I know, unfortunately, it isn’t for everyone.

Is that “painting” your issue? That seems to be some kind of incompatibility with conky type ‘override’ that others are not seeing.