feat: darkman for auto darkmode

This commit is contained in:
grassblock 2024-12-09 22:11:37 +08:00
parent 970692b7a0
commit 8a4282df81
9 changed files with 94 additions and 0 deletions

View file

@ -44,6 +44,7 @@ chezmoi init https://codeberg.org/grassblock/hyprdots.git && chezmoi merge $FILE
- udiskie
- networkmanager_dmenu
- gradience-git
- darkman
# Themes
- Nordic (gtk2/3)

View file

@ -0,0 +1,6 @@
#!/usr/bin/env bash
# trigger a small, passive popup dialog to inform the user about darkman's activity
# reference https://wiki.archlinux.org/title/Desktop_notifications#Usage_in_programming
notify-send --app-name="darkman" --urgency=low --icon=weather-clear-night "switching to dark mode"

View file

@ -0,0 +1,34 @@
#!/usr/bin/env bash
# Change the global Plasma Theme. On Manjaro you can use "org.manjaro.breath-dark.desktop"
# or you can create your own global Plasma Theme with the "Plasma Look And Feel Explorer".
# Reference: https://userbase.kde.org/Plasma/Create_a_Global_Theme_Package
#
# Since Plasma 5.26 the lookandfeeltool does not work anymore without "faking" the screen.
# Reference: https://bugs.kde.org/show_bug.cgi?id=460643
# Global Theme
lookandfeeltool -platform offscreen --apply "Utterly-Nord"
# Window decoration
# https://askubuntu.com/questions/1183294/switching-plasma-theme-from-the-command-line
kwriteconfig6 --file ~/.config/kwinrc --group org.kde.kdecoration2 --key library org.kde.klassy
kwriteconfig6 --file ~/.config/kwinrc --group org.kde.kdecoration2 --key theme Klassy
# Icon theme
/usr/lib/plasma-changeicons Papirus-Dark
# gtk4 theme
flatpak run --command="gradience-cli" com.github.GradienceTeam.Gradience apply -n "Nord-bluish" --gtk gtk4
# application style
# https://reddit.com/r/kde/comments/f7wemr/how_change_application_style_without_system/
kwriteconfig6 --file kdeglobals --group KDE --key widgetStyle Lightly
# cursorTheme
# https://askubuntu.com/questions/1025338/how-can-i-set-the-cursor-theme-on-kde-plasma-5-programmatically
kwriteconfig6 --file ~/.config/kcminputrc --group Mouse --key cursorTheme Bibata-Modern-Ice
# notify
notify-send --app-name="darkman" --urgency=low --icon=weather-clear "theme switch success. to make them fully take effect, please logout and login again."

View file

@ -0,0 +1,7 @@
#!/usr/bin/env bash
# GTK apps are not affected by the Plasma Global Theme, which only applies to Qt based programs.
# GTK themes can be installed here: Global Theme > Application Style > Configure GNOME/GTK Application Style.
# Reference: https://wiki.archlinux.org/title/Uniform_look_for_Qt_and_GTK_applications
dbus-send --session --dest=org.kde.GtkConfig --type=method_call /GtkConfig org.kde.GtkConfig.setGtkTheme "string:Nordic-bluish-dark"

View file

@ -0,0 +1,2 @@
#!/usr/bin/env bash
kitten themes --config-file-name=themes.conf --reload-in=all "Nord"

View file

@ -0,0 +1,6 @@
#!/usr/bin/env bash
# trigger a small, passive popup dialog to inform the user about darkman's activity
# reference https://wiki.archlinux.org/title/Desktop_notifications#Usage_in_programming
notify-send --app-name="darkman" --urgency=low --icon=weather-clear "switching to light mode"

View file

@ -0,0 +1,29 @@
#!/usr/bin/env bash
# Change the global Plasma Theme. On Manjaro you can use "org.manjaro.breath-light.desktop"
# or you can create your own global Plasma Theme with the "Plasma Look And Feel Explorer".
# Reference: https://userbase.kde.org/Plasma/Create_a_Global_Theme_Package
#
# Since Plasma 5.26 the lookandfeeltool does not work anymore without "faking" the screen.
# Reference: https://bugs.kde.org/show_bug.cgi?id=460643
# Global Theme
lookandfeeltool -platform offscreen --apply "Utterly-Nord-Light"
# Window decoration
# https://askubuntu.com/questions/1183294/switching-plasma-theme-from-the-command-line
kwriteconfig6 --file ~/.config/kwinrc --group org.kde.kdecoration2 --key library org.kde.klassy
kwriteconfig6 --file ~/.config/kwinrc --group org.kde.kdecoration2 --key theme Klassy
# Icon theme
/usr/lib/plasma-changeicons Papirus-Light
# gtk4 theme
flatpak run --command="gradience-cli" com.github.GradienceTeam.Gradience apply -n "Nord Semi-Light" --gtk gtk4
# application style
kwriteconfig6 --file kdeglobals --group KDE --key widgetStyle Lightly
# notify
notify-send --app-name="darkman" --urgency=low --icon=weather-clear "theme switch success. to make them fully take effect, please logout and login again."

View file

@ -0,0 +1,7 @@
#!/usr/bin/env bash
# GTK apps are not affected by the Plasma Global Theme, which only applies to Qt based programs.
# GTK themes can be installed here: Global Theme > Application Style > Configure GNOME/GTK Application Style.
# Reference: https://wiki.archlinux.org/title/Uniform_look_for_Qt_and_GTK_applications
dbus-send --session --dest=org.kde.GtkConfig --type=method_call /GtkConfig org.kde.GtkConfig.setGtkTheme "string:Vimix-light-beryl"

View file

@ -0,0 +1,2 @@
#!/usr/bin/env bash
kitten themes --config-file-name=themes.conf "PaperColor Light"