yserver 1.9.0 adds native Windows support to its from-scratch Rust X11 server
The long, quiet race to replace Xorg from scratch just gained a new contender's home platform. yserver 1.9.0, out today, adds native Windows support, making it the first version of the project to run outside Linux, the BSDs, and macOS.
It never wanted to be Xorg. yserver is a modern X11 server written entirely in Rust, maintained by Jos Dehaes, a Belgian developer working under the name eigerco. His ongoing maintenance of asahi-alarm, the ARM reference image for Asahi Linux on Apple Silicon, pays off directly in yserver's strong M1/M2 support, Mesa's KosmicKrisp driver, and macOS.
Keep in mind that yserver moves fast. This is its eighth minor release in a little over three months. The previous one, 1.8.0, landed just nine days ago on 27 October. Between the two there were 47 commits touching 307 files, pushed by a tight circle of contributors.
Windows, speed, and the first crack at isolation
yserver now runs on Windows 11 in both x86_64 and aarch64 builds, assuming you have a GPU driver with Vulkan 1.3. That's the one hard requirement. Two modes follow: the default is rootless, where each X top-level window becomes its own native window, while --rooted shoves the whole X screen into a single window.
The former suits a few forwarded apps. The latter suits a full desktop. Either way you get a shared clipboard, a settings dialog off the tray icon, DPI awareness, and a bundled xauth.exe. That last piece lets ssh -Y from Windows' own ssh client forward X clients, though -X still fails because yserver ships no SECURITY extension for untrusted cookies.
You download a portable zip attached to each GitHub release. Nothing installs. The C runtime and libraries are statically linked in. From WSL2 you set DISPLAY to the default route and point XAUTHORITY at the generated cookie file. It's about as painless as remote-X gets on this platform.
That alone puts yserver in rare company. Independent X servers that run natively on Windows are few, and for cross-platform testing or remote workflows that's genuinely useful.
The Windows build isn't the only gain, though. The release claims window operations run 5 to 700 times faster on slow machines, computed via clip regions in linear time. The compositor no longer wakes after every request, and small PutImage calls reuse a dedicated upload arena. Less CPU churn in the core loop is exactly what you want.
Compositors presenting their own buffers, like marco, now flip those buffers straight to the screen instead of recompositing them. Real work, gone.
And there's the first step toward client isolation. yserver adds xhost-style access control matching Xorg, plus two staged PRs: an admission and lifecycle layer, then extension-access and dispatch checks. This matters because the design doc openly admits its current limitation, that "a client can read other clients' windows, observe global input, and inspect the clipboard." So this isn't a fix. It's the opening move.
Also worth flagging: the Present extension now keeps moving when a monitor's vblank clock freezes, bounded per CRTC. That holds up stable vsync, fullscreen video, and the occasional Plasma spinner of death — and I've lived through enough of those spinners to appreciate any server that defeats them.
There's also a pile of Xorg-parity fixes. An oversized BIG-REQUESTS Enable no longer hangs the client, a closed font still works for the contexts that use it, shaped windows like xeyes draw correctly, and yserver now reports its own version as the X server vendor. Small corrections. The kind that separate "works in the demo" from "works in yours."
An AI-built server, and why that's the interesting part
You can't cover yserver in 2026 without addressing how it was written. The repo ships an AGENTS.md that reads like instructions for an AI coding agent. It lays out a spec-then-plan workflow, strict CI with warnings as errors, nightly formatting, bisectable merges, and the governing rule: "spec compliance is the goal, but if Xorg deviates from spec... we follow Xorg, because clients are tested for 40+ years on Xorg."
That last line is the project's strongest argument on its own. When yserver hit Lobsters back in June 2026, commenters zeroed in on that very file and noted the docs were "entirely LLM generated." Reactions split between skeptics who dismissed it as "vibecoded" and others who saw it as part of "a new generation of X."
The agent-driven approach is the more fascinating piece than the usual X-vs-Wayland slog. We keep treating AI-assisted coding as a novelty until someone ships a security-relevant, performance-critical systems project with it. yserver is doing exactly that, deliberately. Whether it yields a better X server or just a faster route to a faster crash remains the open question.
For context, yserver isn't alone. It sits alongside Phoenix, a Zig X11 server, the long-running X11Libre fork, and Xenocara, OpenBSD's cleaned-up X.org. On Lobsters and Reddit the usual themes surfaced: people who still want a fresh X (per-monitor DPI, keyboard-driven desktops, classic menu bars, and the fact that CDE, ROX, EDE, Window Maker, and XFCE are all X-based while GNOME and KDE drift to Wayland). One Asahi user called the switch to Wayland-only "unusable."
yserver also sidesteps the multi-screen debate by dropping the old multi-screen model entirely. Rather than separate named displays that can't span windows, it uses one screen across outputs via Xinerama. Experts on the thread confirmed that's the correct modern read, so the "legacy baggage" framing survives, even when phrased to poke people.
As of this release the project has 614 stars and 38 forks. The contributor base stays small, though the core is solid: ariel3259 on KMS, scanout, and Present work, plus SetZero, petrovo-as, erpalma, AprilGrimoire, and Azytar.
Installation is reasonable. just install-local builds to /usr/local from source, then you add yourself to the video,input groups and run starty from a free console. It's on the Arch AUR, maintained by joske himself, with loose RPM, deb, and apk packages attached to GitHub releases. The tested hardware list outclasses most projects' confidence: an AMD Ryzen 9 6900HX, an i9-13900K with RX580 and RX 6800, an Intel i7-7200U iGPU, a GTX 1050 on proprietary drivers, a Snapdragon X1, Apple M1/M2 on Asahi Linux, and virtio-gpu in a VM with Venus passthrough. Desktops and window managers tested include Cinnamon, MATE, XFCE, i3, awesome, openbox, windowmaker, and, notably, classic CDE — a real compatibility milestone.
So what is yserver? A pragmatic stopgap. A lab for "X12." An experiment in AI-authored display software. It's trying to be all three, and 1.9.0 is a concrete, quickly-changed milestone: an independent, from-scratch Rust X11 server now running on Linux, the BSDs, macOS, and Windows, and faster than a few months ago. Not bad for an eighth minor release in under three months.
Head here to grab the 1.9.0 release.
