diff --git a/.config/hypr/hyprland/env.conf b/.config/hypr/hyprland/env.conf index d168b9310..4d1fa8f7d 100644 --- a/.config/hypr/hyprland/env.conf +++ b/.config/hypr/hyprland/env.conf @@ -10,7 +10,7 @@ env = INPUT_METHOD, fcitx # ############ Themes ############# env = QT_QPA_PLATFORM, wayland -env = QT_QPA_PLATFORMTHEME, qt6ct +env = QT_QPA_PLATFORMTHEME, kde # env = QT_STYLE_OVERRIDE,kvantum # env = WLR_NO_HARDWARE_CURSORS, 1 diff --git a/.config/matugen/config.toml b/.config/matugen/config.toml index 1a7f41b1d..dcfb61aac 100644 --- a/.config/matugen/config.toml +++ b/.config/matugen/config.toml @@ -41,3 +41,8 @@ output_path = '~/.config/ags/assets/themes/sourceviewtheme-light.xml' input_path = '~/.config/matugen/templates/ags/_material.scss' output_path = '~/.local/state/ags/scss/_material.scss' post_hook = 'pidof gjs && agsv1 run-js "handleStyles(false)"' + +[templates.kde_colors] +input_path = '~/.config/matugen/templates/kde/color.txt' +output_path = '~/.local/state/quickshell/user/generated/color.txt' +post_hook = '~/.config/matugen/templates/kde/kde-material-you-colors-wrapper.sh' diff --git a/.config/matugen/templates/kde/color.txt b/.config/matugen/templates/kde/color.txt new file mode 100644 index 000000000..35142904f --- /dev/null +++ b/.config/matugen/templates/kde/color.txt @@ -0,0 +1 @@ +{{colors.source_color.default.hex}} \ No newline at end of file diff --git a/.config/matugen/templates/kde/config.conf b/.config/matugen/templates/kde/config.conf new file mode 100644 index 000000000..1880d7662 --- /dev/null +++ b/.config/matugen/templates/kde/config.conf @@ -0,0 +1,74 @@ +[CUSTOM] +# INSTRUCTIONS +# Run kde-material-you-colors with no arguments from terminal +# to debug your configuration changing in real time. + +# Monitor to get wallpaper from +# For me main is 0 but second one is 6, play with this to find yours +# Default is 0 +monitor = 0 + +# File containing absolute path of an image (Takes precedence over automatic wallpaper detection) +# Commented by default +file = /home/end/.local/state/quickshell/user/wallpaper.txt + +# List of 7 space separated colors (hex or rgb) to be used for text in pywal/konsole/KSyntaxHighlighting instead of wallpaper ones +# Accepted values are hex e.g #ff0000 and rgb e.g 255,0,0 colors (rgb is converted to hex) +# Commented by default +# Example using catppuccin color scheme: +custom_colors_list = #ED8796 #A6DA95 #EED49F #8AADF4 #F5BDE6 #8BD5CA #f5a97f + +# Enable Light mode +# Accepted values are True or False +# Commented by default to follow System Color Setting (Material You Light/Dark only) +# NOTE: +# Will fallback to dark mode if not defined here or enabled in Settings +#light = False + +# Alternative color mode (default is 0), some images return more than one color, this will use either the matched or last color +# Default is 0 +ncolor = 0 + +# Light scheme icons theme +iconslight = OneUI-light + +# Dark scheme icons theme +iconsdark = OneUI-dark + +# Use pywal to theme other programs using Material You colors +pywal=False + +# The amount of perceptible color for backgrounds in dark mode +# A number between 0 and 4.0 (limited for accessibility purposes) +# Defaults to 1 if not set +#light_blend_multiplier = 1.0 + +# The amount of perceptible color for backgrounds in dark mode +# A number between 0 and 4.0 (limited for accessibility purposes) +# Defaults to 1 if not set +#dark_blend_multiplier = 1.0 + +# A script/command that will be executed on start or wallpaper/dark/light/settings change +# example below using https://github.com/vlevit/notify-send.sh to send a desktop notification: +#on_change_hook = notify-send.sh "kde-material-you-colors" "This is a test" -t 2000 + +# Scheme Variant +# Changes between Material You scheme variants (0-8) +# 0 = Content +# 1 = Expressive +# 2 = Fidelity +# 3 = Monochrome +# 4 = Neutral +# 5 = TonalSpot +# 6 = Vibrant +# 7 = Rainbow +# 8 = FruitSalad +# Default is 5 +scheme_variant = 5 + +# Colorfulness +chroma_multiplier = 1 + +# Brightness +# An integer between 0.5 and 1.5 +tone_multiplier = 1 diff --git a/.config/matugen/templates/kde/kde-material-you-colors-wrapper.sh b/.config/matugen/templates/kde/kde-material-you-colors-wrapper.sh new file mode 100755 index 000000000..02856d603 --- /dev/null +++ b/.config/matugen/templates/kde/kde-material-you-colors-wrapper.sh @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}" + +color=$(tr -d '\n' < "$XDG_STATE_HOME/quickshell/user/generated/color.txt") + +current_mode=$(gsettings get org.gnome.desktop.interface color-scheme 2>/dev/null | tr -d "'") +if [[ "$current_mode" == "prefer-dark" ]]; then + mode_flag="-d" +else + mode_flag="-l" +fi + +kde-material-you-colors "$mode_flag" --color "$color" diff --git a/README.md b/README.md index 9ec57df92..38a00e61a 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ - **Assumption**: You are already using the AGS illogical-impulse - **Install Qt packages** (idk which are actually needed so this is everything I have): `qt5-base qt5-declarative qt5-svg qt5-translations qt5-wayland qt6-5compat qt6-base qt6-declarative qt6-imageformats qt6-multimedia qt6-positioning qt6-quicktimeline qt6-sensors qt6-svg qt6-tools qt6-translations qt6-virtualkeyboard qt6-wayland syntax-highlighting` -- **Install quickshell and more stuff**: `yay -S quickshell matugen-bin grimblast wtype` +- **Install quickshell and more stuff**: `yay -S quickshell matugen-bin grimblast wtype kde-material-you-colors` - **Copy** `.config/quickshell` folder and hyprland config files in `.config/hypr/hyprland/` (backing up is your responsibility) (or you can create a new user) - **Run quickshell** with `qs` and see how things are - it's not finished, but **feedback is very welcome** - We currently have bar, right sidebar, search/overview