From ec1fdbb31bb15a66bd3eb2399c8dbeffa3b77a35 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Thu, 6 Jun 2024 22:12:32 +0200 Subject: [PATCH] Extract common gnome theme setting And copy backgrounds instead of linking them. More resilient if we update them in the future. --- themes/gnome/_set-gnome-theme.sh | 11 +++++++++++ themes/gnome/catppuccin.sh | 12 +++--------- themes/gnome/everforest.sh | 12 +++--------- themes/gnome/gruvbox.sh | 12 +++--------- themes/gnome/kanagawa.sh | 14 +++----------- themes/gnome/nord.sh | 12 +++--------- themes/gnome/rose-pine.sh | 11 +++-------- themes/gnome/tokyo-night.sh | 12 +++--------- 8 files changed, 32 insertions(+), 64 deletions(-) create mode 100644 themes/gnome/_set-gnome-theme.sh diff --git a/themes/gnome/_set-gnome-theme.sh b/themes/gnome/_set-gnome-theme.sh new file mode 100644 index 0000000..4679411 --- /dev/null +++ b/themes/gnome/_set-gnome-theme.sh @@ -0,0 +1,11 @@ +gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' +gsettings set org.gnome.desktop.interface cursor-theme 'Yaru' +gsettings set org.gnome.desktop.interface gtk-theme "Yaru-$OMAKUB_THEME_COLOR-dark" +gsettings set org.gnome.desktop.interface icon-theme "Yaru-$OMAKUB_THEME_COLOR" + +BACKGROUND_ORG_PATH="$HOME/.local/share/omakub/backgrounds/$OMAKUB_THEME_BACKGROUND" +BACKGROUND_DEST_PATH="$HOME/.local/share/backgrounds/$OMAKUB_THEME_BACKGROUND" +[ ! -f $BACKGROUND_DEST_PATH ] && cp $BACKGROUND_ORG_PATH $BACKGROUND_DEST_PATH +gsettings set org.gnome.desktop.background picture-uri $BACKGROUND_DEST_PATH +gsettings set org.gnome.desktop.background picture-uri-dark $BACKGROUND_DEST_PATH +gsettings set org.gnome.desktop.background picture-options 'zoom' diff --git a/themes/gnome/catppuccin.sh b/themes/gnome/catppuccin.sh index 169760f..7408bfb 100644 --- a/themes/gnome/catppuccin.sh +++ b/themes/gnome/catppuccin.sh @@ -1,9 +1,3 @@ -gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' -gsettings set org.gnome.desktop.interface cursor-theme 'Yaru' -gsettings set org.gnome.desktop.interface gtk-theme 'Yaru-magenta-dark' -gsettings set org.gnome.desktop.interface icon-theme 'Yaru-magenta' - -OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH="$HOME/.local/share/omakub/backgrounds/catppuccintotoro.png" -gsettings set org.gnome.desktop.background picture-uri $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-uri-dark $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-options 'zoom' +OMAKUB_THEME_COLOR="magenta" +OMAKUB_THEME_BACKGROUND="catppuccintotoro.png" +source $OMAKUB_PATH/themes/gnome/_set-gnome-theme.sh diff --git a/themes/gnome/everforest.sh b/themes/gnome/everforest.sh index dd1664c..b371572 100644 --- a/themes/gnome/everforest.sh +++ b/themes/gnome/everforest.sh @@ -1,9 +1,3 @@ -gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' -gsettings set org.gnome.desktop.interface cursor-theme 'Yaru' -gsettings set org.gnome.desktop.interface gtk-theme 'Yaru-bark-dark' -gsettings set org.gnome.desktop.interface icon-theme 'Yaru-bark' - -OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH="$HOME/.local/share/omakub/backgrounds/fog_forest_2.jpg" -gsettings set org.gnome.desktop.background picture-uri $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-uri-dark $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-options 'zoom' +OMAKUB_THEME_COLOR="bark" +OMAKUB_THEME_BACKGROUND="fog_forest_2.jpg" +source $OMAKUB_PATH/themes/gnome/_set-gnome-theme.sh diff --git a/themes/gnome/gruvbox.sh b/themes/gnome/gruvbox.sh index 8818a12..b9ecdf5 100644 --- a/themes/gnome/gruvbox.sh +++ b/themes/gnome/gruvbox.sh @@ -1,9 +1,3 @@ -gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' -gsettings set org.gnome.desktop.interface cursor-theme 'Yaru' -gsettings set org.gnome.desktop.interface gtk-theme 'Yaru-sage-dark' -gsettings set org.gnome.desktop.interface icon-theme 'Yaru-sage' - -OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH="$HOME/.local/share/omakub/backgrounds/ferns-green.jpg" -gsettings set org.gnome.desktop.background picture-uri $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-uri-dark $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-options 'zoom' +OMAKUB_THEME_COLOR="sage" +OMAKUB_THEME_BACKGROUND="ferns-green.jpg" +source $OMAKUB_PATH/themes/gnome/_set-gnome-theme.sh diff --git a/themes/gnome/kanagawa.sh b/themes/gnome/kanagawa.sh index 1afce8a..029180f 100644 --- a/themes/gnome/kanagawa.sh +++ b/themes/gnome/kanagawa.sh @@ -1,11 +1,3 @@ -gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' -gsettings set org.gnome.desktop.interface cursor-theme 'Yaru' -gsettings set org.gnome.desktop.interface gtk-theme 'Yaru-purple-dark' -gsettings set org.gnome.desktop.interface icon-theme 'Yaru-purple' - -OMAKUB_BACKGROUND_ORG_PATH="$HOME/.local/share/omakub/backgrounds/kanagawa.jpg" -OMAKUB_BACKGROUND_DEST_PATH="$HOME/.local/share/backgrounds/kanagawa.jpg" -[ ! -f $OMAKUB_BACKGROUND_DEST_PATH ] && cp $OMAKUB_BACKGROUND_ORG_PATH $OMAKUB_BACKGROUND_DEST_PATH -gsettings set org.gnome.desktop.background picture-uri $OMAKUB_BACKGROUND_DEST_PATH -gsettings set org.gnome.desktop.background picture-uri-dark $OMAKUB_BACKGROUND_DEST_PATH -gsettings set org.gnome.desktop.background picture-options 'zoom' +OMAKUB_THEME_COLOR="purple" +OMAKUB_THEME_BACKGROUND="kanagawa.jpg" +source $OMAKUB_PATH/themes/gnome/_set-gnome-theme.sh diff --git a/themes/gnome/nord.sh b/themes/gnome/nord.sh index 032e202..5daf98c 100644 --- a/themes/gnome/nord.sh +++ b/themes/gnome/nord.sh @@ -1,9 +1,3 @@ -gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' -gsettings set org.gnome.desktop.interface cursor-theme 'Yaru' -gsettings set org.gnome.desktop.interface gtk-theme 'Yaru-blue-dark' -gsettings set org.gnome.desktop.interface icon-theme 'Yaru-blue' - -OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH="$HOME/.local/share/omakub/backgrounds/nord_scenary.png" -gsettings set org.gnome.desktop.background picture-uri $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-uri-dark $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-options 'zoom' +OMAKUB_THEME_COLOR="blue" +OMAKUB_THEME_BACKGROUND="nord_scenary.png" +source $OMAKUB_PATH/themes/gnome/_set-gnome-theme.sh diff --git a/themes/gnome/rose-pine.sh b/themes/gnome/rose-pine.sh index 66870df..f00cc88 100644 --- a/themes/gnome/rose-pine.sh +++ b/themes/gnome/rose-pine.sh @@ -1,9 +1,4 @@ +OMAKUB_THEME_COLOR="red" +OMAKUB_THEME_BACKGROUND="simple-pastel-by-triarts-from-freepik.jpg" +source $OMAKUB_PATH/themes/gnome/_set-gnome-theme.sh gsettings set org.gnome.desktop.interface color-scheme 'prefer-light' -gsettings set org.gnome.desktop.interface cursor-theme 'Yaru' -gsettings set org.gnome.desktop.interface gtk-theme 'Yaru-red' -gsettings set org.gnome.desktop.interface icon-theme 'Yaru-red' - -OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH="$HOME/.local/share/omakub/backgrounds/simple-pastel-by-triarts-from-freepik.jpg" -gsettings set org.gnome.desktop.background picture-uri $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-uri-dark $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-options 'zoom' diff --git a/themes/gnome/tokyo-night.sh b/themes/gnome/tokyo-night.sh index 2d3e336..a26eb26 100644 --- a/themes/gnome/tokyo-night.sh +++ b/themes/gnome/tokyo-night.sh @@ -1,9 +1,3 @@ -gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' -gsettings set org.gnome.desktop.interface cursor-theme 'Yaru' -gsettings set org.gnome.desktop.interface gtk-theme 'Yaru-purple-dark' -gsettings set org.gnome.desktop.interface icon-theme 'Yaru-purple' - -OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH="$HOME/.local/share/omakub/backgrounds/80s-retro-tropical-sunset-by-freepik.jpg" -gsettings set org.gnome.desktop.background picture-uri $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-uri-dark $OMAKUB_DEFAULT_BACKGROUND_IMAGE_PATH -gsettings set org.gnome.desktop.background picture-options 'zoom' +OMAKUB_THEME_COLOR="purple" +OMAKUB_THEME_BACKGROUND="80s-retro-tropical-sunset-by-freepik.jpg" +source $OMAKUB_PATH/themes/gnome/_set-gnome-theme.sh