Wallpaper management via awww with cycling and theming support.
Quick Start
use WallpaperService;
use PathBuf;
# async
Directory Cycling
# use ;
# use PathBuf;
# use Duration;
# async
Configuration
| Method | Effect |
|---|---|
transition(TransitionConfig) |
Animation when changing wallpapers |
color_extractor(ColorExtractorConfig) |
Tool and parameters for extracting dominant colors |
theming_monitor(Option<String>) |
Which monitor drives color extraction |
shared_cycle(bool) |
Sync cycling across monitors in shuffle mode |
engine_active(bool) |
Toggle awww rendering (state tracking continues) |
use ;
# async
Reactive Properties
All fields are Property<T>:
.get()- Current value snapshot.watch()- Stream yielding on changes
Service Fields
| Field | Type | Description |
|---|---|---|
cycling |
Option<CyclingConfig> |
Active cycling state |
monitors |
HashMap<String, MonitorState> |
Per-monitor wallpaper and fit mode |
transition |
[TransitionConfig] |
Animation settings |
Control Methods
set_wallpaper()- Apply wallpaper to one or all monitorsstart_cycling()/stop_cycling()- Directory cyclingadvance_cycle()/rewind_cycle()- Manual navigationset_fit_mode()- Change scaling mode per monitor or globallyset_transition()- Configure animations
D-Bus Interface
When with_daemon() is enabled, the service registers on the session bus.
- Service:
com.wayle.Wallpaper1 - Path:
/com/wayle/Wallpaper - Interface:
com.wayle.Wallpaper1
See dbus.md for the full interface specification.