Live data from Hacker News

The death watch for the X Window System has probably started

utcc.utoronto.ca

341–350 of 518 posts

Re: The death watch for the X Window System has probably started

#341

I can't say it any better than JWZ did over 15 years ago. This is the result of the Cascade of Attention-Deficit Teenagers model and is why Linux will not approach Windows or OSX in usability. Cannot link to his site: JWZ dot org /doc/cadt.html A complete teardown and rebuild of the whole ecosystem (because X succccckkks) is fun! Making something backwards-compatible, or standardized, or polished that "last 90%" so i…

Windows and OS X are well-known for constantly deprecating APIs and replacing them with new ones. So clearly the best way to compete with them is to insist on dogmatic adherence to 30-40-year old APIs that are known to be horrible matches for how modern software stacks (including competitor OSes) actually work.

Windows supports core APIs for longer than Linux, or in fact, X11 exists.

It's actually possible (and was demonstrated) to upgrade from 1985 Windows 1.01 all the way up to 32bit Windows 10 and run windows 1.01 application without changes.

Arguably backward compatibility is the true reason how MS got to dominate OS market - you had good chance your software was just going to work on new OS version.

Re: The death watch for the X Window System has probably started

#342

Earlier quoted context omitted.

The design assumptions that went into making X were made before the modern computer or Linux existed. Modern X is a Frankensteinian collection fixes upon fixes and unmaintained code.

You didn't actually answer the OP's question. There is nothing Wayland does that could not have been done via the X11 extension mechanism. X has already been reinvented several times --- few things use the core protocol nowadays, after all! For example, XRender for text is now universal. The thing that's different about Wayland is that for reasons that nobody ever explains clearly at a technical level, this time, a f…

Apple evaluated X11 when they were just starting work on Mac OS X.

This comment by Mike Paquette (designer and author of Quartz!) explains why it was better to dump X11 and start over:

"> they don't even use X at all!

What Apple is providing is an Apple-original window system that is graphics model agnostic, as well as a vector drawing system that maps very well to PDF, which is a sort of PostScript without the non-graphical operators. This is packaged under the name 'Quartz' for easy reference by Marketing types.

The window system is designed to support both buffered (like an offscreen PixMap) and unbuffered windows, and is graphics model agnostic, working equally well with QuickDraw, OpenGL, the Quartz drawing engine, X11, and third party solutions, and managing window geometry for the Classic, Carbon, and Cocoa environments. The server portion is a hybridization of screen arbiter and compositor models (and if that's all Geek to you, don't worry about it).

The Quartz drawing engine supports drawing primitives similar to the graphics primitives that might be found in the DPSClient single-operator primitives library for X and NeXTSTEP. There are no math and flow control primitives, as these can be done more efficiently in the native compiled code. There are no DPS or PS wrappers, as this optimization for server-side graphics is not needed in the Quartz client-side graphics model.

The operations provide imaging and path construction and filling operations as well as some interesting other bits that map well into the direction that 2D drawing is headed. (See Longhorn, or the X raster projects.) The drawing engine can output to rasters (like a window!), as well as PS and PDF streams to feed printers. The Mac OS X printing system takes advantage of the capabilities of Quartz to support all sorts of printers, and make the life of printer driver developers much, much easier.

Things we'd need to add/extend in X Window software (protocol+server+manager+fonts+...):

1) Extend font server and services to vend outlines and antialiased masks, support more font types, handle font subsetting. 2) Extend drawing primitives to include PS-like path operations. 3) Add dithering and phase controls. 4) Add ColorSync support for drawing and imaging operations, display calibration 5) Add broad alpha channel support and Porter-Duff compositing, both for drawing in a window and for interactions between windows. 6) Add support for general affine transforms of windows 7) Add support for mesh-warps of windows 8) Make sure that OpenGL and special video playback hardware support is integrated, and behaves well with all above changes. 9) We find that we typically stream 200 Mb/sec of commands and textures for interactive OpenGL use, so transport efficiency could be an issue.

So, yes, it looks like we can use X for Quartz. All we need do is define extensions for and upgrade the font server, add dithering with phase controls to the X marking engine, add a transparency model to X imaging with Porter-Duff compositing support, make sure GLX gets in, upgrade the window buffering to include transparency, mesh warps, and really good resampling, and maybe augment the transport layer a bit.

Ummm... There doesn't appear to be much code left from the original X server in the drawing path or windowing machinery, and it doesn't appear that apps relying on these extensions can work with any other X server. Just what did we gain from this?

Oh, yeah. My mom can run an xterm session on her desktop now without downloading the Apple X11 package, a shareware X server or buying a software package.

Been there, evaluated that."

https://developers.slashdot.org/comments.pl?sid=75257&cid=67...

Re: The death watch for the X Window System has probably started

#343
post #305
post #296

Earlier quoted context omitted.

Of course the possibility of Red Hat being ruined has been on everyone's minds since the acquisition. But things akin to the Wayland push happened before that, so I wouldn't attribute that to post-acquisition. I won't call it IBM, so long as Red Hat retains some autonomy to exercise their know-how, and distinct identity (not kill some of the golden goose for which they paid serious gold), and so long as most of the t…

In the short time I worked at Red Hat (as part of the CoreOS acquisition), several of the redhatters in Raleigh mentioned how much they enjoyed working at Red Hat and how much they hated previous jobs at IBM. This was before the IBM purchase was announced. I predict a mass exodus as golden handcuffs come off and employees start to chafe under new management.

Where do you think they'll go? Canonical? Or will their man-hours be lost to the FOSS community?

Re: The death watch for the X Window System has probably started

#344
post #236

Earlier quoted context omitted.

> As for the people complaining about Wayland possibly missing some of X's features, remember that it takes time for something to mature, to accrete features and fixes, and Wayland hasn't had that time yet. It has been a decade, precisely how long does it need to catch up? I ask because from what I can tell it is still missing features that were standard in Windows Vista in 2008, when that OS switched to DWM and WDDM…

Most developers have been sitting on the sidelines until Wayland is on by default. I would expect to see the long tail of features added after that.

A lot of that is due to lack of those features.

It's really not worth it when you are facing huge downside in usability on things that should have been accounted for in core protocol(-set), but a decade later you need to face aloha-quality, unstable warring incompatible proposals.

Re: The death watch for the X Window System has probably started

#345

I would use Wayland, but the most actively-developed tiling window manager, sway, doesn't work with the NVIDIA graphics card I own. And come to think of it, isn't that a really weird problem to have? On X, the compositor (responsible for actually drawing all the windows on the screen) and the window manager (responsible for deciding how to arrange the windows and what their title bars/borders should look like) can be…

Maybe a dumb question but why do people want to use Wayland if it's that horrible?

X.org is more horrible and also impossible to maintain. It would have been given the boot over a decade ago except for the fact that AMD/then ATI and Nvidia only supported X and video drivers were incorporated into X directly. There was a big push starting in ~2008 where AMD started open sourcing their drivers. Infrastructure started developing in the kernel where it makes sense instead of in X.

Now we've reached the point where there are almost two parallel stacks - linux's graphics infrastructure; and Nvidia's. The developers don't have any patience for the one holdout against the new system. It is unfortunate for the people buying Nvidia cards because they are now starting to be labeled as 'using the legacy systems'. Presumably there is some reason why they have no choice in their purchases, but the cost of maintaining systems to work with closed source drivers appears to be too high. My views here aren't exactly current - I've stayed a long way away from Nvidia since ~2009 - but they are probably sill somewhat on target.

It is likely that a better designed alternative to Wayland will crop up. It is much easier to compete with than X - there are no drivers that only support Wayland.

Re: The death watch for the X Window System has probably started

#346
post #173

Maybe the death watch for the traditional Linux desktop has also started... Linux distributions have had a decade long slide in their usability and polish. Much of this has been due to an abandonment of its historical UNIX roots in favour of half-baked "modern" replacements. Being a UNIX replacement with a full X11 server and all the rest was what made it compelling and practical in the first place. However, it's com…

I come from an environment where we have a reasonable number of Linux workstations; approaching 2000 in the company I work for, and more in the wider field.

> Being a UNIX replacement with a full X11 server and all the rest was what made it compelling and practical in the first place.

Yes, here as well. We have big apps, small apps, legacy apps, remote apps, all doing real work.

For the enthusiast user base, who mainly live within the distribution's ecosystem, this sort of churn in the platform is exciting and interesting, or feels like progress. The platform is the end result.

For us, the platform is just that -- a platform on which sits a lot of vendor applications and custom tooling assembled over decades with its idiosyncrasies carefully accommodated.

This churn isn't good. Anything short of 100% compatibility is going to prompt a risky re-evaluation of what's out there on the market -- risky because Windows is in the strongest position, not Linux.

