mirror of
https://git.disroot.org/eudaimon/Simplewaita.git
synced 2026-03-10 12:25:18 +00:00
56 lines
1.6 KiB
Bash
Executable file
56 lines
1.6 KiB
Bash
Executable file
#! /bin/bash
|
|
|
|
# exit when any command fails
|
|
set -e
|
|
|
|
usage () {
|
|
echo -e "\nUsage:"
|
|
echo -e $(basename "$0") "name_of_color_scheme_file.sh\n"
|
|
echo -e "Changes current color scheme for Skewaita, using the specified color scheme bash file."
|
|
echo -e "After this step, you need to rebuild the theme:"
|
|
echo -e 'go up one directory, to "source", and execute "./compile.sh light" or "./compile.sh dark" depending on whether the theme is light or dark\n'
|
|
}
|
|
|
|
|
|
# Check for correct parameters and the existence of color scheme file
|
|
|
|
if [[ $# -ne 1 ]]
|
|
then
|
|
usage
|
|
exit 1
|
|
fi
|
|
|
|
filename=$1
|
|
|
|
# if color scheme filename provided does not include .sh extension, add it
|
|
[[ "$filename" == *.sh ]] || filename="$filename.sh"
|
|
|
|
echo -e "\nReading color scheme from file '$filename'\n"
|
|
|
|
|
|
source $filename
|
|
|
|
# envsubst <_theme_colors.scss >theme_colors_.scss.processed # not working!
|
|
|
|
echo "New color scheme read; processing template files..."
|
|
|
|
for FILE in "_theme_colors.scss" "gtkrc" ; do
|
|
echo " processing $FILE..."
|
|
while read -r line ; do
|
|
while [[ "$line" =~ (\$\{[a-zA-Z_][a-zA-Z_0-9]*\}) ]] ; do
|
|
LHS=${BASH_REMATCH[1]}
|
|
RHS="$(eval echo "\"$LHS\"")"
|
|
line=${line//$LHS/$RHS}
|
|
done
|
|
echo "$line"
|
|
done < "$FILE" > "$FILE.processed"
|
|
done
|
|
|
|
echo "Done; copying processed files"
|
|
|
|
cp _theme_colors.scss.processed ../common/_theme_colors.scss
|
|
cp gtkrc.processed ../../gtk-2.0/gtkrc
|
|
echo -e "\nSUCCESS\n"
|
|
echo "Now you need to rebuild the theme:"
|
|
echo -e 'go up one directory, to "source", and execute "./compile.sh light" or "./compile.sh dark" depending on whether the theme is light or dark\n'
|
|
|