From b2a3bb83b480831d4d94ae071a1b038a8991f3df Mon Sep 17 00:00:00 2001 From: rokosun Date: Sat, 14 Oct 2023 22:06:49 +0200 Subject: [PATCH] Sync gtk-4.0 directory to fix theming Also removed old code for flatpak_icons_dir which is not needed anymore. --- bin/periodic/fix-theming | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/bin/periodic/fix-theming b/bin/periodic/fix-theming index 0fa5d19..bd64c56 100755 --- a/bin/periodic/fix-theming +++ b/bin/periodic/fix-theming @@ -5,12 +5,12 @@ pidof -sq -o %PPID -x "$(basename "$0")" && exit # Set the directory/file paths declare -r flatpak_themes_dir="$HOME/.themes" -declare -r flatpak_icons_dir="$HOME/.icons" +declare -r config_dir="${XDG_CONFIG_HOME:-$HOME/.config}" declare -r profile="$HOME/.profile" -# Create flatpak icons & themes directories if they don't exist -mkdir -p "$flatpak_themes_dir" "$flatpak_icons_dir" || - { echo "failed to make directories $flatpak_themes_dir & $flatpak_icons_dir"; exit 1; } +# Create directories if they don't exist +mkdir -p "$flatpak_themes_dir" "$config_dir" || + { echo "failed to make directories $flatpak_themes_dir & $config_dir"; exit 1; } # Enable option for syncing the current theme with XFWM theme if not already enabled [ "$(xfconf-query -c xsettings -p /Xfce/SyncThemes)" != 'true' ] && @@ -162,14 +162,20 @@ sync_theme() { [ "$current_window_scaling" -eq '2' ] && use_hdpi_theme_variant 'disable_notification' fi - # Cleanup flatpak_themes_dir - rm -rf "${flatpak_themes_dir:?}"/* + # Cleanup flatpak_themes_dir and ~/.config/gtk-4.0 + rm -rf "${flatpak_themes_dir:?}"/{*,.*} "$config_dir/gtk-4.0"/{*,.*} # Find the directory where the current theme is stored local -r current_theme_dir=$(xdg_directory_lookup "themes/$current_theme") - # Copy/sync current_theme_dir to flatpak_themes_dir - [ -d "$current_theme_dir" ] && + + if [ -d "$current_theme_dir" ]; then + # Copy/sync current_theme_dir to flatpak_themes_dir rsync -av --delete --progress "$current_theme_dir" "$flatpak_themes_dir" + local -r current_theme_gtk4_dir="$current_theme_dir/gtk-4.0" + [ -d "$current_theme_gtk4_dir" ] && + # Copy/sync current_theme_gtk4_dir to config_dir + rsync -av --delete --progress "$current_theme_gtk4_dir" "$config_dir" + fi } sync_font() {