end-4 / dots-hyprland

Modern, feature-rich and accessible desktop configuration.
https://end-4.github.io/dots-hyprland-wiki/en/
GNU General Public License v3.0
3.16k stars 204 forks source link

darkman integration #466

Closed moetayuko closed 1 month ago

moetayuko commented 2 months ago

fixes #447, much easier than I expected thanks to existing infra

needs #459 which introduced geoclue as a hard dependency of gammastep

users can edit .config/darkman/config.yaml to disable auto transition

moetayuko commented 1 month ago

@end-4 any comments on this feature? feel free to close if not worth adding.

end-4 commented 1 month ago

ugh... i'm hesitant to add this since there's already blue light filter and one can always change the brightness if needed

if we add this feature i think i can just give the dark mode toggle an "Auto" mode and make a new user option in case someone wants to enable/disable it by default without digging in hyprland config thank you for your work

moetayuko commented 1 month ago

darkman has two major advantages:

  1. retrieve geolocation-based transition time from geoclue (like gammastep does)
  2. run custom user scripts. e.g., I have additional scripts to switch gtk/qt/kvantum themes between light/dark variants

anyway, whoever needs this can cherry-pick in their fork.

clsty commented 1 month ago

I actually kinda like this PR... @end-4 maybe reconsider this one? That autorun-theme-changing-custom-script feature sounds great. Of course it's your decision.

end-4 commented 1 month ago

I consider darkman to be kind of a scripty extra thing I don't need.

I will not add it to my hyprland execs, but I can accept the AGS part to support it. So I'll make darkMode global and have that darkman set command run if it's available on the system. Then you can configure darkman if you wish, and I don't have to add an extra daemon I don't care about.

moetayuko commented 1 month ago

So I'll make darkMode global and have that darkman set command run if it's available on the system. Then you can configure darkman if you wish, and I don't have to add an extra daemon I don't care about.

makes sense, thanks