top | item 40155553

(no title)

happens | 1 year ago

What's annoying to me is that when we talk about Wayland, the things it's capable of that X11 can't do are always left out. X has no fractional dpi scaling, and no per-monitor scaling, so it's a non-starter for both my desktop and my laptop setup.

X will never have those things, while Wayland is consistently improving. Yes it has rough edges, yes the security model might be over-engineered, but it's perfectly serviceable nowadays from my point of view.

discuss

order

goosedragons|1 year ago

X HAS those things. Ubuntu's version of Gnome for example has supported fractional DPI scaling and per monitor scaling on X11 since I think 20.04. Upstream Gnome wasn't interested because that's what Wayland is supposed to do. Xrandr has made this possible for years with some setup.

Wayland is frustrating at basic crap. Just this past month I had issues sharing my screen, getting programs to use my PATH correctly and setting options. It's insanely stupid that SO much has moved over DE that how you do things between Gnome, KDE, etc. are now all radically different. It's actually worse than X11 in so many ways.

Hendrikto|1 year ago

> X HAS those things. Ubuntu's version of Gnome for example has supported fractional DPI scaling and per monitor scaling on X11 since I think 20.04. […] Xrandr has made this possible for years with some setup.

Via some ugly hacks that degrade performance and make things look blurry. It‘s not the same.

znpy|1 year ago

> What's annoying to me is that when we talk about Wayland, the things it's capable of that X11 can't do are always left out.

I think it's fair, considering we also leave out stuff that X11 can do that wayland can't do (and will likely never be able to do).

Example: network transparency. I still occasionally have to save the day by doing `ssh -X` and run some stuff on a remote host (but having a window be displayed on a local X11 server).

And I already foresee some idiot coming here and commenting that "you're not supposed to do that" to which i pre-reply: not all companies are FAANGS that can rework and rebuild everything that's sub-optimal. Many (most?) of us have to do the best with what we've got.

orangeboats|1 year ago

Wayland does have network transparency, it's called waypipe.

But caveats apply: applications which use the GPU are network translucent. You'd need VNC or other forms of streaming for that.

LorenDB|1 year ago

X also has awful touchscreen support. When you use a touchscreen, you are just dragging the cursor around with your finger. In Wayland, touch support is what you'd normally expect (e.g. dragging scrolls pages instead of selecting text).

jeroenhd|1 year ago

X has decent touchscreen support, but it sucks at dealing with multitouch gestures, especially on touchpads rather than touch screens.

itvision|1 year ago

That's configurable in X and I've never had this issue.

Vilian|1 year ago

exactly, you can go back and forth in firefox using your touchpad and i thing that very practical

RedShift1|1 year ago

But what if we just kept working on X11 instead starting from scratch?

orangeboats|1 year ago

The thing is, many things in X11 are "hardcoded" to the protocol.

For example, there is only one coordinate space in the X11 world. This meant that 1 pixel is always N "real" pixels (typically N=1).

But nowadays we have this thing called HiDPI, where 1 pixel can mean 1.5 real pixels on one screen (150% scaling), 2 real pixels on the second (200% scaling), and 1 real pixel on the third (100% scaling). We need mixed DPI and hence multiple coordinate systems, but you will break existing X11 programs if you tried to add that to the protocol, and at this point if you force your way through the problem it'll just be Wayland.

Existing X11-compatible systems "fix" this by:

1. assuming N=scale factor, thus upscaling all programs. Everything becomes a blurry mess (see XWayland).

2. assuming N=1, and let the programs upscale themselves. The problem is older apps (e.g. GTK2) don't understand HiDPI and you get a GUI for ants.

vkazanov|1 year ago

But that's the point. It's a sunk cost fallacy.

The assumptions that X11 uses are incompatible with what personal computing turned into. Drivers, security, the networking part... All of it is just not how things work these days.

It is a major project, it is hard to push through but it's there already, with most of the work complete by now.

And as a programer I must say that underlying Wayland libraries are vastly better than X11 ever was.

Hendrikto|1 year ago

Go ahead.

The people who actually work on it decided that was not the way forward, and chose another approach.

If you are qualified to work on it yourself, and you disagree, you can step up to maintain and improve X11.

biorach|1 year ago

Nobody wants to keep working on X11, its design is fundamentally mismatched with the needs of a modern graphics stack and it contains a ton of legacy code and layers that make development difficult.

Check the lwn.net archives for some articles that explain this in detail.

paranoidxprod|1 year ago

I think the problem is nobody actually wants to work on x11.

wwalexander|1 year ago

The people actually working on X11 decided it was worth starting from scratch.

coffeeblack|1 year ago

We can do both at the same time.

Are you working on X11 though?