From 6e793adbc1bff4586ae57d23c825c556a5d270b5 Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Sat, 14 Mar 2026 03:58:57 -0500 Subject: Bundle libxcb-cursor to fix Qt xcb platform plugin crash Qt >= 6.5.0 requires libxcb-cursor0 to load the xcb platform plugin, but it's frequently absent on user systems. All other libxcb libs are skipped (must match host X server ABI), but libxcb-cursor is a pure utility library safe to bundle. Co-Authored-By: Claude Sonnet 4.6 --- docker/build-inner.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'docker/build-inner.sh') diff --git a/docker/build-inner.sh b/docker/build-inner.sh index 66dadf6..fc98c39 100755 --- a/docker/build-inner.sh +++ b/docker/build-inner.sh @@ -181,6 +181,17 @@ done rm -f "${ALL_DEPS}" echo "Dependencies bundled." +# libxcb-cursor is required by Qt's xcb platform plugin (Qt >= 6.5.0) but is +# frequently absent on user systems (package: xcb-cursor0 / libxcb-cursor0). +# All other libxcb libs are skipped above because they must match the host X +# server ABI; libxcb-cursor is a pure utility library with no ABI dependency +# on the X server version, so it's safe to bundle. +for _xcb_cursor in /lib/x86_64-linux-gnu/libxcb-cursor.so* \ + /usr/lib/x86_64-linux-gnu/libxcb-cursor.so*; do + [ -f "${_xcb_cursor}" ] && cp -Lf "${_xcb_cursor}" "${OUT_DIR}/lib/" && \ + echo "Bundled ${_xcb_cursor}" +done + # ── Qt6 platform plugins ── # Prefer aqtinstall location (Docker), then system, then qtpaths6 fallback. QT6_PLUGIN_DIR="" -- cgit v1.3.1