Conky doesn't see the 2nd display?

Hi, after last big update my conky starts every time on my main display. But before update it started on my 2nd display - autostart.

I use the latest KDE and manjaro, nvidia card.

I’m trying to edit my ~/.conkyrc

like
alignment = ‘bottom_right’,
or
alignment = ‘middle_right’,
or
alignment = ‘top_right’,

but it doesn’t work, my conky is always on my main display. I have to grab it to my second display by mouse.

my config is

conky.config = {

    update_interval = 1,
    cpu_avg_samples = 2,
    net_avg_samples = 2,
    out_to_console = false,
    override_utf8_locale = true,
    double_buffer = true,
    no_buffers = true,
    text_buffer_size = 32768,
    imlib_cache_size = 0,
    own_window = true,
    own_window_type = 'normal',
    own_window_argb_visual = true,
    own_window_argb_value = 50,
    own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
    border_inner_margin = 5,
    border_outer_margin = 0,
    xinerama_head = 1,
    alignment = 'bottom_right',
    gap_x = 0,
    gap_y = 24,
    draw_shades = false,
    draw_outline = false,
    draw_borders = false,
    draw_graph_borders = false,
    use_xft = true,
    font = 'Ubuntu Mono:size=12',
    xftalpha = 0.8,
    uppercase = false,
    default_color = 'white',
    own_window_colour = '#000000',
    minimum_width = 300, minimum_height = 0,
    alignment = 'bottom_right',

};

It worked a long period of time before the last update.

Any ideas?

Hi @seobmen,


Note:

I don’t have or use conky.


According to this page:

try xinerama_head = 0, or 1 in your conky.rc

So try:

    xinerama_head = 0,
    update_interval = 1,
    cpu_avg_samples = 2,
    net_avg_samples = 2,
    out_to_console = false,
    override_utf8_locale = true,
    double_buffer = true,
    no_buffers = true,
    text_buffer_size = 32768,
    imlib_cache_size = 0,
    own_window = true,
    own_window_type = 'normal',
    own_window_argb_visual = true,
    own_window_argb_value = 50,
    own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
    border_inner_margin = 5,
    border_outer_margin = 0,
    xinerama_head = 1,
    alignment = 'bottom_right',
    gap_x = 0,
    gap_y = 24,
    draw_shades = false,
    draw_outline = false,
    draw_borders = false,
    draw_graph_borders = false,
    use_xft = true,
    font = 'Ubuntu Mono:size=12',
    xftalpha = 0.8,
    uppercase = false,
    default_color = 'white',
    own_window_colour = '#000000',
    minimum_width = 300, minimum_height = 0,
    alignment = 'bottom_right',

…for the primary monitor, or:


    xinerama_head = 1,
    update_interval = 1,
    cpu_avg_samples = 2,
    net_avg_samples = 2,
    out_to_console = false,
    override_utf8_locale = true,
    double_buffer = true,
    no_buffers = true,
    text_buffer_size = 32768,
    imlib_cache_size = 0,
    own_window = true,
    own_window_type = 'normal',
    own_window_argb_visual = true,
    own_window_argb_value = 50,
    own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
    border_inner_margin = 5,
    border_outer_margin = 0,
    xinerama_head = 1,
    alignment = 'bottom_right',
    gap_x = 0,
    gap_y = 24,
    draw_shades = false,
    draw_outline = false,
    draw_borders = false,
    draw_graph_borders = false,
    use_xft = true,
    font = 'Ubuntu Mono:size=12',
    xftalpha = 0.8,
    uppercase = false,
    default_color = 'white',
    own_window_colour = '#000000',
    minimum_width = 300, minimum_height = 0,
    alignment = 'bottom_right',

…for the secondary monitor.

Hope this helps!

Thanks for answer, I tried it as well and I have xinerama_head in my config.
I tried
xinerama_head = 0
or
xinerama_head = 1
or even
xinerama_head = 2

it doesn’t work as well.

And if I put mouse to top left corner (show all workspaces) I can see conky widget on my both displays. But in normal view I can see it on my main display only.

If I put mouse to top left corner (show all workspaces) and grub conky widget from my main to my second display, it just works on my second display.

Welp, I’m sorry then, since I’m not able to be of more help. I only had a very brief encounter with Conky, and not even on Manjaro, so I don’t know…

1 Like

The xinerama_head option works for me, are you restarting conky after you make the changes?

Perhaps it’s something to do with the window type. Here’s my config, hope it helps.

conky.config = {
-- conky configuration
--#############################################
-- Settings
--#############################################
	background = true,
	format_human_readable = true,
	use_xft = true,
	font = 'Liberation Sans:size=22',
	xftalpha = 1,
	update_interval = 1,
	total_run_times = 0,
	own_window = true,
	own_window_class = 'conky',
	own_window_transparent = false,
	own_window_type = 'dock',
	own_window_argb_visual = true,
	own_window_argb_value = 100,
	own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
	double_buffer = true,
	maximum_width = 1500,
	-- maximum_height = 2100,
	minimum_width = 300, minimum_height = 400,
	draw_shades = false,
	draw_outline = false,
	draw_borders = false,
	border_width = 0,
	draw_graph_borders = false,

--alignment top_right
	xinerama_head = 1,
	alignment = 'bottom_right',
	gap_x = 25,
	gap_y = 28,
	no_buffers = true,
	uppercase = false,
	cpu_avg_samples = 4,
	override_utf8_locale = true,
};

it seems xinerama_head doesn’t work for me at all, I used different values like 0,1,2,3,10 and widget appears on the main display.

After update manjaro + kde + kernel 5.15 I had
conky-1.17.0-1-x86_64.pkg.tar.zst

Now I used downgrade to
conky-1.15.0-1-x86_64.pkg.tar.zst

and it works fine. I think it is a bug somewhere in conky v. 1.17.0

Oops, I hadn’t updated in a while.

Yeah 1.17 doesn’t respect xinerama_head. However I can get it to display on either monitor by adjusting the alignment and gap_x, it can be negative if that helps.

Here’s an example in case anyone’s interested. I’ll assume both monitors are 1920x1080, and that you want to go from left monitor to right.

# left edge on the left edge of right monitor. 
alignment = 'bottom_left',
gap_x = 1920, 

# right edge on right edge of right monitor
alignment = 'bottom_right',
gap_x = -1920,

If you want to go from right to left monitor then change the sign of gap_x.

If there’s a gap between the monitors (in the framebuffer) then you’ll also have to account for that.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.