Skip to content

KDE follow-ups: install-focus-kwin fix, aarch64 uinput, docs - #34

Merged
jonocodes merged 2 commits into
mainfrom
kde-followups
Jul 19, 2026
Merged

jonocodes merged 2 commits into
mainfrom
kde-followups

Conversation

@jonocodes

Copy link
Copy Markdown
Owner

Follow-ups from testing the KDE Plasma Wayland focus backend (#31) on real hardware (Plasma 6.5.5, aarch64/Asahi). The merged backend works; these close the gaps that only show up on a live KDE box.

Changes

  • install-focus-kwin first-run fix — the recipe used kpackagetool6 -u (upgrade), which fails on a machine that's never had the script installed (Plugin deckd-focus is not installed). Now installs with -i, falling back to -u.
  • aarch64 key injection — browser buttons were a silent no-op on aarch64: evdev-binary is x86_64-wheel-only and plain evdev is sdist-only. Added scripts/install_evdev_source.sh (source-builds python-evdev, locating kernel headers via the compiler for evdev's build_ecodes since Nix hides them from the default path), wired it into setup-linux on non-x86_64, and marked the uinput extra by platform_machine.
  • Docs — a distro-neutral Running on KDE Plasma Wayland walkthrough (tools check → deps → /dev/uinput access → focus script → verify), plus refreshed the stale aarch64 note and the uinput-permissions section (setfacl quick-test + pointer to the NixOS module that already handles it).

Verification (real hardware, Plasma 6.5.5 Wayland)

  • Focus auto-switch confirmed: windowActivated fires on real focus changes (Konsole → System Monitor → Firefox), layout follows.
  • Key injection confirmed end-to-end: injected text landed in the focused window through deckd's real UinputSink (once evdev was built and /dev/uinput writable).
  • Full suite: 151 passed.

Relates to #31 (closing separately — all acceptance criteria met + verified).

🤖 Generated with Claude Code

Real-hardware testing of the KDE Plasma Wayland focus backend (#31) on
Plasma 6.5.5 / aarch64 surfaced a few gaps beyond the merged backend:

- install-focus-kwin used `kpackagetool6 -u`, which fails on a first-ever
  install ("Plugin deckd-focus is not installed"). Install with `-i`,
  falling back to `-u` when a copy already exists.

- Key injection (browser buttons) was a silent no-op on aarch64: the
  `uinput` extra pins evdev-binary, which ships x86_64 wheels only, and
  plain `evdev` is sdist-only. Add scripts/install_evdev_source.sh to
  source-build python-evdev (locating kernel headers via the compiler for
  evdev's build_ecodes, which Nix hides from the default path), wire it
  into setup-linux on non-x86_64, and mark the `uinput` extra by
  platform_machine (evdev-binary on x86_64, evdev elsewhere).

- Docs: add a distro-neutral "Running on KDE Plasma Wayland" walkthrough
  (tools check, deps, /dev/uinput access, focus script, verify); refresh
  the stale aarch64 note and the uinput-permissions section (setfacl
  quick-test + the NixOS module that already handles it).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jonocodes jonocodes mentioned this pull request Jul 19, 2026
8 tasks
@jonocodes
jonocodes merged commit 957da72 into main Jul 19, 2026
2 checks passed
@jonocodes
jonocodes deleted the kde-followups branch August 4, 2026 03:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant