github psi4j/sunsetr v0.8.0

latest releases: v0.10.0, v0.9.0
2 months ago

sunsetr v0.8.0

This release brings systemd-compliant sleep/resume detection via D-Bus, eliminating the need for root scripts, plus Nix flake support and display hotplug detection from community contributors.

New Features

D-Bus Sleep/Resume Detection

  • Replaced system-sleep scripts with systemd-recommended D-Bus approach
  • Monitors systemd-logind PrepareForSleep signals for automatic resume detection
  • Runs entirely in user space - no root privileges needed
  • Uses zbus blocking API in dedicated thread

Nix Flake Support

  • Official flake.nix for reproducible builds
  • Development shell with all required tools
  • Automatic version detection from Cargo.toml
  • Full integration with Nix ecosystem

Display Hotplug Detection

  • Automatically detects monitor connection/disconnection events
  • Reapplies color temperature when displays change
  • Works across all supported Wayland compositors
  • Hyprland native support coming soon

Breaking Changes

  • System-sleep scripts are no longer installed or needed
  • Sleep/resume detection now requires D-Bus (standard on systemd systems)

For Package Maintainers

  • The system-sleep/ directory has been removed from the source
  • No need to install sleep hooks - D-Bus handles everything
  • Existing sleep hooks will be automatically cleaned up during upgrade

For Nix users:

# Run directly from GitHub
nix run github:psi4j/sunsetr

# Install using nix profile
nix profile install github:psi4j/sunsetr

# For development (from cloned repo)
nix develop

Acknowledgments

Special thanks to:

  • @scottmckendry for contributing Nix flake support and display hotplug detection
  • @jficz for feedback on improving our sleep/resume implementation
  • All contributors and users who provided feedback and testing

Full Changelog

For a complete list of changes, see the full changelog.

Don't miss a new sunsetr release

NewReleases is sending notifications on new releases.