Package: squeekboard
Version: 1.43.1-2
Severity: important
Tags: patch
rust-xkbcommon is transitioning to 0.9.0 (part of the xkbcommon/pipewire
Wayland stack update currently in debcargo-conf MR !1327). squeekboard
build-depends on librust-xkbcommon-0.8-dev and will need to move to
librust-xkbcommon-0.9-dev once that MR merges, since Debian does not
keep both xkbcommon 0.8 and 0.9 co-installable.
squeekboard's only use of the xkbcommon Rust API is in its test module
(src/keyboard.rs), calling xkb::Context::new, xkb::Keymap::new_from_string,
xkb::State::new and state.key_get_one_sym. None of that surface changed
between 0.8 and 0.9, so no source port is needed, only the version bump.
Verified by widening the Cargo.toml constraint to xkbcommon 0.9 and
compiling the lib target (cargo check --lib --tests) against xkbcommon
0.9.0 from crates.io: it builds clean, with no errors touching xkbcommon
or any of its consumers. (The two bin targets, rs and test_layout, fail
to resolve their own crate::* module paths under a bare cargo invocation
outside the meson build; that is pre-existing and unrelated to this bump.)
Attached debdiff bumps:
- Cargo.toml: xkbcommon 0.8 -> 0.9 (new patch,
debian/patches/0005-Bump-xkbcommon-dependency-to-0.9.patch)
- debian/control: librust-xkbcommon-0.8-dev -> librust-xkbcommon-0.9-dev
Please hold off uploading until librust-xkbcommon-0.9-dev actually lands
in unstable (debcargo-conf !1327 is still open review).
-- System Information:
Debian Release: trixie/sid
diff -Nru '--exclude=.pc' orig/squeekboard-1.43.1/Cargo.toml new/squeekboard-1.43.1/Cargo.toml
--- orig/squeekboard-1.43.1/Cargo.toml 2026-09-05 14:28:41.000000000 -0500
+++ new/squeekboard-1.43.1/Cargo.toml 2026-09-05 14:28:59.051385039 -0500
@@ -34,7 +34,7 @@
zbus = { version = "5", features = ["blocking"] }
zvariant = "5"
zvariant_derive = "5"
-xkbcommon = { version = "0.8", features = ["wayland"] }
+xkbcommon = { version = "0.9", features = ["wayland"] }
[dependencies.cairo-rs]
version = "0.18"
diff -Nru '--exclude=.pc' orig/squeekboard-1.43.1/debian/control new/squeekboard-1.43.1/debian/control
--- orig/squeekboard-1.43.1/debian/control 2025-11-06 04:37:19.000000000 -0600
+++ new/squeekboard-1.43.1/debian/control 2026-09-05 14:28:59.051385039 -0500
@@ -22,7 +22,7 @@
librust-serde-derive-1-dev,
librust-serde-yaml-0.9-dev,
librust-thread-local-dev,
- librust-xkbcommon-0.8-dev,
+ librust-xkbcommon-0.9-dev,
librust-zbus-5-dev,
librust-zvariant-5-dev,
librust-zvariant-derive-5-dev,
diff -Nru '--exclude=.pc' orig/squeekboard-1.43.1/debian/patches/0005-Bump-xkbcommon-dependency-to-0.9.patch new/squeekboard-1.43.1/debian/patches/0005-Bump-xkbcommon-dependency-to-0.9.patch
--- orig/squeekboard-1.43.1/debian/patches/0005-Bump-xkbcommon-dependency-to-0.9.patch 1969-12-31 18:00:00.000000000 -0600
+++ new/squeekboard-1.43.1/debian/patches/0005-Bump-xkbcommon-dependency-to-0.9.patch 2026-09-05 14:29:08.275613042 -0500
@@ -0,0 +1,26 @@
+From: Greg Lamberson <[email protected]>
+Date: Fri, 5 Sep 2026 00:00:00 +0000
+Subject: Bump xkbcommon dependency to 0.9
+
+Debian's rust-xkbcommon is transitioning to 0.9.0. Widen the Cargo.toml
+constraint accordingly; no source changes are needed since squeekboard's
+only use of the xkbcommon Rust API (in the test module, keyboard.rs) is
+unaffected by the 0.8 to 0.9 change (verified by compiling the lib target
+against xkbcommon 0.9 from crates.io).
+---
+ Cargo.toml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Cargo.toml b/Cargo.toml
+index 7f0cb31..b4ae32a 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -34,7 +34,7 @@ clap = { version = "4.4", features=["std", "cargo", "derive"] }
+ zbus = { version = "5", features = ["blocking"] }
+ zvariant = "5"
+ zvariant_derive = "5"
+-xkbcommon = { version = "0.8", features = ["wayland"] }
++xkbcommon = { version = "0.9", features = ["wayland"] }
+
+ [dependencies.cairo-rs]
+ version = "0.18"
diff -Nru '--exclude=.pc' orig/squeekboard-1.43.1/debian/patches/series new/squeekboard-1.43.1/debian/patches/series
--- orig/squeekboard-1.43.1/debian/patches/series 2025-11-06 04:37:19.000000000 -0600
+++ new/squeekboard-1.43.1/debian/patches/series 2026-09-05 14:29:08.275613042 -0500
@@ -2,3 +2,4 @@
0002-treewide-Upgrade-zbus-to-5.x.patch
0003-data-Add-systemd-unit-file.patch
0004-src-data-parsing-fix-build-with-recent-Rust.patch
+0005-Bump-xkbcommon-dependency-to-0.9.patch