Skip to content

Remove the swayidle compatibility backend #87

Description

@Staphylococcus

Parent: #21

Phase: v2.0.0 cleanup after native Wayland promotion and the delegated-backend compatibility window.

Blocked by: #86

Goal

Complete the native Wayland migration by removing the delegated swayidle runtime backend and its external dependency, configuration surface, installer wiring, tests, and documentation.

Scope

  • Remove ScreenBackend::Swayidle and swayidle as a current screen_backend / screen.backend choice.
  • Remove delegated process execution and shell command construction from the session runner.
  • Remove swayidle command probing, capability models, and backend detection branches.
  • Remove the sources/desktop/swayidle.rs adapter.
  • Remove mock swayidle executables, fixtures, feature scenarios, and support code after native coverage protects the equivalent product behavior.
  • Remove installer prerequisite checks and package-install guidance for swayidle.
  • Remove obsolete architecture, backend-model, runtime-event, development, testing, and user documentation.
  • Update release-bundle smoke coverage to prove the package has no delegated idle-backend dependency.
  • Give stale explicit screen_backend=swayidle configurations a clear migration or validation error.

Acceptance criteria

  • Non-GNOME Wayland idle/activity behavior is fully handled by the native provider.
  • Runtime and installer paths do not execute, probe, install, or recommend swayidle.
  • Fresh and existing supported configurations resolve without a delegated backend.
  • A stale explicit swayidle value produces an actionable migration message.
  • Native timeout, activity, auxiliary gamepad, restart recovery, provider recovery, and backend-selection coverage replaces the removed mocks.
  • The musl release bundle and smoke tests pass without a swayidle runtime dependency.
  • Documentation no longer describes delegated swayidle as supported.

Out of scope

  • New native Wayland protocol work beyond compatibility fixes needed for removal.
  • Changes to GNOME monitoring.
  • Changes to gamepad activity semantics.
  • Changes to logind lifecycle, screen policy, ownership markers, or restore policy.
  • Broad installer-layout work tracked by Support immutable distro install layouts #24.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions