Skip to content

Repository files navigation

runtime

Security Pillar Verification Badge
Platform Standard secured by studio2201
Credential Defense snip
Supply Chain Surface vigil
Post-Quantum Cryptography aegis
Build Provenance & SLSA proven
Repository Governance boneyard

The engine — idle daemon, sandboxed plugin host, D-Bus API, and the saver ABI every plugin builds against. Part of IdleScreen — modular Wayland screensavers for Linux.

Path Role
idle-daemon/ The service: idle monitoring, presentation sessions, config, D-Bus API, plugin orchestration
idle-runner/ Sandboxed plugin host: manifest + signature verification, capability gates, watchdog, cell/GPU raster
idle-api/ Plugin ABI: savers link against this (param(), palette/system-info callbacks)
crates/wayland-idle ext-idle-notify idle detection
crates/wayland-present zwlr_layer_shell presentation, output topology, overlays
crates/idle-dbus D-Bus client helpers + systemd service lifecycle
crates/idle-ipc Daemon↔runner wire protocol
crates/idle-upscaler CPU frame upscaler
crates/idle-err Shared error plumbing (Result, Context, bail!/ensure!, {:#} chaining)
crates/idle-log Shared logging (RUST_LOG filter, error!..trace!, journald mirroring)

Install

Ships with the idlescreen product package. On its own:

idlescreen install runtime

The daemon runs as idle-daemon under systemctl --user.

Commands

Driven through the idlescreen router:

idlescreen doctor --fix   # diagnose + repair the daemon
idlescreen preview storm  # fullscreen preview
idlescreen update         # upgrade packages
idlescreen tui            # runtime configuration

Features & Architecture

  • Wayland Presentation Lifecycle: Clean layer-surface dismissal via explicit hide() and teardown/recreation of stale overlays on monitor hotplug/reconfiguration.
  • CPU & GPU Resource Budgets: Sandboxed plugin cgroup v2 throttle enforcement with evaluation window period scaling to prevent false trips during long sessions.
  • Configuration Hierarchy: Discovers configurations in ~/.config/idlescreen/config.yaml, ~/.config/idle/config.yaml, and system defaults in /etc/xdg/idlescreen/config.yaml.

License

Apache-2.0 · © 2026 IdleScreen

About

IdleScreen runtime — idle daemon, plugin ABI, sandboxed host, D-Bus API

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Used by

Contributors

Languages