Live data from Hacker News

Phoenix: A modern X server written from scratch in Zig

git.dec05eba.com

131–140 of 462 posts

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

#131
post #76

This is the kind of initiative I’d prefer to see from X preservationists. Great job, I hope it succeeds. I prefer Wayland, but there’s still a place in the world for X; it just needs new dev teams to shoulder the burden.

I disagree. The choices in the Linux ecosystem lead to unnecessary fragmentation and development/packaging nightmares. I say let X11 die, bury it, and never let it rise again. Then we can all focus on making just one display server as good as possible.

> The choices in the Linux ecosystem lead to unnecessary fragmentation and development/packaging nightmares.

You cannot possibly use this as an argument in Wayland's favor. X11 sucked because it baked everything, including multiple outdated kitchen sinks, into a single Xorg monolith. Wayland sucks because it factors out everything, including really important features, into optional extensions, ensuring that anything more interesting than "draw pixels to a window" will always be different on every single compositor.

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

#132
post #76

This is the kind of initiative I’d prefer to see from X preservationists. Great job, I hope it succeeds. I prefer Wayland, but there’s still a place in the world for X; it just needs new dev teams to shoulder the burden.

I disagree. The choices in the Linux ecosystem lead to unnecessary fragmentation and development/packaging nightmares. I say let X11 die, bury it, and never let it rise again. Then we can all focus on making just one display server as good as possible.

Which one? The Gnome Wayland, the KDE Wayland, the xroots wayland, Weston, or one of the others? Each one is an independent implementation of a Wayland compositor, with a differing, incompatible set of extensions.

X11 was a single, pretty janky implementation. Wayland is the worst of both worlds -- it's cleaned up a little, but it's still kinda janky. In exchange for a little bit of cleanup, mainly around bitmap fonts, it's no longer a unified protocol.

And to top it off -- it kept the worst part of the X11 protocol, the XKB extension, but got rid of input handling entirely, which means that every platform needs to reach for platform specific code to implement reading from the mouse and keyboard.

Yay.

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

#134
post #21
post #11

Pretty interesting approach to make an X server that is essentially "Wayland-like" (merging display server/compositor by default, isolated apps by default, no remoting of GLX, dropping legacy protocol features to the point of breaking compat with the core protocol, etc.). Not sure who this is for, but by itself it looks like a fairly reasonable set of choices.

For people who absolutely have to have X11 this looks like a better plan than XLibre.

I’m not sure this satisfies X11 needs without remote display capability.

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

#136
post #58

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

Some things do but for some details I'm amazed what I need to do to make it work, like going to sleep with multiple displays. Maybe it's a sway thing and I'm not complaining at all, crafting a solid minimal configuration has its charms.

I'm just thinking why did it take me so long to do the switch. I still keep X around, but not sure how long. Like keeping vim around after switching to nvim few years back..

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

#137
post #73

Earlier quoted context omitted.

I don't really understand what is supposedly missing in Wayland for productivity users? At work I have been using gnome with the wayland backend for years at this point and I can't really figure out anything that's missing.

Accessibility is apparently a big problem with wayland. E.g., the most popular / ?only? app that supports hardware eye trackers on Linux does not work with wayland, and states that it likely never will as wayland does not provide what it needs to add support (it is also the most popular app for voice/noise control). Even basic things like screen readers are apparently still an issue with wayland. Without a strong acc…

I don't know about other DE, but at least with Plasma there is a "overscan" option to compensate for hidden borders.

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

#138
post #15

Earlier quoted context omitted.

I thought for a long time that rather than move to Wayland, we could come up with a tidied-up version of X. Sounds like a good and useful project, I hope it progresses.

It was always an option, but "just" needed someone to dedicate all their time to it and pull in a group of long term maintainers. The real question is what will happen with the project in 2 years and will it be stable for day to day use.

The fact that you can "assume Vulkan exists" helps a lot (both hardware and software renderers exist). Do remember--Wayland predates Vulkan by almost a full decade.

In addition, you can offload OpenGL compatibility to Zink (again leaning into Vulkan).

> pull in a group of long term maintainers.

"Use new cool language" seems to be a prerequisite for this nowadays ...

At least Zig is very compatible with C.

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

#139
post #84
post #76

Earlier quoted context omitted.

I disagree. The choices in the Linux ecosystem lead to unnecessary fragmentation and development/packaging nightmares. I say let X11 die, bury it, and never let it rise again. Then we can all focus on making just one display server as good as possible.

This is the worst argument ever. The choices in the Linux community is what's made it the best OS in the world today.

Linux on the desktop only took of because Ubuntu, with mixed results and a lot of controversy, decided to standardize and polish the experience for "normies".

The distribution sprawl I largely see as a detriment to the ecosystem.

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

#140

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...

Phoenix in the Elixir ecosystem is probably one of the less confusing name uses. Under that stack you get such clear library framework names as: bandit, cowboy, thousand island, and ranch. As well as mint and finch. When not riffing off of previous project names with off axis alternate names, it’s always some sort of ExThing sharing space with at least 3 other varieties of the same (e.g. ThingEx, Thingx, and ExaThing), and you're left guessing which one may have emerged as a conventional standard.
Post reply on HN