Linux is already in a weakened position than it once was as a workstation OS. My colleagues will be enticed by a Windows platform which has an emerging Linux compatibility; and a tried-and-tested build of most of the vendor-driven GUI applications and GPU drivers, too.

Re: The death watch for the X Window System has probably started

#347

My take home from this thread now with a few weeks to reflect is that if we want a real window manager that is maintained, then it will have to be a community effort. This will be hard because training an involvement with x11 has been left entirely to Red Hat too long. It will be a lot of work and money to transfer knowledge from the few who do know it. With this in mind, are there other projects that are at risk due…

> How can we prevent this in the future? Software is dependent on hardware. If the hardware changes, as it did since X11 was invented, the software stack has to change too. You cannot prevent progress in technology. Xorg is in a better state now that it has ever been. Therefore it makes no sense to consider Red Hat some villain that adopted Xorg and ruined it. And had Red Hat not been there, Wayland would still have…

Nothing prevented X11 frkm adapting with hardware. In fact, commercial implementations did just that. It's XFree86 that was running pretty much on original framebuffer-oriented code dump.

Also, if you actually run on server that was more directed towards modern hardware, like Xsgi, GTK3 will simply flip out because it has heavy assumptions that pretty much break.

Re: The death watch for the X Window System has probably started

#348

Earlier quoted context omitted.

You didn't actually answer the OP's question. There is nothing Wayland does that could not have been done via the X11 extension mechanism. X has already been reinvented several times --- few things use the core protocol nowadays, after all! For example, XRender for text is now universal. The thing that's different about Wayland is that for reasons that nobody ever explains clearly at a technical level, this time, a f…

Apple evaluated X11 when they were just starting work on Mac OS X. This comment by Mike Paquette (designer and author of Quartz!) explains why it was better to dump X11 and start over: "> they don't even use X at all! What Apple is providing is an Apple-original window system that is graphics model agnostic, as well as a vector drawing system that maps very well to PDF, which is a sort of PostScript without the non-g…

That comment is my point. Those things that the Apple guy mentions having to add to X were in fact added to X. They're called XRender. There's no reason we couldn't have added more extensions.

Nobody has given me a straight answer for why Wayland-style buffer management couldn't have been an X11 extension. Nobody.

Re: The death watch for the X Window System has probably started

#349
post #338

Earlier quoted context omitted.

I don't understand the ojection to dbus in particular. Are there not multiple implementations of the dbus spec?

Haven't seen a case of dbus daemon replacement, only I think one or two client libraries, and one is niche and the other is so niche I think less than 10 people ever used it.

AKAIK kdbus re-implemented that half of it, albeit in the kernel not as a daemon. I've not been given the impression that there is anything preventing additional implementations.

The strongest technical argument against dbus I've yet heard is that it's too slow for file transfers or something... well fine then, don't use it for that. But for plenty of other stuff it seems to work just fine. People complain about the performance but not once have I ever opened up htop and thought to myself "Gee wiz, dbus sure is breaking my balls today."

From my perspective, most of the hate against dbus seems to be fallout from the systemd feud, to which dbus is tangentially related (if systemd sucks, it's not because of dbus.) Maybe with a few cat-v/suckless fanatics thrown in on the sidelines..

Re: The death watch for the X Window System has probably started

#350
post #242

Earlier quoted context omitted.

I recommend you simply to switch to AMD if you are using Linux and want a high end GPU. That's the only way for you to get a usable desktop with modern features. Or wait until Intel will release a new GPU next year, it should work well with upstream too. Nvidia has no interest in making their cards play well with Linux, so just avoid them completely to keep your sanity and don't waste your time trying to work around…

> I recommend you simply to switch to AMD if you are using Linux and want a high end GPU. That's the only way for you to get a usable desktop with modern features. This is just not true. Gnome with Wayland is one of the most popular and modern DEs and it supports Nvidia's proprietary drivers today.

OP explicitly mentioned Sway (based on wlroots), not Gnome (mutter). Besides, even Gnome can't handle XWayland with Nvidia today. And if you play games, especially in Wine, that's still a requirement.

While Gnome developers bent under Nvidia's pressure, other compositor developers aren't interested in accommodating exceptions for blobs and wasting their resources on that.

TL;DR: just ditch Nvidia and forget about all their horrors. They really have no place in Linux ecosystem today, because of their refusal to upstream their drivers and because of preventing Nouveau from doing it for them.

Post reply on HN