https://bugs.kde.org/show_bug.cgi?id=522686
Bug ID: 522686
Summary: FreeCAD snap fails to start with Failed to create
create wl_display
Classification: KDE Neon
Product: neon
Version First unspecified
Reported In:
Platform: Ubuntu
OS: Linux
Status: REPORTED
Severity: crash
Priority: NOR
Component: Snaps
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Target Milestone: ---
DESCRIPTION
After a recent update to kf6-core24 (revision 58), Qt-based FreeCAD running as
a Snap package fails to start under Wayland.
The application fails during startup with:
Failed to create wl_display (No such file or directory)
Investigation shows that the Snap runtime sets WAYLAND_DISPLAY=unset, and the
desktop launch script treats this value as a valid Wayland display name instead
of clearing it. This leads to an invalid socket path being used for Wayland
detection.
Reverting kf6-core24 restores normal functionality.
STEPS TO REPRODUCE
Install a Snap application using the kf6-core24 runtime (e.g. FreeCAD)
Run the application in a Wayland session (GNOME on Ubuntu 24.04)
Observe startup failure with Wayland display error
OBSERVED RESULT
Application fails to start with:
Failed to create wl_display (No such file or directory)
Inside the Snap environment:
WAYLAND_DISPLAY=unset
XDG_RUNTIME_DIR=/run/user/1000/snap.freecad
Qt fails to initialize the Wayland platform and aborts startup.
EXPECTED RESULT
WAYLAND_DISPLAY should either:
be unset when no valid Wayland socket is available, or
contain a valid value such as wayland-0
The application should correctly connect to the active Wayland session and
launch normally.
SOFTWARE/OS VERSIONS
Operating System: Ubuntu 24.04 LTS (GNOME on Wayland)
KDE Plasma Version: Not applicable (GNOME session)
KDE Frameworks Version: 6 (via kf6-core24 snap runtime)
Qt Version: Qt 6 (bundled with Snap runtime)
Snap versions:
snapd 2.76
kf6-core24 6.11.1-6.27.0-6.7.0-26.04.2 (rev 58, affected)
kernel 6.17.0-35-generic
ADDITIONAL INFORMATION
Workaround:
sudo snap revert kf6-core24
This immediately restores Wayland functionality.
Key diagnostic finding:
WAYLAND_DISPLAY=unset
The desktop-launch script logic incorrectly treats "unset" as a valid value:
if [ -n "$WAYLAND_DISPLAY" ]; then
wdisplay="$WAYLAND_DISPLAY"
fi
This causes Wayland socket resolution to fail, leading to Qt startup failure.
--
You are receiving this mail because:
You are watching all bug changes.