Crash on first input with "Failed to restore previous state: Permission denied (os error 13)"
System:
· GPU: Integrated graphics (Lenovo laptop - precise GPU model unknown, but not RX 6800 XT)
· OS: NixOS 25.11
· Compositor version: 25.10.1 (git hash 50f1a7d)
· Seat manager: seatd (correctly configured, user in seat group)
What happens:
· fht-compositor starts successfully and displays static content
· As soon as I move the mouse or press any key, it crashes
Error log:
```
2026-04-14T18:23:37.565477Z INFO fht_compositor: Starting fht-compositor. version="25.10.1"
2026-04-14T18:23:37.772524Z WARN fht_compositor::backend::udev: Failed to initialize EGL hardware-acceleration err->EglExtensionNotSupported("EGL_WL_bind")
2026-04-14T18:23:37.821940Z INFO fht_compositor::state: Adding new output name="eDP-1"
2026-04-14T18:23:50.254824Z ERROR smithay::backend::drm::device::atomic: Failed to restore previous state. Error: Permission denied (os error 13)
thread 'main' panicked at src/state.rs:1990:30:
internal error: entered unreachable code
```
What I've tried:
· User is in video, render, and seat groups (confirmed)
· seatd is running and working (clients connect/disconnect normally)
· DRM device permissions are correct
· Running with RUST_BACKTRACE=1 produces same error
Expected behavior:
Compositor should not crash on input. The "restore previous state" operation should be skipped on first run since there is no previous state to restore.
Additional note:
Same hardware and seat configuration works perfectly with Hyprland. The issue appears specific to fht-compositor's atomic DRM state restore logic.
2 条评论