Gentoo Archives: gentoo-desktop

From: Alex Alexander <wired@g.o>
To: Gentoo-desktop <gentoo-desktop@l.g.o>
Subject: Re: [gentoo-desktop] questions and sundry gripes about X11 multihead (it's a rant)
Date: Sat, 04 Jan 2014 19:20:18
Message-Id: CAMUzOahYM6TkDVyUX6PFSEK8Vnt59Wz2bOxUrLRe2uOPjYmqeQ@mail.gmail.com
In Reply to: [gentoo-desktop] questions and sundry gripes about X11 multihead (it's a rant) by Brent Busby
1 On Dec 30, 2013 7:51 AM, "Brent Busby" <brent@×××××××××.org> wrote:
2 >
3 > After years of assuming I'd probably never set my system up with multiple
4 monitors, I've decided to go ahead and do it. I've watched with some
5 interest as various new schemes for doing it have emerged over the years
6 (Xinerama, and now lately RandR), but I've always assumed that if nothing
7 else, good old Zaphod mode would always be around, since it's built right
8 into the way X11 numbers $DISPLAY (0:0, 0:1, 0:2...etc.). It's been around
9 so long, it's older than Linux itself.
10 >
11 > Lately, I've been reading a lot of listserv and newsgroup posts from
12 developers telling various people in forums that if they want Zaphod mode,
13 they're more or less strange odd creatures who ought to be ashamed of
14 themselves. The driver developers don't want to support it anymore. It's
15 not so much a problem in the X server as in each of the individual video
16 drivers for the various cards. I've probably read seven or eight different
17 threads like this now, so it's odd that the common trend in all of them is
18 that each of these users is told no one else but them uses it. (Apparently
19 a lot do.)
20 >
21 > Anyway, Zaphod is what I want. I don't care that it won't let me drag
22 windows between monitors. That's precisely the advantage of it. Many
23 applications are written with such an assumption of a single display that
24 it's best not to disappoint them. I don't want to worry about what a
25 fullscreen game will think of my multihead setup. I don't want to see
26 dialog windows (or anything else really) popping up, half on one monitor
27 and half on another. I don't want to have to setup the arrangement of my
28 desktop so that it's arranged to not look rediculous at the point where the
29 two monitors divide the screen. It's all just simpler if we have two
30 screens that are completely separate, and the only magic object that's able
31 to move between them is the mouse pointer.
32 >
33 > X11 has been able to do this since the 80's.
34 >
35 > But now we're in a brave new world where "nobody wants to do that" (other
36 than seven or eight people on various forums, and those are just the ones
37 who complained). I suppose I shouldn't be surprised. They say we have
38 Wayland in our future too, which we're assured will have some kind of way
39 to run apps on a remote desktop that will certainly be at least as good as
40 running a VNC app on Windows (oh joy). While we're at it, why don't we get
41 rid of this multiple desktops thing that most X11 window managers support
42 -- nobody does that on Windows either, so surely that's probably another
43 thing that nobody on Linux really uses. We should definitely find all the
44 window managers that support that and strip that feature out of them for
45 everyone's own good.
46 >
47 > Ok, I suppose I should quit ranting. It's just been a trend now for the
48 past five years or so that I've been seeing upstream developers making
49 "improvements" to Linux that are so basic to the infrastructure that no
50 distro can fight them (PolicyKit, Wayland, goodbye Zaphod, udev, etc.). I
51 normally don't complain about what the developers do, since it's not me
52 doing the programming, but I think we should be able to make an exception
53 for things that, a) affect us all, and b) are so basic to the way modern
54 Linux systems work that not even the leadership of a major distro can say
55 jack about it. In cases like this, I think we should have a right to
56 complain, because in this instance, saying that if you don't like it you
57 can start your own fork is like saying that you're free to fork the entire
58 GNU/Linux platform. Technically it's true, but it's also not reasonable or
59 helpful. (Nobody is going to do that.)
60 >
61 > So I am a bit disappointed when they decide behavior that's been an
62 assumed part of the way Unix systems act for over twenty years is something
63 nobody cares about, when then users complain, each user is told
64 individually that they're the only ones who use that feature...all of them.
65 >
66 > I'm not complaining that we have RandR now. I think it's great. One of
67 X11's greatest weaknesses has always been that before now, you couldn't
68 really make any big configuration changes while the X server is running.
69 Now, thanks to RandR, you can do almost anything with your desktop running
70 and active, and you don't even need root access. You can't configure
71 Zaphod type multihead that way, but that's fine -- you couldn't do that
72 before either (nothing gained, nothing lost). But RandR lets you make
73 almost any other desktop geometry change as a regular user without
74 restarting X, and I think that's great.
75 >
76 > RandR (and its predecessor, Xinerama) both assume though that if you're
77 doing multihead, you want one big screen that spans multiple monitors. Nice
78 if that's what you want, but as detailed above, there are good reasons why
79 you might prefer otherwise. For example, on my system, I have a landscape
80 mode main monitor, and a secondary monitor rotated sideways (portrait mode)
81 to the left of it. That means that if I were to adopt some kind of
82 RandR/Xinerama type spanned desktop, I'd have a choice: I could have a
83 desktop that's shaped like some kind of "L", or a desktop that's shaped
84 like a sideways "T". I don't think I really like either of those very
85 much. It's very weird, and many of my apps will probably think so too,
86 especially when I try to fullscreen their windows. Instead of desktops
87 shaped like alphabet soup, why not have separate logical screens? I don't
88 mind that I can't move windows between them. I don't want the desktops to
89 know about eachother anyway. It's simpler that way.
90 >
91 > There are Xinerama "hints" that apps which support Xinerama are supposed
92 to use to help with this, which I think RandR is supposed to respect. The
93 problem with this is the same as the problem with Wayland's expectation
94 that clients will take care of their own network transparency needs: As
95 soon as you leave it to the individual programs, you will have varying
96 levels of support in each one. Some will be paragons of good behavior,
97 others will be useless. You can only make a feature truly available to all
98 when it's provided as an OS feature. There will still be programs that
99 misbehave, but they'll have to try much harder at it.
100 >
101 > I think I'm probably most irked by the claims being made by some
102 developers that X doesn't feature network transparency anyway, thus they're
103 not really taking away anything that we really had. This, in spite of the
104 daily experiences of anyone who's ever done 'ssh -Y' and seen that,
105 shockingly, it actually works pretty well.
106 >
107 > --
108 > + Brent A. Busby + "We've all heard that a million monkeys
109 > + Sr. UNIX Systems Admin + banging on a million typewriters will
110 > + University of Chicago + eventually reproduce the entire works of
111 > + James Franck Institute + Shakespeare. Now, thanks to the Internet,
112 > + Materials Research Ctr + we know this is not true." -Robert Wilensky
113 >
114
115 You make it sound much worse than it actually is.
116
117 These days pretty much everything works well with randr. Sure, there are
118 corner cases, but it's been a while since I hit one :) I see no reason not
119 to use it.
120
121 The -kit fiasco, well... That's a different story.