[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-desktop
Subject:    Re: [gentoo-desktop] questions and sundry gripes about X11 multihead (it's a rant)
From:       Alex Alexander <wired () gentoo ! org>
Date:       2014-01-04 19:20:13
Message-ID: CAMUzOahYM6TkDVyUX6PFSEK8Vnt59Wz2bOxUrLRe2uOPjYmqeQ () mail ! gmail ! com
[Download RAW message or body]

On Dec 30, 2013 7:51 AM, "Brent Busby" <brent@keycorner.org> wrote:
>
> After years of assuming I'd probably never set my system up with multiple
monitors, I've decided to go ahead and do it.  I've watched with some
interest as various new schemes for doing it have emerged over the years
(Xinerama, and now lately RandR), but I've always assumed that if nothing
else, good old Zaphod mode would always be around, since it's built right
into the way X11 numbers $DISPLAY (0:0, 0:1, 0:2...etc.). It's been around
so long, it's older than Linux itself.
>
> Lately, I've been reading a lot of listserv and newsgroup posts from
developers telling various people in forums that if they want Zaphod mode,
they're more or less strange odd creatures who ought to be ashamed of
themselves.  The driver developers don't want to support it anymore. It's
not so much a problem in the X server as in each of the individual video
drivers for the various cards.  I've probably read seven or eight different
threads like this now, so it's odd that the common trend in all of them is
that each of these users is told no one else but them uses it.  (Apparently
a lot do.)
>
> Anyway, Zaphod is what I want.  I don't care that it won't let me drag
windows between monitors.  That's precisely the advantage of it.  Many
applications are written with such an assumption of a single display that
it's best not to disappoint them.  I don't want to worry about what a
fullscreen game will think of my multihead setup.  I don't want to see
dialog windows (or anything else really) popping up, half on one monitor
and half on another.  I don't want to have to setup the arrangement of my
desktop so that it's arranged to not look rediculous at the point where the
two monitors divide the screen.  It's all just simpler if we have two
screens that are completely separate, and the only magic object that's able
to move between them is the mouse pointer.
>
> X11 has been able to do this since the 80's.
>
> But now we're in a brave new world where "nobody wants to do that" (other
than seven or eight people on various forums, and those are just the ones
who complained).  I suppose I shouldn't be surprised.  They say we have
Wayland in our future too, which we're assured will have some kind of way
to run apps on a remote desktop that will certainly be at least as good as
running a VNC app on Windows (oh joy).  While we're at it, why don't we get
rid of this multiple desktops thing that most X11 window managers support
-- nobody does that on Windows either, so surely that's probably another
thing that nobody on Linux really uses.  We should definitely find all the
window managers that support that and strip that feature out of them for
everyone's own good.
>
> Ok, I suppose I should quit ranting.  It's just been a trend now for the
past five years or so that I've been seeing upstream developers making
"improvements" to Linux that are so basic to the infrastructure that no
distro can fight them (PolicyKit, Wayland, goodbye Zaphod, udev, etc.). I
normally don't complain about what the developers do, since it's not me
doing the programming, but I think we should be able to make an exception
for things that, a) affect us all, and b) are so basic to the way modern
Linux systems work that not even the leadership of a major distro can say
jack about it.  In cases like this, I think we should have a right to
complain, because in this instance, saying that if you don't like it you
can start your own fork is like saying that you're free to fork the entire
GNU/Linux platform.  Technically it's true, but it's also not reasonable or
helpful.  (Nobody is going to do that.)
>
> So I am a bit disappointed when they decide behavior that's been an
assumed part of the way Unix systems act for over twenty years is something
nobody cares about, when then users complain, each user is told
individually that they're the only ones who use that feature...all of them.
>
> I'm not complaining that we have RandR now.  I think it's great.  One of
X11's greatest weaknesses has always been that before now, you couldn't
really make any big configuration changes while the X server is running.
Now, thanks to RandR, you can do almost anything with your desktop running
and active, and you don't even need root access.  You can't configure
Zaphod type multihead that way, but that's fine -- you couldn't do that
before either (nothing gained, nothing lost).  But RandR lets you make
almost any other desktop geometry change as a regular user without
restarting X, and I think that's great.
>
> RandR (and its predecessor, Xinerama) both assume though that if you're
doing multihead, you want one big screen that spans multiple monitors. Nice
if that's what you want, but as detailed above, there are good reasons why
you might prefer otherwise.  For example, on my system, I have a landscape
mode main monitor, and a secondary monitor rotated sideways (portrait mode)
to the left of it.  That means that if I were to adopt some kind of
RandR/Xinerama type spanned desktop, I'd have a choice:  I could have a
desktop that's shaped like some kind of "L", or a desktop that's shaped
like a sideways "T".  I don't think I really like either of those very
much.  It's very weird, and many of my apps will probably think so too,
especially when I try to fullscreen their windows.  Instead of desktops
shaped like alphabet soup, why not have separate logical screens?  I don't
mind that I can't move windows between them.  I don't want the desktops to
know about eachother anyway. It's simpler that way.
>
> There are Xinerama "hints" that apps which support Xinerama are supposed
to use to help with this, which I think RandR is supposed to respect. The
problem with this is the same as the problem with Wayland's expectation
that clients will take care of their own network transparency needs:  As
soon as you leave it to the individual programs, you will have varying
levels of support in each one.  Some will be paragons of good behavior,
others will be useless.  You can only make a feature truly available to all
when it's provided as an OS feature. There will still be programs that
misbehave, but they'll have to try much harder at it.
>
> I think I'm probably most irked by the claims being made by some
developers that X doesn't feature network transparency anyway, thus they're
not really taking away anything that we really had.  This, in spite of the
daily experiences of anyone who's ever done 'ssh -Y' and seen that,
shockingly, it actually works pretty well.
>
> --
> + 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
>

