diff --git a/.config/ags/i18n/locales/Default.json b/.config/ags/i18n/locales/Default.json index b9c15503f..4b1debd6c 100644 --- a/.config/ags/i18n/locales/Default.json +++ b/.config/ags/i18n/locales/Default.json @@ -145,7 +145,6 @@ "Options": "Options", "Dark Mode": "Dark Mode", "Ya should go to sleep!": "Ya should go to sleep!", - "Use Gradience": "Use Gradience", "Theme GTK apps using accent color\n(drawback: dark/light mode switching requires restart)": "Theme GTK apps using accent color\n(drawback: dark/light mode switching requires restart)", "Scheme styles": "Scheme styles", "Vibrant": "Vibrant", diff --git a/.config/ags/i18n/locales/fa_IR.json b/.config/ags/i18n/locales/fa_IR.json index 17a4e40b0..1ff44b553 100644 --- a/.config/ags/i18n/locales/fa_IR.json +++ b/.config/ags/i18n/locales/fa_IR.json @@ -134,7 +134,6 @@ "Options": "گزینه‌ها", "Dark Mode": "حالت تاریک", "Ya should go to sleep!": "پاشو برو بخواب!", - "Use Gradience": "بکارگیری رنگ شیب دار(Gradience)", "Theme GTK apps using accent color\n(drawback: dark/light mode switching requires restart)": "برنامه‌های GTK را با بکارگیری رنگ تأکید پوسته گذاری کنید\n(معایب: تغییر حالت تاریک/روشن نیاز به باز راه‌اندازی دارد)", "Scheme styles": "سبک‌های طرح", "Vibrant": "زنده", diff --git a/.config/ags/i18n/locales/fr_FR.json b/.config/ags/i18n/locales/fr_FR.json index 9e42757ab..4c9a8e80f 100644 --- a/.config/ags/i18n/locales/fr_FR.json +++ b/.config/ags/i18n/locales/fr_FR.json @@ -134,7 +134,6 @@ "Options": "Options", "Dark Mode": "Mode sombre", "Ya should go to sleep!": "Tu devrais aller dormir !", - "Use Gradience": "Utiliser Gradience", "Theme GTK apps using accent color\n(drawback: dark/light mode switching requires restart)": "Thématiser les applications GTK avec la couleur d'accent\n(inconvénient : le changement de mode sombre/clair nécessite un redémarrage)", "Scheme styles": "Styles de schéma", "Vibrant": "Vibrant", diff --git a/.config/ags/i18n/locales/it_IT.json b/.config/ags/i18n/locales/it_IT.json index 79e8277ea..b572d1b92 100644 --- a/.config/ags/i18n/locales/it_IT.json +++ b/.config/ags/i18n/locales/it_IT.json @@ -134,7 +134,6 @@ "Options": "Opzioni", "Dark Mode": "Modalità scura", "Ya should go to sleep!": "Dovresti andare a dormire!", - "Use Gradience": "Usa Gradience", "Theme GTK apps using accent color\n(drawback: dark/light mode switching requires restart)": "Tema le app GTK usando il colore di accento\n(svantaggio: il passaggio tra modalità scura/chiara richiede un riavvio)", "Scheme styles": "Stili dello schema", "Vibrant": "Vivace", diff --git a/.config/ags/i18n/locales/zh_CN.json b/.config/ags/i18n/locales/zh_CN.json index 5fadb11cb..906090be5 100644 --- a/.config/ags/i18n/locales/zh_CN.json +++ b/.config/ags/i18n/locales/zh_CN.json @@ -134,7 +134,6 @@ "Options": "选项", "Dark Mode": "深色模式", "Ya should go to sleep!": "你应该去睡觉!", - "Use Gradience": "GTK 主题", "Theme GTK apps using accent color\n(drawback: dark/light mode switching requires restart)": "使用强调色对 GTK 应用程序进行主题化\n(缺点:深色/浅色模式切换需要重启)", "Scheme styles": "样式方案", "Vibrant": "鲜艳", diff --git a/.config/ags/modules/indicators/colorscheme.js b/.config/ags/modules/indicators/colorscheme.js index db6501e07..f43a41fa4 100644 --- a/.config/ags/modules/indicators/colorscheme.js +++ b/.config/ags/modules/indicators/colorscheme.js @@ -142,34 +142,6 @@ const ColorSchemeSettings = () => Widget.Box({ .catch(print); }, }), - Widget.Box({ - tooltipText: getString('Theme GTK apps using accent color\n(drawback: dark/light mode switching requires restart)'), - className: 'txt spacing-h-5 configtoggle-box', - children: [ - MaterialIcon('imagesearch_roller', 'norm'), - Widget.Label({ - className: 'txt txt-small', - label: getString('Use Gradience'), - }), - Widget.Box({ hexpand: true }), - ConfigMulipleSelection({ - hpack: 'center', - vpack: 'center', - optionsArr: [ - [{ name: 'Off', value: 0 }, { name: 'On', value: 1 }], - ], - initIndex: [-1, -1], - onChange: (value, name) => { - const ADWAITA_BLUE = "#3584E4"; - if (value) execAsync([`bash`, `-c`, `${App.configDir}/scripts/color_generation/switchcolor.sh - --yes-gradience`, `&`]) - .catch(print); - else execAsync([`bash`, `-c`, `${App.configDir}/scripts/color_generation/switchcolor.sh "${ADWAITA_BLUE}" --no-gradience`, `&`]) - .catch(print); - - }, - }), - ] - }), ] }), Widget.Box({ diff --git a/.config/ags/modules/overview/miscfunctions.js b/.config/ags/modules/overview/miscfunctions.js index 18abdd2c4..f7a289347 100644 --- a/.config/ags/modules/overview/miscfunctions.js +++ b/.config/ags/modules/overview/miscfunctions.js @@ -44,19 +44,6 @@ export function launchCustomCommand(command) { .then(execAsync(['bash', '-c', `${App.configDir}/scripts/color_generation/switchcolor.sh`])) .catch(print); } - else if (args[0] == '>adw' || args[0] == '>adwaita') { - const ADWAITA_BLUE = "#3584E4"; - execAsync([`bash`, `-c`, `${App.configDir}/scripts/color_generation/switchcolor.sh "${ADWAITA_BLUE}" --no-gradience`, `&`]) - .catch(print); - } - else if (args[0] == '>grad' || args[0] == '>gradience') { - execAsync([`bash`, `-c`, `${App.configDir}/scripts/color_generation/switchcolor.sh - --yes-gradience`, `&`]) - .catch(print); - } - else if (args[0] == '>nograd' || args[0] == '>nogradience') { - execAsync([`bash`, `-c`, `${App.configDir}/scripts/color_generation/switchcolor.sh - --no-gradience`, `&`]) - .catch(print); - } else if (args[0] == '>material') { // Use material colors execAsync([`bash`, `-c`, `mkdir -p ${GLib.get_user_state_dir()}/ags/user && echo "material" > ${GLib.get_user_state_dir()}/ags/user/colorbackend.txt`]).catch(print) .then(execAsync(['bash', '-c', `${App.configDir}/scripts/color_generation/switchwall.sh --noswitch`]).catch(print)) diff --git a/.config/ags/scripts/color_generation/applycolor.sh b/.config/ags/scripts/color_generation/applycolor.sh index 9bf56d392..144ac882b 100755 --- a/.config/ags/scripts/color_generation/applycolor.sh +++ b/.config/ags/scripts/color_generation/applycolor.sh @@ -151,30 +151,25 @@ apply_lightdark() { fi } -apply_gtk() { # Using gradience-cli - usegradience=$(sed -n '4p' "$STATE_DIR/user/colormode.txt") - if [[ "$usegradience" = "nogradience" ]]; then - rm "$XDG_CONFIG_HOME/gtk-3.0/gtk.css" - rm "$XDG_CONFIG_HOME/gtk-4.0/gtk.css" +apply_gtk() { + # Check if template exists + if [ ! -f "scripts/templates/gtk/gtk-colors.css" ]; then + echo "Template file not found for gtk colors. Skipping that." return fi - # Copy template - mkdir -p "$CACHE_DIR"/user/generated/gradience - cp "scripts/templates/gradience/preset.json" "$CACHE_DIR"/user/generated/gradience/preset.json - + mkdir -p "$CACHE_DIR"/user/generated/gtk/ + cp "scripts/templates/gtk/gtk-colors.css" "$CACHE_DIR"/user/generated/gtk/gtk-colors.css # Apply colors for i in "${!colorlist[@]}"; do - sed -i "s/{{ ${colorlist[$i]} }}/${colorvalues[$i]}/g" "$CACHE_DIR"/user/generated/gradience/preset.json + sed -i "s/{{ ${colorlist[$i]} }}/#${colorvalues[$i]#\#}/g" "$CACHE_DIR"/user/generated/gtk/gtk-colors.css done - mkdir -p "$XDG_CONFIG_HOME/presets" # create gradience presets folder - source $(eval echo $ILLOGICAL_IMPULSE_VIRTUAL_ENV)/bin/activate - gradience-cli apply -p "$CACHE_DIR"/user/generated/gradience/preset.json --gtk both - deactivate + # Apply to both gtk3 and gtk4 + cp "$CACHE_DIR"/user/generated/gtk/gtk-colors.css "$XDG_CONFIG_HOME"/gtk-3.0/gtk.css + cp "$CACHE_DIR"/user/generated/gtk/gtk-colors.css "$XDG_CONFIG_HOME"/gtk-4.0/gtk.css - # And set GTK theme manually as Gradience defaults to light adw-gtk3 - # (which is unreadable when broken when you use dark mode) + # And set the right variant of adw gtk3 lightdark=$(get_light_dark) if [ "$lightdark" = "light" ]; then gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3' diff --git a/.config/ags/scripts/color_generation/colorgen.sh b/.config/ags/scripts/color_generation/colorgen.sh index 40c445b9f..3b44dbbc4 100755 --- a/.config/ags/scripts/color_generation/colorgen.sh +++ b/.config/ags/scripts/color_generation/colorgen.sh @@ -24,11 +24,6 @@ if [ ! -f $colormodefile ]; then echo "dark" > $colormodefile echo "opaque" >> $colormodefile echo "vibrant" >> $colormodefile -elif [[ $(wc -l < $colormodefile) -ne 4 || $(wc -w < $colormodefile) -ne 4 ]]; then - echo "dark" > $colormodefile - echo "opaque" >> $colormodefile - echo "vibrant" >> $colormodefile - echo "yesgradience" >> $colormodefile else lightdark=$(sed -n '1p' $colormodefile) transparency=$(sed -n '2p' $colormodefile) diff --git a/.config/ags/scripts/color_generation/switchcolor.sh b/.config/ags/scripts/color_generation/switchcolor.sh index 183efc7c9..172774b55 100755 --- a/.config/ags/scripts/color_generation/switchcolor.sh +++ b/.config/ags/scripts/color_generation/switchcolor.sh @@ -19,21 +19,5 @@ fi sed -i "1s/.*/$color/" "$STATE_DIR/user/color.txt" -# Use Gradience? -colormodelines=$(wc -l "$COLORMODE_FILE_DIR" | awk '{print $1}' ) -if [ "$2" == "--no-gradience" ]; then - if [ "$colormodelines" == "3" ]; then - echo 'nogradience' >> "$COLORMODE_FILE_DIR" - else - sed -i "4s/.*/nogradience/" "$COLORMODE_FILE_DIR" - fi -elif [ "$2" == "--yes-gradience" ]; then - if [ "$colormodelines" == "3" ]; then - echo 'yesgradience' >> "$COLORMODE_FILE_DIR" - else - sed -i "4s/.*/yesgradience/" "$COLORMODE_FILE_DIR" - fi -fi - # Generate colors for ags n stuff "$CONFIG_DIR"/scripts/color_generation/colorgen.sh "${color}" --apply diff --git a/.config/ags/scripts/templates/gtk/gtk-colors.css b/.config/ags/scripts/templates/gtk/gtk-colors.css new file mode 100644 index 000000000..b8ed1a4c7 --- /dev/null +++ b/.config/ags/scripts/templates/gtk/gtk-colors.css @@ -0,0 +1,21 @@ +/* +* GTK Colors +*/ + +@define-color accent_color {{ $primary }}; +@define-color accent_fg_color {{ $onPrimary }}; +@define-color accent_bg_color {{ $primary }}; +@define-color window_bg_color {{ $background }}; +@define-color window_fg_color {{ $onBackground }}; +@define-color headerbar_bg_color {{ $surfaceDim }}; +@define-color headerbar_fg_color {{ $onSurface }}; +@define-color popover_bg_color {{ $surfaceDim }}; +@define-color popover_fg_color {{ $onSurface }}; +@define-color view_bg_color {{ $surface }}; +@define-color view_fg_color {{ $onSurface }}; +@define-color card_bg_color {{ $surface }}; +@define-color card_fg_color {{ $onSurface }}; +@define-color sidebar_bg_color @window_bg_color; +@define-color sidebar_fg_color @window_fg_color; +@define-color sidebar_border_color @window_bg_color; +@define-color sidebar_backdrop_color @window_bg_color; diff --git a/diagnose b/diagnose index b5d607a02..50c2cc000 100755 --- a/diagnose +++ b/diagnose @@ -35,7 +35,7 @@ ii_check_distro() { } ii_check_venv() { source $(eval echo $ILLOGICAL_IMPULSE_VIRTUAL_ENV)/bin/activate - which gradience-cli + which python deactivate } ii_check_ags() { @@ -66,9 +66,6 @@ x declare -p ILLOGICAL_IMPULSE_VIRTUAL_ENV # $XDG_STATE_HOME/ags/.venv e "Checking directories/files" x ls -l ~/.local/state/ags/.venv -x ls -l $ILLOGICAL_IMPULSE_VIRTUAL_ENV/bin/gradience-cli -x ls $XDG_DATA_HOME/glib-2.0/schemas -x ls $XDG_DATA_HOME/gradience #x cat ~/.config/ags/ #e "Checking command existence" diff --git a/scriptdata/installers b/scriptdata/installers index d74dada92..842ca9375 100644 --- a/scriptdata/installers +++ b/scriptdata/installers @@ -129,30 +129,7 @@ install-python-packages (){ x uv venv --prompt .venv $(eval echo $ILLOGICAL_IMPULSE_VIRTUAL_ENV) -p 3.12 x source $(eval echo $ILLOGICAL_IMPULSE_VIRTUAL_ENV)/bin/activate x uv pip install -r scriptdata/requirements.txt - - x mkdir -p $base/cache/blueprint-compiler && cd $base/cache/blueprint-compiler - try git init -b main - try git remote add origin https://github.com/end-4/ii-blueprint-compiler.git - x git pull origin main && git submodule update --init --recursive - x meson setup build --prefix=$VIRTUAL_ENV - x meson compile -C build - x meson install -C build - x cd - - - x mkdir -p $base/cache/gradience && cd $base/cache/gradience - try git init -b main - try git remote add origin https://github.com/end-4/ii-gradience.git - x git pull origin main && git submodule update --init --recursive - x uv pip install -r requirements.txt - x meson setup build --prefix=$VIRTUAL_ENV - x meson compile -C build - x meson install -C build - x cd - - x deactivate # We don't need the virtual environment anymore - for i in "glib-2.0" "gradience"; do - x rsync -av "$ILLOGICAL_IMPULSE_VIRTUAL_ENV"/share/$i/ "$XDG_DATA_HOME"/$i/ - done } # Only for Arch(based) distro.