1#!/usr/local/bin/bash 2 3# Check command availability 4function has_command() { 5 command -v $1 > /dev/null 6} 7 8if [ ! "$(which sassc 2> /dev/null)" ]; then 9 echo sassc needs to be installed to generate the css. 10 if has_command zypper; then 11 sudo zypper in sassc 12 elif has_command apt; then 13 sudo apt install sassc 14 elif has_command dnf; then 15 sudo dnf install -y sassc 16 elif has_command yum; then 17 sudo yum install sassc 18 elif has_command pacman; then 19 sudo pacman -S --noconfirm sassc 20 fi 21fi 22 23SASSC_OPT="-M -t expanded" 24 25_COLOR_VARIANTS=('-light' '-dark') 26if [ ! -z "${COLOR_VARIANTS:-}" ]; then 27 IFS=', ' read -r -a _COLOR_VARIANTS <<< "${COLOR_VARIANTS:-}" 28fi 29 30_TRANS_VARIANTS=('' '-solid') 31if [ ! -z "${TRANS_VARIANTS:-}" ]; then 32 IFS=', ' read -r -a _TRANS_VARIANTS <<< "${TRANS_VARIANTS:-}" 33fi 34 35_THEME_VARIANTS=('' '-blue' '-purple' '-pink' '-red' '-orange' '-yellow' '-green' '-grey') 36if [ ! -z "${THEME_VARIANTS:-}" ]; then 37 IFS=', ' read -r -a _THEME_VARIANTS <<< "${THEME_VARIANTS:-}" 38fi 39 40for color in "${_COLOR_VARIANTS[@]}"; do 41 for trans in "${_TRANS_VARIANTS[@]}"; do 42 for theme in "${_THEME_VARIANTS[@]}"; do 43 sassc $SASSC_OPT src/main/gtk-3.0/gtk${color}${trans}${theme}.{scss,css} 44 echo "==> Generating the 3.0 gtk${color}${trans}${theme}.css..." 45 sassc $SASSC_OPT src/main/gtk-4.0/gtk${color}${trans}${theme}.{scss,css} 46 echo "==> Generating the 4.0 gtk${color}${trans}${theme}.css..." 47 sassc $SASSC_OPT src/main/gnome-shell/shell-3-28/gnome-shell${color}${trans}${theme}.{scss,css} 48 echo "==> Generating the 3.28 gnome-shell${color}${trans}${theme}.css..." 49 sassc $SASSC_OPT src/main/gnome-shell/shell-40-0/gnome-shell${color}${trans}${theme}.{scss,css} 50 echo "==> Generating the 40.0 gnome-shell${color}${trans}${theme}.css..." 51 sassc $SASSC_OPT src/main/cinnamon/cinnamon${color}${trans}${theme}.{scss,css} 52 echo "==> Generating the cinnamon${color}${trans}${theme}.css..." 53 done 54 done 55done 56 57sassc $SASSC_OPT src/other/dash-to-dock/stylesheet.{scss,css} 58echo "==> Generating dash-to-dock stylesheet.css..." 59sassc $SASSC_OPT src/other/dash-to-dock/stylesheet-dark.{scss,css} 60echo "==> Generating dash-to-dock stylesheet-dark.css..." 61