3b941f4d1f8496ec104d5a2bac665d8157eeb98f
The mirror hardcoded :0. That held under LightDM, which gave the user session :0. GDM does not — it keeps :0 for its own greeter and starts the user's Xorg with -displayfd, letting the number be picked at runtime; on this machine the session lands on :1. So after migrating to Ubuntu Desktop the mirror failed on every attempt with "Can't open display :0", with a healthy session sitting one number over. Resolve by socket ownership: /tmp/.X11-unix/X<n> is owned by whoever runs that X server, so the socket owned by us is the owner's session and anything else is the greeter's. Falls back to the lowest socket (a root-run Xorg, as LightDM had) and finally to 0, so it is never worse than the constant it replaces. The display is now threaded through rather than read from a module constant, so getFramebufferWidth measures the display actually being mirrored and both log lines name it. Found while verifying the XFCE-to-GNOME migration on this machine — the session was up and x11 with the cookie in the GDM path, and only the display number was wrong. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Description
No description provided
51 MiB
Languages
TypeScript
84.6%
CSS
6.7%
Shell
5%
JavaScript
3.7%