You make it sound much worse than it actually is.

These days pretty much everything works well with randr. Sure, there are
corner cases, but it's been a while since I hit one :) I see no reason not
to use it.

The -kit fiasco, well... That's a different story.

[Attachment #3 (text/html)]

<p dir="ltr">On Dec 30, 2013 7:51 AM, &quot;Brent Busby&quot; &lt;<a \
href="mailto:brent@keycorner.org">brent@keycorner.org</a>&gt; wrote:<br> &gt;<br>
&gt; After years of assuming I&#39;d probably never set my system up with multiple \
monitors, I&#39;ve decided to go ahead and do it.  I&#39;ve watched with some \
interest as various new schemes for doing it have emerged over the years (Xinerama, \
and now lately RandR), but I&#39;ve always assumed that if nothing else, good old \
Zaphod mode would always be around, since it&#39;s built right into the way X11 \
numbers $DISPLAY (0:0, 0:1, 0:2...etc.). It&#39;s been around so long, it&#39;s older \
than Linux itself.<br>

&gt;<br>
&gt; Lately, I&#39;ve been reading a lot of listserv and newsgroup posts from \
developers telling various people in forums that if they want Zaphod mode, \
they&#39;re more or less strange odd creatures who ought to be ashamed of themselves. \
The driver developers don&#39;t want to support it anymore. It&#39;s not so much a \
problem in the X server as in each of the individual video drivers for the various \
cards.  I&#39;ve probably read seven or eight different threads like this now, so \
it&#39;s odd that the common trend in all of them is that each of these users is told \
no one else but them uses it.  (Apparently a lot do.)<br>

&gt;<br>
&gt; Anyway, Zaphod is what I want.  I don&#39;t care that it won&#39;t let me drag \
windows between monitors.  That&#39;s precisely the advantage of it.  Many \
applications are written with such an assumption of a single display that it&#39;s \
best not to disappoint them.  I don&#39;t want to worry about what a fullscreen game \
will think of my multihead setup.  I don&#39;t want to see dialog windows (or \
anything else really) popping up, half on one monitor and half on another.  I \
don&#39;t want to have to setup the arrangement of my desktop so that it&#39;s \
arranged to not look rediculous at the point where the two monitors divide the \
screen.  It&#39;s all just simpler if we have two screens that are completely \
separate, and the only magic object that&#39;s able to move between them is the mouse \
pointer.<br>

&gt;<br>
&gt; X11 has been able to do this since the 80&#39;s.<br>
&gt;<br>
&gt; But now we&#39;re in a brave new world where &quot;nobody wants to do that&quot; \
(other than seven or eight people on various forums, and those are just the ones who \
complained).  I suppose I shouldn&#39;t be surprised.  They say we have Wayland in \
our future too, which we&#39;re assured will have some kind of way to run apps on a \
remote desktop that will certainly be at least as good as running a VNC app on \
Windows (oh joy).  While we&#39;re at it, why don&#39;t we get rid of this multiple \
desktops thing that most X11 window managers support -- nobody does that on Windows \
either, so surely that&#39;s probably another thing that nobody on Linux really uses. \
We should definitely find all the window managers that support that and strip that \
feature out of them for everyone&#39;s own good.<br>

