It used to be that using two monitors with two separate X sessions in Linux actually worked. Then they improved things so it stopped working out of the box, but you could force it to work with a bit of effort. Further improvements made the workarounds more difficult. Now, with Xubuntu 12.10, it seems impossible.
This. Is. Not. Progress.
Experimenting will require considerable restarting of the X server, which nowadays requires, by default, rebooting the box. In the Bad Old Days, you could hit Ctrl-Alt-Backspace to restart the X server (and, en passant, blow away all unsaved data in your session). My suggestions about re-enabling it no longer work and, worse, the suggestions there about:
- Pressing
Right-Alt + Sysreq + K - Enabling
DontZap
do not work, either. I’m no longer surprised by any of this.
Fortunately, as suggested at the same spot, this works:
- Create if missing:
~/.xprofile - Add:
setxkbmap -option terminate:ctrl_alt_bksp - Make it executable:
chmod u+x .xprofile
But it’s per-user, so it works only while you’re logged in, which means you can’t restart X from the login screen. This is marginally OK.
So. We begin.
This box (an off-lease Dell Optiplex 780, Core 2 Duo E8400 3.0 GHz) now has a Jaton GeForce GT430 nVidia video card with two DVI outputs.
In order to get decent performance, you must use the nVidia proprietary driver. Installing the nvidia-current package pulls in, as of this writing, 304. The nVidia driver now ignores the rotate option and the randrrotation option in xorg.conf. Adding the {Rotation=Left} meta-option to the portrait monitor or enabling Xinerama kills xrandr.
Not having xrandr used to not be fatal, but now OpenSCAD (among others) requires xrandr to be both present and active. Any solution that doesn’t allow xrandr isn’t feasible.
Despite notes suggesting that nVidia’s TwinView kills xrandr, it doesn’t (perversely, Xinerama should allow it and doesn’t; perhaps I misunderstand what’s going on). Add another line to .xprofile:
xrandr --output DVI-I-3 --rotate left
You discover which output to use by parsing the output of xrandr without any parameters:
$ xrandr Screen 0: minimum 8 x 8, current 2650 x 1680, maximum 16384 x 16384 DVI-I-0 disconnected (normal left inverted right x axis y axis) DVI-I-1 disconnected (normal left inverted right x axis y axis) DVI-I-2 connected 1600x1200+0+0 (normal left inverted right x axis y axis) 367mm x 275mm 1600x1200 60.0*+ 1280x1024 75.0 60.0 1152x864 75.0 1024x768 75.0 60.0 800x600 75.0 60.3 640x480 75.0 59.9 DVI-I-3 connected 1050x1680+1600+0 left (normal left inverted right x axis y axis) 434mm x 270mm 1680x1050 59.9*+ 1280x1024 75.0 60.0 1152x864 75.0 1024x768 75.0 60.0 800x600 75.0 60.3 640x480 75.0 59.9 HDMI-0 disconnected (normal left inverted right x axis y axis)
Why DVI-I-0 and DVI-I-1 are disconnected is not explained. There is an HDMI jack that I’m not using, so that one does make sense. The output shows the portrait monitor on DVI-I-3 as rotated.
This is a single X session, so the two monitors show sections of a larger workspace. The cursor moves freely across the junction, it doesn’t vanish below the landscape montitor, and windows maximize properly to fill the single monitor they start in.
This is not what I want, because I cannot independently flip the workspaces on the two monitors. It’s possible to force one of the windows on the portrait monitor to “always on top”, but that means I have only one program accessible on that monitor, which isn’t usually the case.
This. Is. Not. Progress.
But it seems to be as good as it gets these days…
Comments
16 responses to “Xubuntu 12.10 vs. Dual Monitors: Regression”
In the spirit of total unhelpfulness, I’ll point out that this is open source, and you could theoretically dive into the code and fix this yourself so it works exactly the way you want it to.
Y’know, I’ve actually tried that in a different context, which gave me a visceral understanding of the term dependency hell. [heavy sigh]
Used to be, I (thought I) understood this software stuff… now I know better!
Got that T-shirt! Circa Y2K I actually was fluent in Perl and so-so at *nix administration. Haven’t even looked at any Python documentation.
Getting back into LinuxLand is, er, intimidating. Oh well, it’s the (pick 2 of 3) money, time, and quality issue, and money is the lacking item.
From a user’s standpoint, I think it’s no less weird than, say, Windows 8. I set up an Xubuntu box for Mary’s father, after the Win XP box suffered a hostile takeover, and he didn’t have much trouble at all.
Now, from a programmer’s standpoint, I just heaved a stack of books on the subject: they were all out of date, after just a few years…
It’s programming that’s the bit. Use is fairly easy. I’m trying to bring up the Vaio as a MIDI controller with a Mac-oriented interface. I know it can be done, not sure if I can do it. There’s some sketchy driver code to let me talk to a Mac serial interface using a USB port, and driver code for the MIDI box. My hardware programming was at a higher level, so it’s gonna be fun. I hope.
We have an offer to upgrade the Windows on Julie’s laptop to 8. I’m sticking with 7. I have enough grey hair.
You and a lot of others, from what I read. If you want something weird and tablety, you can dual-boot Unity… for free!
Someone discovered that too many users were able to understand how things work … time for a change!
These days, pretty nearly everything the classic books tell you about how Unix-oid systems operate is wrong… and even the more recent references aren’t much help.
When I unleash Google on a problem, restricting the search to, say, the last year weeds out much of the clutter, but it’s still a challenge. As nearly as I can tell, there’s not much point in actually buying a reference book these days. Sic transit, etc.
Thanks for reminding me why I never, ever upgrade anything unless I absolutely cannot live without some new feature (this happens way less often than you might think, and bugfixes I can generally backport.)
Me, neither!
This was a fresh install on a new-to-me Optiplex, replacing something from about 2006 that was running Xubuntu 10.10 and falling off the thick edge of the wedge. It had increasing trouble installing software that wasn’t in an Ubuntu repository: out-of-date libraries and suchlike. Given the fragility of X vs. multiple monitors, I expected trouble and I definitely wasn’t disappointed.
[…] « Xubuntu 12.10 vs. Dual Monitors: Regression […]
You can always mess with X from the text consoles. It used to be that consoles 1-5 or so were text, and the X ran in Console 6, so if you were in GUI mode you would press Ctrl-Alt-F1 to see the text login prompt; you could go back to X via Alt-F6 (it’s not symmetric because Alt-Fx was supposed to switch consoles except that Alt-Fx is sometimes used in X so they added Ctrl to the required key events).
More recently, console1 tends to get X and text consoles are on 2-5.
When you are in the text console, you can killlall X or tellinit 3 to get to text mode. In text mode, startx is supposed to start standard X session, and when it gets killed or dies you get the text prompt back so it’s good for debugging. If there are error messages from X, ‘startx 2>&1 | less’ will capture that output
I’m a big, big fan of switching to VT1 to get things done when X has a bellyache, but I’ve had limited success with killing / adjusting / restarting X on the fly.
As nearly as I can tell, all the things that I knew for sure just aren’t so any more, right down to the active run level in graphics mode, which runlevel says is 2, and X accessible on the screen (or whatever) activated with Ctrl-Alt-7.
Ain’t nothin’ the same any more!
For some reason that I don’t understand, the wait-for-NFS-mount hack I put into the
lightdmscript occasionally doesn’t trigger, which stalls at the usual text-mode login screen on VT1. Logging in and typingstartxdoesn’t automagically startlightdm, which produces predictably distressing side effects…Everything I thought I knew is definitely wrong and there’s no (easy) way to debug it!
Fortunately, starting
lightdmmanually does produce the expected GUI login screen…[…] it seems there’s no good support for separate X sessions with dual monitors these days, the landscape and portrait monitors on my desk represent viewports into a larger pixel […]
[…] dual-monitor setup (left: 2560×1440 landscape, right: 1050×1680 portrait) usable with a single X session in Xubuntu 12.10. The window manager understands about the monitor layout, so maximizing a window […]