refactor: move backend options into backend_config section

- Add BackendConfig map[string]any to Config struct
- Deprecate top-level output_path (backward compatible via EffectiveBackendConfig())
- NewHyprland now accepts opts map[string]any instead of raw outputPath
- Factory signature unified to func(*slog.Logger, map[string]any) for all backends
- Update README with backend_config docs and fix Sway skeleton signature
- Update example.yaml to show backend_config instead of output_path
This commit is contained in:
Maksim Totmin
2026-06-22 20:49:02 +07:00
parent 15691c0918
commit cc1137608c
5 changed files with 74 additions and 13 deletions
+6 -4
View File
@@ -15,10 +15,12 @@ poll_interval: 5s
# Whether to restore the portable layout when the daemon shuts down.
restore_on_exit: true
# Optional: override where the generated Hyprland monitor config is written.
# Supports ~ for home directory expansion.
# Defaults to ~/.config/hypr/monitors.conf.
# output_path: ~/.config/hypr/custom-monitors.conf
# Backend-specific options. Keys depend on the selected backend.
# Hyprland supports:
# output_path — path to the generated monitor config file
# (default: ~/.config/hypr/monitors.conf)
# backend_config:
# output_path: ~/.config/hypr/custom-monitors.conf
# External monitors that trigger docked mode.
# Plain name: matches the connector name (e.g. DP-1, HDMI-A-1).