parse-sass.sh
Bourne-Again shell script, ASCII text executable
1
#!/bin/bash
2
set -ueo pipefail
3
4
if [ ! "$(which sassc 2> /dev/null)" ]; then
5
echo sassc needs to be installed to generate the css.
6
exit 1
7
fi
8
9
_COLOR_VARIANTS=(
10
''
11
'-dark'
12
'-light'
13
)
14
if [ ! -z "${COLOR_VARIANTS:-}" ]; then
15
IFS=', ' read -r -a _COLOR_VARIANTS <<< "${COLOR_VARIANTS:-}"
16
fi
17
18
_SIZE_VARIANTS=(
19
''
20
'-compact'
21
)
22
if [ ! -z "${SIZE_VARIANTS:-}" ]; then
23
IFS=', ' read -r -a _SIZE_VARIANTS <<< "${SIZE_VARIANTS:-}"
24
fi
25
26
SASSC_OPT="-M -t expanded"
27
28
echo "== Generating the CSS..."
29
30
for color in "${_COLOR_VARIANTS[@]}"; do
31
# The '-compact' variant is not supported for gtk '3.18'
32
sassc $SASSC_OPT src/gtk-3.0/3.18/gtk${color}.{scss,css}
33
34
for size in "${_SIZE_VARIANTS[@]}"; do
35
for version in '3.20' '3.22'; do
36
sassc $SASSC_OPT src/gtk-3.0/${version}/gtk${color}${size}.{scss,css}
37
done
38
39
# This gnome-shell theme can skip versions '3.20' & '2.22'
40
for version in '3.18' '3.24' '3.26'; do
41
sassc $SASSC_OPT src/gnome-shell/${version}/gnome-shell${color}${size}.{scss,css}
42
done
43
done
44
done
45