diff --git a/.gitignore b/.gitignore index 43a8f1bf..a7db5829 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,5 @@ src/main/gnome-shell/gdm3*.css src/other/dash-to-dock/stylesheet.css src/other/dash-to-dock/stylesheet-dark.css parse-sass.sh +lib-release.sh +make-release.sh diff --git a/README.md b/README.md index e30ff796..e1cb87d0 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,11 @@ Don't worry, WhiteSur installer already provides all of those dependencies. ## Quick install + +### Use the stable package +You can choose the compressed file (compiled in the stable version) and unzip it to the theme folder `~/.themes` under the user folder. + +### compile from source You can run `./install.sh` to install the default WhiteSur GTK theme pack which includes GNOME Shell (Pantheon), Cinnamon, XFWM (XFCE), Metacity, and Plank themes. diff --git a/lib-install.sh b/lib-install.sh index 82eaaa9f..ab205409 100755 --- a/lib-install.sh +++ b/lib-install.sh @@ -24,20 +24,19 @@ source "${REPO_DIR}/lib-core.sh" install_theme_deps() { if [[ ! "$(which glib-compile-resources 2> /dev/null)" || ! "$(which sassc 2> /dev/null)" || \ - ! "$(which convert 2> /dev/null)" || ! -r "/usr/share/gtk-engines/murrine.xml" || \ - ! "$(which xmllint 2> /dev/null)" || ! "$(which dialog 2> /dev/null)" ]]; then - echo; prompt -w "'glib2.0', 'sassc', 'imagemagick', 'xmllint', 'libmurrine', and 'dialog' are required for this shell." + ! -r "/usr/share/gtk-engines/murrine.xml" || ! "$(which xmllint 2> /dev/null)" ]]; then + echo; prompt -w "'glib2.0', 'sassc', 'xmllint', 'libmurrine' are required for theme installation." if has_command zypper; then - rootify zypper in -y sassc glib2-devel ImageMagick gtk2-engine-murrine libxml2-tools dialog + rootify zypper in -y sassc glib2-devel gtk2-engine-murrine libxml2-tools elif has_command apt; then - rootify apt install -y sassc libglib2.0-dev-bin imagemagick gtk2-engines-murrine libxml2-utils dialog + rootify apt install -y sassc libglib2.0-dev-bin gtk2-engines-murrine libxml2-utils elif has_command dnf; then - rootify dnf install -y sassc glib2-devel ImageMagick gtk-murrine-engine libxml2 dialog + rootify dnf install -y sassc glib2-devel gtk-murrine-engine libxml2 elif has_command yum; then - rootify yum install -y sassc glib2-devel ImageMagick gtk-murrine-engine libxml2 dialog + rootify yum install -y sassc glib2-devel gtk-murrine-engine libxml2 elif has_command pacman; then - rootify pacman -S --noconfirm --needed sassc glib2 imagemagick gtk-engine-murrine libxml2 dialog + rootify pacman -S --noconfirm --needed sassc glib2 gtk-engine-murrine libxml2 else prompt -w "WARNING: We're sorry, your distro isn't officially supported yet." prompt -w "INSTRUCTION: Please make sure you have installed all of the required dependencies. We'll continue the installation in 15 seconds" @@ -47,6 +46,46 @@ install_theme_deps() { fi } +install_beggy_deps() { + if [[ ! "$(which convert 2> /dev/null)" ]]; then + echo; prompt -w "'imagemagick' are required for this option." + + if has_command zypper; then + rootify zypper in -y ImageMagick + elif has_command apt; then + rootify apt install -y sassc imagemagick + elif has_command dnf; then + rootify dnf install -y sassc ImageMagick + elif has_command yum; then + rootify yum install -y sassc ImageMagick + elif has_command pacman; then + rootify pacman -S --noconfirm --needed sassc imagemagick + else + prompt -w "INSTRUCTION: Please make sure you have installed all of the required dependencies!" + fi + fi +} + +install_dialog_deps() { + if [[ ! "$(which dialog 2> /dev/null)" ]]; then + echo; prompt -w "'dialog' are required for this option." + + if has_command zypper; then + rootify zypper in -y dialog + elif has_command apt; then + rootify apt install -y dialog + elif has_command dnf; then + rootify dnf install -y dialog + elif has_command yum; then + rootify yum install -y dialog + elif has_command pacman; then + rootify pacman -S --noconfirm --needed dialog + else + prompt -w "INSTRUCTION: Please make sure you have installed all of the required dependencies!" + fi + fi +} + ############################################################################### # THEME MODULES # ############################################################################### @@ -61,9 +100,9 @@ install_beggy() { blank) cp -r "${THEME_SRC_DIR}/assets/gnome-shell/common-assets/background-blank.png" "${WHITESUR_TMP_DIR}/beggy.png" ;; default) - convert "${THEME_SRC_DIR}/assets/gnome-shell/common-assets/background-default.png" ${CONVERT_OPT} "${WHITESUR_TMP_DIR}/beggy.png" ;; + install_beggy_deps && convert "${THEME_SRC_DIR}/assets/gnome-shell/common-assets/background-default.png" ${CONVERT_OPT} "${WHITESUR_TMP_DIR}/beggy.png" ;; *) - convert "${background}" ${CONVERT_OPT} "${WHITESUR_TMP_DIR}/beggy.png" ;; + install_beggy_deps && convert "${background}" ${CONVERT_OPT} "${WHITESUR_TMP_DIR}/beggy.png" ;; esac } @@ -106,7 +145,8 @@ install_shelly() { cp -r "${THEME_SRC_DIR}/assets/gnome-shell/assets${color}/"*".svg" "${TARGET_DIR}/assets" cp -r "${THEME_SRC_DIR}/assets/gnome-shell/activities/activities${icon}.svg" "${TARGET_DIR}/assets/activities.svg" - cp -r "${WHITESUR_TMP_DIR}/beggy.png" "${TARGET_DIR}/assets/background.png" + cp -r "${THEME_SRC_DIR}/assets/gnome-shell/common-assets/background-default.png" "${TARGET_DIR}/assets/background.png" + # cp -r "${WHITESUR_TMP_DIR}/beggy.png" "${TARGET_DIR}/assets/background.png" ( cd "${TARGET_DIR}" @@ -245,8 +285,6 @@ install_themes() { start_animation process_ids=() - install_beggy - for opacity in "${opacities[@]}"; do for alt in "${alts[@]}"; do for theme in "${themes[@]}"; do @@ -535,7 +573,7 @@ show_nautilus_style_dialog() { } show_needed_dialogs() { - [[ "${need_dialog["-p"]}" == "true" ]] && show_panel_opacity_dialog - [[ "${need_dialog["-s"]}" == "true" ]] && show_sidebar_size_dialog - [[ "${need_dialog["-N"]}" == "true" ]] && show_nautilus_style_dialog + [[ "${need_dialog["-p"]}" == "true" ]] && install_dialog_deps && show_panel_opacity_dialog + [[ "${need_dialog["-s"]}" == "true" ]] && install_dialog_deps && show_sidebar_size_dialog + [[ "${need_dialog["-N"]}" == "true" ]] && install_dialog_deps && show_nautilus_style_dialog } diff --git a/src/sass/gtk/_common-3.0.scss b/src/sass/gtk/_common-3.0.scss index 7b304dc3..006ef257 100644 --- a/src/sass/gtk/_common-3.0.scss +++ b/src/sass/gtk/_common-3.0.scss @@ -1846,7 +1846,9 @@ headerbar, .titlebar { transition-duration: 300ms; } - &:active:hover, &:checked { color: $header_fg; } + &:not(.suggested-action):not(.destructive-action) { + &:active:hover, &:checked { color: $header_fg; } + } &:checked { @include button(header-checked); diff --git a/src/sass/gtk/_common-4.0.scss b/src/sass/gtk/_common-4.0.scss index 08088a17..fb01f000 100644 --- a/src/sass/gtk/_common-4.0.scss +++ b/src/sass/gtk/_common-4.0.scss @@ -1876,7 +1876,9 @@ headerbar { transition-duration: 300ms; } - &:active:hover, &:checked { color: $header_fg; } + &:not(.suggested-action):not(.destructive-action) { + &:active:hover, &:checked { color: $header_fg; } + } &:checked { @include button(header-checked); diff --git a/stable-release/Gnome-3-28/WhiteSur-dark-solid.tar.xz b/stable-release/Gnome-3-28/WhiteSur-dark-solid.tar.xz new file mode 100644 index 00000000..1d3b3a36 Binary files /dev/null and b/stable-release/Gnome-3-28/WhiteSur-dark-solid.tar.xz differ diff --git a/stable-release/Gnome-3-28/WhiteSur-dark.tar.xz b/stable-release/Gnome-3-28/WhiteSur-dark.tar.xz new file mode 100644 index 00000000..8019f138 Binary files /dev/null and b/stable-release/Gnome-3-28/WhiteSur-dark.tar.xz differ diff --git a/stable-release/Gnome-3-28/WhiteSur-light-solid.tar.xz b/stable-release/Gnome-3-28/WhiteSur-light-solid.tar.xz new file mode 100644 index 00000000..12b3e2d9 Binary files /dev/null and b/stable-release/Gnome-3-28/WhiteSur-light-solid.tar.xz differ diff --git a/stable-release/Gnome-3-28/WhiteSur-light.tar.xz b/stable-release/Gnome-3-28/WhiteSur-light.tar.xz new file mode 100644 index 00000000..d64c3a0c Binary files /dev/null and b/stable-release/Gnome-3-28/WhiteSur-light.tar.xz differ diff --git a/stable-release/Gnome-40-0/WhiteSur-dark-solid.tar.xz b/stable-release/Gnome-40-0/WhiteSur-dark-solid.tar.xz new file mode 100644 index 00000000..e8fb6db4 Binary files /dev/null and b/stable-release/Gnome-40-0/WhiteSur-dark-solid.tar.xz differ diff --git a/stable-release/Gnome-40-0/WhiteSur-dark.tar.xz b/stable-release/Gnome-40-0/WhiteSur-dark.tar.xz new file mode 100644 index 00000000..a3e8124c Binary files /dev/null and b/stable-release/Gnome-40-0/WhiteSur-dark.tar.xz differ diff --git a/stable-release/Gnome-40-0/WhiteSur-light-solid.tar.xz b/stable-release/Gnome-40-0/WhiteSur-light-solid.tar.xz new file mode 100644 index 00000000..78ce0f67 Binary files /dev/null and b/stable-release/Gnome-40-0/WhiteSur-light-solid.tar.xz differ diff --git a/stable-release/Gnome-40-0/WhiteSur-light.tar.xz b/stable-release/Gnome-40-0/WhiteSur-light.tar.xz new file mode 100644 index 00000000..2de19ee5 Binary files /dev/null and b/stable-release/Gnome-40-0/WhiteSur-light.tar.xz differ diff --git a/test.py b/test.py deleted file mode 100755 index 19f3290f..00000000 --- a/test.py +++ /dev/null @@ -1,4 +0,0 @@ -#! /bin/python3 - -print("Sorry, the automated WhiteSur test isn't yet developed") -print("Anyways, we don't use bash to do that cuz it closes when the test command exits") diff --git a/tweaks.sh b/tweaks.sh index 54ad3da5..69e60ee1 100755 --- a/tweaks.sh +++ b/tweaks.sh @@ -166,7 +166,7 @@ if [[ "${uninstall}" == 'true' ]]; then echo; prompt -s "Done! '${name}' theme has been disconnected from your Flatpak." fi else - install_theme_deps; show_needed_dialogs; customize_theme + show_needed_dialogs; customize_theme if [[ "${gdm}" == 'true' ]]; then echo; prompt -i "Installing '${name}' GDM theme..."