iced_wgpu's unix block unconditionally depended on as-raw-xcb-connection,
tiny-xlib and x11rb for a DRI3 device-id fallback in
window/compositor.rs that only fires when wayland can't determine the
GPU. On a Wayland-only build this code path never runs, so the deps
are pure bloat.
Changes:
- Cargo.toml: move the 3 x11 crates to optional + new feature `x11`
(not in default — wayland-only is the yoda target; users who need
X11 opt in).
- window.rs: cfg-gate `mod x11;` on feature = "x11"
- window/compositor.rs: cfg-gate `use super::x11::get_x11_device_ids`
+ the or_else fallback on feature = "x11" (wrapped in a let-binding
so the non-x11 branch compiles cleanly).
Result: iced_wgpu no longer pulls any x11 crate when built without
the feature.