Re: Re: questions and sundry gripes about X11 multihead (it's a rant)

Brent Busby <[email protected]> Mon, 30 Dec 2013 10:34:41 -0600 (CST)
Newsgroups gmane.linux.gentoo.desktop
Message-ID <[email protected]>
On Mon, 30 Dec 2013, Duncan wrote:

> First to address randr.  I believe a lot there depends upon the 
> flexibility and configurability of your window manager.  I qualify the 
> claim with "I believe", because I've not run anything but kwin for 
> quite some time, so I actually don't know how flexible/configurable 
> other WMs are, but what I DO know is how well kwin works for me in 
> this regard. =:^)

I did read about a window manager called Awesome that's supposed to be 
more multihead-aware than any other, including specific support for 
Zaphod mode (if you can get your card's video driver to do it at all).

> (cli/ncurses/qt4).  If the switch to kde frameworks 5 with qt5 is 
> anything like the kde4 upgrade, they'll probably lose me for the 
> desktop too, but so far signs are good that they've seen some sense 
> and don't intend to go thru /that/ again.)

That's a great example of the sort of thing I was ranting about -- the 
KDE developers decided nobody really likes KDE as we knew it and decided 
to give us a whole new product.  They even put us through five or six 
releases of beta quality software while they tried to stabilize the new 
desktop that we never asked for.  I never posted a rant about that 
before though because on Unix, if you don't like a desktop, don't run 
it.  If you start taking away basic features of X11 though, that's 
really annoying, which is why the Zaphod and Wayland issues bother me 
much more.

> So anyway, at least kwin can be configured to see the entire desktop 
> as a single "screen" (USE=-xinerama for qt-gui), or to treat each one 
> separately (USE=xinerama).  When kwin is in separate screens mode, 
> which is what I use, full-screen and maximizing work to just the 
> single randr monitor (formerly xinerama/X screen) and the default 
> smart-window- placement can be set to either put windows on the 
> "active" screen as defined by where the mouse pointer is, or as 
> defined by the parent or active window.  (I use pointer-active since 
> it allows me to for instance click a link and quickly point at a 
> different monitor if I want firefox to open there instead.)

That brings up an interesting possibility:  Since I'd heard everywhere 
that basically RandR has supplanted Xinerama, I have my system compiled 
globally with USE=-xinerama.  Does this mean that if I turn USE=xinerama 
on, I may be able to get window placement to behave?  I'm still facing 
driver issues with the open source radeon driver, but this could at 
least be an answer to the window/desktop management problem (e.g., 
maximizing windows fullscreen to just one monitor).

> There's an old DOS-based game (Master of Orion, original, now 20 years 
> old... and the only non-freedomware app I still run) I run in dosbox, 
> that I have set very specifically not only to size, but to position, 
> so it always opens up in the same place on the same monitor, basically 
> so the game is full monitor height, but not full monitor width as that 
> would distort it.  I also have that particular window set to no-border 
> since that would only be a distraction, but it's also possible to keep 
> the title bar but force position and size such that only the titlebar 
> appears on one screen, while the game in the client window appears 
> vertically maximized in the screen below, and sometimes when I'm 
> tweaking things, I'll switch it to that mode so I can see the 
> parameters dosbox puts in the titlebar, without losing the full-height 
> game display.

Yes, this is the type of configuration tricks I'm going to have to start 
learning a lot of I think.  Having two monitors is nice, but it's going 
to make life complicated.  :)

> There's two that I know of.  Which one you choose will depend on your 
> needs and neither one is exactly like single-X-session zaphod mode as 
> both involve multiple X sessions, but with some tweaking, hopefully 
> one or the other will do what you want.

I have a feeling I'm probably just going with RandR, just because that's 
the direction the wind is blowing.  You can only fight upstream for so 
long.

> 1) Xorg can handle multiple X sessions on the same hardware, each 
> using its own VT.  This is sometimes referred to as 
> fast-user-switching, particularly when it's handled via GUI at the XDM 
> login level, but the same thing can be done using CLI login and 
> running startx multiple times, as the same user or different users. 
> I actually do this accidentally on occasion if I forget that I already 
> have an X session running, which is how I know it works, but a script 
> that sets the XSESSION variable and switches out a few other things 
> appropriately would be easily setup.

I've thought about doing this too...  The fast user switching applets 
all assume you want to switch between two X servers on the same monitor. 
If I go this route, I'd imagine it will be more like just using 
Ctrl-Alt-F<n> to switch the mouse and keyboard back and forth between 
two monitors.

> 2) It's also possible to do "multi-seat X", where each "seat" has its 
> own entirely separate configuration, each talking to its own graphics 
> card with its own displays attached and using its own input hardware, 
> as configured.

Yes, that sounds really cool, though that's more than I'm wanting.

-- 
+ Brent A. Busby	 + "We've all heard that a million monkeys
+ Sr. UNIX Systems Admin +  banging on a million typewriters will
+ University of Chicago	 +  eventually reproduce the entire works of
+ James Franck Institute +  Shakespeare.  Now, thanks to the Internet,
+ Materials Research Ctr +  we know this is not true." -Robert Wilensky