&gt;<br>
&gt; Ok, I suppose I should quit ranting.  It&#39;s just been a trend now for the \
past five years or so that I&#39;ve been seeing upstream developers making \
&quot;improvements&quot; to Linux that are so basic to the infrastructure that no \
distro can fight them (PolicyKit, Wayland, goodbye Zaphod, udev, etc.). I normally \
don&#39;t complain about what the developers do, since it&#39;s not me doing the \
programming, but I think we should be able to make an exception for things that, a) \
affect us all, and b) are so basic to the way modern Linux systems work that not even \
the leadership of a major distro can say jack about it.  In cases like this, I think \
we should have a right to complain, because in this instance, saying that if you \
don&#39;t like it you can start your own fork is like saying that you&#39;re free to \
fork the entire GNU/Linux platform.  Technically it&#39;s true, but it&#39;s also not \
reasonable or helpful.  (Nobody is going to do that.)<br>

&gt;<br>
&gt; So I am a bit disappointed when they decide behavior that&#39;s been an assumed \
part of the way Unix systems act for over twenty years is something nobody cares \
about, when then users complain, each user is told individually that they&#39;re the \
only ones who use that feature...all of them.<br>

&gt;<br>
&gt; I&#39;m not complaining that we have RandR now.  I think it&#39;s great.  One of \
X11&#39;s greatest weaknesses has always been that before now, you couldn&#39;t \
really make any big configuration changes while the X server is running. Now, thanks \
to RandR, you can do almost anything with your desktop running and active, and you \
don&#39;t even need root access.  You can&#39;t configure Zaphod type multihead that \
way, but that&#39;s fine -- you couldn&#39;t do that before either (nothing gained, \
nothing lost).  But RandR lets you make almost any other desktop geometry change as a \
regular user without restarting X, and I think that&#39;s great.<br>

&gt;<br>
&gt; RandR (and its predecessor, Xinerama) both assume though that if you&#39;re \
doing multihead, you want one big screen that spans multiple monitors. Nice if \
that&#39;s what you want, but as detailed above, there are good reasons why you might \
prefer otherwise.  For example, on my system, I have a landscape mode main monitor, \
and a secondary monitor rotated sideways (portrait mode) to the left of it.  That \
means that if I were to adopt some kind of RandR/Xinerama type spanned desktop, \
I&#39;d have a choice:  I could have a desktop that&#39;s shaped like some kind of \
&quot;L&quot;, or a desktop that&#39;s shaped like a sideways &quot;T&quot;.  I \
don&#39;t think I really like either of those very much.  It&#39;s very weird, and \
many of my apps will probably think so too, especially when I try to fullscreen their \
windows.  Instead of desktops shaped like alphabet soup, why not have separate \
logical screens?  I don&#39;t mind that I can&#39;t move windows between them.  I \
don&#39;t want the desktops to know about eachother anyway. It&#39;s simpler that \
way.<br>

&gt;<br>
&gt; There are Xinerama &quot;hints&quot; that apps which support Xinerama are \
supposed to use to help with this, which I think RandR is supposed to respect. The \
problem with this is the same as the problem with Wayland&#39;s expectation that \
clients will take care of their own network transparency needs:  As soon as you leave \
it to the individual programs, you will have varying levels of support in each one.  \
Some will be paragons of good behavior, others will be useless.  You can only make a \
feature truly available to all when it&#39;s provided as an OS feature. There will \
still be programs that misbehave, but they&#39;ll have to try much harder at it.<br>

&gt;<br>
&gt; I think I&#39;m probably most irked by the claims being made by some developers \
that X doesn&#39;t feature network transparency anyway, thus they&#39;re not really \
taking away anything that we really had.  This, in spite of the daily experiences of \
anyone who&#39;s ever done &#39;ssh -Y&#39; and seen that, shockingly, it actually \
works pretty well.<br>

&gt;<br>
&gt; -- <br>
&gt; + Brent A. Busby         + &quot;We&#39;ve all heard that a million monkeys<br>
&gt; + Sr. UNIX Systems Admin +  banging on a million typewriters will<br>
&gt; + University of Chicago  +  eventually reproduce the entire works of<br>
&gt; + James Franck Institute +  Shakespeare.  Now, thanks to the Internet,<br>
&gt; + Materials Research Ctr +  we know this is not true.&quot; -Robert Wilensky<br>
&gt;</p>
<p dir="ltr">You make it sound much worse than it actually is.</p>
<p dir="ltr">These days pretty much everything works well with randr. Sure, there are \
corner cases, but it&#39;s been a while since I hit one :) I see no reason not to use \
it.</p> <p dir="ltr">The -kit fiasco, well... That&#39;s a different story.</p>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic