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-logindPrepareForSleep signals for automatic resume detection - Runs entirely in user space - no root privileges needed
- Uses
zbusblocking API in dedicated thread
Nix Flake Support
- Official
flake.nixfor 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 developAcknowledgments
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.