Live data from Hacker News

Phoenix: A modern X server written from scratch in Zig

git.dec05eba.com

311–320 of 462 posts

Re: Phoenix: A modern X server written from scratch in Zig

#311
post #209

Earlier quoted context omitted.

If the issues are trivially resolved, why did the authors of X decided to abandon X? If the issues could be resolved, why were they not resolved? I am using wayland for more than 5 years now, it just works. X did not. Xscreensaver/lock screens on Qubes are still broken. What features is Wayland the protocol missing to allow supporting Xfce?

> If the issues are trivially resolved, why did the authors of X decided to abandon X? They convinced their employers Wayland would be better? > Xscreensaver/lock screens on Qubes are still broken. Most people aren't nation-state-level targets and don't worry about security to that degree. But they do like global hotkeys.

What employers?

Also, this level of security is wanted even on a "I don't want my sister to look at my stuff" level, no need to go nation-state level.

Re: Phoenix: A modern X server written from scratch in Zig

#312
post #199

Earlier quoted context omitted.

This car runs KDE Plasma's KWin, along with many other Mercedes-Benz models currently launching: https://youtu.be/wo5As8et1G8 https://youtu.be/pqJ-9SUPFwY Notably this deployment doesn't use any of the old-gen automotive Wayland cruft like ivi-shell though. It's pretty much the desktop stack now.

I miss the 1990s Benz 190E I used to drive: the only electronics in sight were the tape deck/radio. Even the door locks ran off a vacuum system. I will never buy a car that runs an X-windows server.

It's a Wayland compositor, not an X-windows server!

Re: Phoenix: A modern X server written from scratch in Zig

#313
post #253

Earlier quoted context omitted.

Well there is XWayland then.

Depends why you need it. XWayland is worthless for a11y.

Arguably, there is no sane a11y on GNU/Linux anywhere.

iOS/Mac/Android is on completely other level.

Re: Phoenix: A modern X server written from scratch in Zig

#314

Earlier quoted context omitted.

From my perspective X just got to the point where it just works for me few years ago and Wayland is just introducing more issues than it solves (to be clear it solves no current issue for me, only one that I think might be better for me is handling different refresh rate displays and maybe fractional scaling... and that could probably be done within X11) Like, why simple "copy the screen" got suddenly so complicated?…

Whatever the issues with X11, it was properly designed. Wayland is the kind of software that adds features with nobody looking at the consequences. Who knows what they will break next version.

From all the criticisms leveled at Wayland, this is definitely the strangest I've ever heard.

I really cannot thing of any existing functionality ever broken by a new release of wayland-protocols, neither by a plain bug nor by a bad interaction. No doubt someone else will be able to recall an example, but it's really not a common thing.

This is partially because the governance model and community mindset is the opposite of what you describe. Inclusion of new protocols in the stable release requires existing, proven implementations and consensus across multiple implementors, making it a high bar. New proposals run a gauntlet where pretty much everyone is looking at the consequences in detail.

In fact a more common criticism of Wayland is that the focus on high quality and the consensus requirement are too strict and have slowed down filling in feature gaps users need filled faster. This argument I think can be successfully defended against - mainly, that it helps avoid the mess X11 became over time -, but at least has some basic merit in reality and is an avatar for genuine user pain.

As for X11, as someone who had to implement a lot of X11 specs over the years, I can tell you that their provenance between X11 itself as well as ICCCM and EMWH had plenty of super dumb ideas and cruft and inconsistencies from lack of foresight and eventually datedness. You don't want to see the towering stack of hacks and heuristics we used to have to ship to make X11 behave somewhat consistently and sane :)

In short, with all due respect, but I think you really don't know what you're talking about. We really should resist this type of narrative reality distortion field on an engineering forum.

Re: Phoenix: A modern X server written from scratch in Zig

#315
post #312

Earlier quoted context omitted.

I miss the 1990s Benz 190E I used to drive: the only electronics in sight were the tape deck/radio. Even the door locks ran off a vacuum system. I will never buy a car that runs an X-windows server.

It's a Wayland compositor, not an X-windows server!

and even if it wasn't Wayland, it would be an X Window server.

Re: Phoenix: A modern X server written from scratch in Zig

#316

Earlier quoted context omitted.

Per-display DPI settings. No snooping on input without permission. Awareness of the lock screen (the compositor can know that the lock screen is active and provide alternate keybindings instead of having to configure the lock application as well). Locking is not blocked by context menus being open. I ran XMonad for 15 years, but recently switched to river and am loving it.

> Per-display DPI settings fwiw, Xorg already had this, since you can set the DPI for each display through RandR/xrandr. In both X11 and Wayland it's up to the toolkit to actually detect the setting and rasterise accordingly. Wayland actually went backwards in this respect by using "integer scales" (eg, 1, 2, 3) instead of fine-grained DPIs (eg, 96, 192, 288), so using a scale of 1.5 would result in downscale blur (t…

You can have different dpi and refresh rate per monitor in X, but you cannot do it while having a shared desktop across them.

Re: Phoenix: A modern X server written from scratch in Zig

#317

The name Phoenix is overused. There is an Elixir framework called Phoenix. I think I also heard of other projects with that same name before. It's a bit like the name 'Apollo'; besides the moon landing project, I know like 2 dev projects called that and also there is a sales SaaS platform with that name. Surely people should run a search first before choosing a name...

I can second the Apollo thing. I think it might just be a natural name to give something, because when I was a kid I was working on a voice assistant thing instead of touching grass (never finished it) and called it Apollo. This was probably my first project.

Re: Phoenix: A modern X server written from scratch in Zig

#318
post #265

Earlier quoted context omitted.

Well, you are not really forced to write a compositor these days as there are libraries that do all the heavy lifting for you. Check out Louvre for example. Or Smithay if you like Rust. And if you want a bit more depth, there is wlroots of course (or the hyprland version). It is not really any harder than writing an X11 WM.

Yeah, no I have my own wm in Ruby that is fewer lines of code than a typical Wayland Hello World, and that does what I want. I have no reason to want to throw that away for something that doesn't offer me any features I care about, and removes features I do. Such as the ability to just restart my wm if I make a change to it without affecting my current session at all. Unless you can show me a solution that lets me re…

It's called an extension. What's the point of mandating a (bad) IPC API?

Re: Phoenix: A modern X server written from scratch in Zig

#319

Earlier quoted context omitted.

I said build on top of wlroots, not DWL. And I only brought it up as an example of a small Wayland compositor/window manager because the poster I was replying to wants to build their own anyway. DWL is more interesting as a learning exercise than something to use.

The -IMO- important part of that quote is "NOT HAVE THE TIME OR CAPACITY TO KEEP UP WITH wlroots CHANGES". X11 is backwards compatible, you do not have to "keep up" with its changes. wlroots seemingly isn't. This is a significant issue when it comes to relying on most 3rd party libraries.

> X11 is backwards compatible, you do not have to "keep up" with its changes.

That's certainly one way to say "no longer developed".

Re: Phoenix: A modern X server written from scratch in Zig

#320
post #58

I finally caved and switched to Wayland 6 months ago or so. Things just work so much more smoothly.

What are the things specifically that work better? because most of the case people dont have issues because of the x11 (the protocol), but because of how the xorg server works
Post reply on HN