Mir 2.26.0 adds early Rust input platform, major ABI changes
Mir 2.26.0 is shipping an early Rust input platform and ABI bumps, a clear sign Canonical is moving Rust into core Linux graphics plumbing.

Mir 2.26.0 is doing more than ticking off a release number. The new version shows Canonical pushing Rust deeper into the plumbing that sits under Wayland shells, with an early Rust-based input platform taking shape inside Mir, the compositor library that powers Linux desktops, IoT devices, and embedded products. In plain English, an input platform is the part that turns keyboard, mouse, touchscreen, and tablet events into something the compositor can actually use. When that layer changes, downstream systems feel it fast.
That matters because Mir is not a toy project bolted onto the side of the stack. Its own documentation frames it as a system-level component for graphical environments, built to be efficient, flexible, and secure. In 2.26.0, the Rust input platform was explicitly not the default and not quite ready yet, but it was far enough along to show the direction of travel. Canonical is not treating Rust as a one-off experiment here. It is laying groundwork for a core subsystem where memory safety and clearer ownership models can reduce the kind of bugs that are painful to chase in compositor code.
The release also carried a hard compatibility signal: mircommon ABI moved to 12 and mirserver ABI moved to 67. That is the kind of bump that tells you this is a meaningful feature release, not a quiet maintenance pass. Alongside the Rust work, Mir added evdev-rs touch-event support, fixed missing initial events, improved input-event reporting, cleaned up the device module, tightened pointer-event handling, and refactored event processing for clarity. It also advanced a Rust Wayland frontend, which suggests the Rust effort is spreading across the stack instead of staying confined to one isolated subsystem.
Mir 2.26.0 also picked up protocol work that broadens its compositor story. The release added support for ext_input_triggers at MVP level, implemented ext-input-triggers, expanded the protocol XML with more detail on token validity and availability, and partially implemented ext_image_copy_capture_v1 cursor sessions with cursor-image delivery. Outside Rust, the release fixed a bad xcb destroy-window call, XCB reply leaks, fullscreen failures in Google Chrome, an unsafe fatal-signal handler, and a DRM_CLIENT_CAP_ATOMIC ioctl bug. Mir’s March 25 office-hours agenda had already listed wayland-rs frontend progress and the evdev-rs input platform, which shows this work was active in public before the release landed. The message is clear: Rust is moving from application code into the Linux graphics and input stack, where maintainability and safety can pay off every day.
Know something we missed? Have a correction or additional information?
Submit a Tip

