This seems like a simple question, yet I could not find any satisfying answer using Google or Ask Ubuntu.
So I have a triple-monitor setup. Basically what I want is simply to have a different background on each of the three monitors. Now I am not speaking about different virtual desktops (aka workspaces) here. Most of the solutions I googled were about different backgrounds on different workspaces. I have only the one workspace, but three monitors, like so:
Monitor 1 (on top) is my big TV that's attached to the wall above my two normal monitors.
I am using Gnome 2 with Compiz (aka gnome-session-fallback aka Gnome Classic (with effects) in the login manager dropdown list) on Ubuntu 13.04.
I tried the following methods trying to set a different background for each monitor:
ccsm(compiz-config-settings-manager), that is, setting a background via the window manager (Compiz). More precisely, I used the Wallpaper plugin of Compiz.
gnome-control-center, that is, setting a background via the Gnome System Settings. More precisely, I used the Background panel in the Gnome System Settings.
XDG_CURRENT_DESKTOP=Unity gnome-control-center, that is, settting a background via the Gnome System Settings, but mimicking Unity behavior. More precisely, I used the Appearance panel in the Gnome System Settings.
However, none of these methods seem to enable me to select a different background for each monitor. In each case, I can only set a single background (or possibly several that can then be cycled periodically, or used for different workspaces) for all three monitors. Then, I typically have options like center, tile, crop or scale that control how this single background is rendered across the three monitors.
The workaround I have gone with so far is to use Gimp to create one "big" background that encompasses the entire virtual resolution of all three monitors together. Basically, I create one big background image of size 3840x2160, in which I paste three backgrounds at the right places. Then I set this big background as the single background for the three monitors using possibility (1) or (3) above, and use the span option to span this big background across all three monitors. This results in three different backgrounds on the three monitors, provided the three smaller backgrounds were placed correctly on the big background image (Note: possibility (2) does not offer a span option).
However, this seems like an awful hack to achieve such a simple thing as setting a different background for each of my monitors. It also has several disadvantages:
- When I want to change the arrangement of the monitors (the big TV on top can be slided some way to the left or to the right, and I like to adjust the monitor positions accordingly using
xrandror an associated GUI such as the Displays panel in the Gnome System Settings, so as to keep mouse movement intuitive), clearly the upper background does not slide along with the monitor it's supposed to be displayed on, which means I only see part of the upper background.
- The big background has some gray areas (dead space) in the upper corners that are uselessly loaded at login time by Compiz or Gnome when the big background is loaded.
- Worst of all, when I want to change a single one of the three backgrounds, then I have to gimp-edit the whole big background. This is too much work considering I simply want to change a single background (yep, I know about Gimp layers, but still) - this ought to be possible with a few clicks and without a heavy-weight image manipulation program.
The first point means this workaround is not robust. The second means it is not efficient. And the third means it's a pain in the butt :)
So my question is this:
Is there some way - using either Gnome 2 or Compiz - to simply tell the system that I want a different background for each monitor? This would be the logical approach to me, as it would actually tell the system what my intention is. It would also be more efficient.
Really, it feels like this cannot be such an uncommon scenario. I would think many people have multiple monitors; and at least some of those must prefer to have different backgrounds on these monitors. So can it be true that there is no straightforward solution, and users are expected to come up with awful hacks such as creating their own custom backgrounds with heavy-weight programs in order to get this to work?