Wine Staging 11.16 lands with long-awaited AF_UNIX socket support and fresh shader tweaks
Wine Staging 11.16 dropped today, adding AF_UNIX socket support to the compatibility layer for the first time. Maintainer Alistair Leslie-Hughes tracking upstream Wine's development branch at version 11.16.
If you run Windows games or older software on Linux, you've likely waited for Wine Staging to fix something upstream hasn't caught yet. The new release focuses on local inter-process communication. That matters. AF_UNIX sockets handle local IPC efficiently, something native Linux apps use constantly but Windows apps typically rely on named pipes for.

New networking patchset
The headline change is the ws2_32-af_unix patchset. It brings nine patches covering bind, connect, listen, accept, sendto, and recvfrom for Unix domain sockets. This replaces the wintrust-WTHelperGetProvCertFromChain patchset, which had to be pruned to make room.
The diff touches 25 files. You get +897 insertions and −509 deletions for the changes. The server side handles socket file deletion and POSIX error codes, while the ntdll layer reports bound sockets as NTFS reparse points. That's a solid compatibility bridge.
AF_UNIX socket support enables local inter-process communication via Unix domain sockets on Wine. It's critical for applications that use Unix sockets for local service communication. Think D-Bus, Wayland compositors, and database connections like PostgreSQL or Redis.
Shader pipeline updates
It's not just networking. The vkd3d-latest patchset received six update commits. VKD3D translates Direct3D calls to Vulkan. It's the same tech powering DXVK under the hood, just maintained separately for staging-specific fixes.
The new commit 9a673d0b adds HLSL shader codegen improvements. That's 123 lines of code. Another commit, d11d4471, focuses on IR and TPF shader optimizations. If you're pushing frames in older titles, this might shave off a few.
Upstream sync
Leslie-Hughes rebased the staging tree against three upstream Wine commits between v11.15 and v11.16. One of them fixes X11 rendering on offscreen surfaces. Another addresses Kerberos auth buffer handling. The third tweaks kernel-mode transitions before returning to the user-mode emulation dispatcher. It keeps the base solid while staging adds its own layer on top.
Patch inventory
Wine Staging 11.16 ships with 383 unique patch categories. That's roughly 492 individual patches. They cover DirectX, networking, audio, and ActiveX. The dcomp subsystem alone has over 70 patches. The rest of the inventory includes fixes for PulseAudio, GTK theming, and joystick input.
Building from source
Building from source requires applying the patchset on top of a Wine source tree. The script staging/patchinstall.py handles the heavy lifting.
./configure && make depend ./staging/patchinstall.py DESTDIR="/path/to/wine" --all make -j$(nproc)
For most users, the WineHQ downloads handles the heavy lifting across distros and macOS. It installs to /opt/wine-staging on most systems.
The bottom line
The long wait for Unix socket support is over. It's a welcome addition for applications that rely on local service communication. If you're running Wayland compositors or database connections like PostgreSQL locally, this matters. The patchset remains large, but that's how staging works. You get the experimental stuff, and hopefully, it makes its way upstream eventually.
Keep in mind that AF_UNIX support is experimental. The patchset marks the address family before bind operations, but edge cases with path traversal are still being hardened. It's a step forward.
Head here to the Wine Staging GitHub repo for the source.