I would like Conky to only show up on one viewport/desktop. I did use the Gnome feature to predefine viewports for specific window classes, but this feature does not work for Conky. Even moving it manually to another viewport does not work, because it jumps back to the first viewport, as it refreshes.
So... is it possible to configure Conky to define the viewport it is displayed on?
Just follow these simple steps:
Look through your conky setup for any references to
own_window_hints
. If there is a reference to 'sticky', remove it as it will cause conky to draw your window on all workspaces (making this entire exercise a moot point)Look through for references to
own_window_type
as well. You want this set to 'normal', because it does not enable the 'sticky' from above. For my money, I personally do not useown_window_type
, instead preferring to set everything throughown_window_hints
for finer control of the own window settings.Determine the size of each viewport. This can be done with the
wmctrl
program, which you might need to install first. The command to install it is:To use it, type into a command window,
wmctrl -d
. This will give you the overall size of your combined viewports (DG), the viewport location of your current workspace (VP), and a few other details like the dimensions of your current workspace.Apply a
gap_x
andgap_y
to match these dimensions for each workspace you want to move your conky window over to. For example, ifwmctrl
is giving you:then you might want to start with
gap_x
of at least 1631 to start with to get onto the second workspace (in this example you have 4 workspaces of 1631x1026 set side by side in a horizontal arrangement.From there, obviously tinker away to get it precisely where you want it...and happy Conkying!
Source
A friendly redditor answered my question with the following trick:
Set the gap_x and gap_y properties, so that conky is positioned on the wished viewport. Not the nicest solution, but it works for me.