test.sh: Update according to the install.sh changes
WIP
WIP
by roundabout, Tuesday, 16 January 2018, 13:56:45 (1516111005), pushed by roundabout, Sunday, 11 May 2025, 13:22:19 (1746969739)
Author identity: nana-4 <hnmaigo@gmail.com>
e1894feb52c28bf7df30ede7798a8c059900245e
REPO_DIR=$(cd $(dirname $0) && pwd)
SRC_PATH=${REPO_DIR}/src
DEST_DIR=~/.themes
THEME_NAME=Materia.dev
THEMES_DIR=~/.themes
COLOR_VARIANTS=('' '-dark' '-light')
SIZE_VARIANTS=('' '-compact')
GTK_VERSIONS=('3.18' '3.20' '3.22')
GS_VERSIONS=('3.18' '3.20' '3.22' '3.24' '3.26')
LATEST_GS_VERSION=${GS_VERSIONS[@]: -1}
# Set a proper gnome-shell theme version
if [[ $(which gnome-shell 2> /dev/null) ]]; then
GNOME_VERSION_MAJOR=$(gnome-shell --version | cut -d ' ' -f 3 | cut -d . -f 1)
GNOME_VERSION_MINOR=$(gnome-shell --version | cut -d ' ' -f 3 | cut -d . -f 2)
if [[ -e ${SRC_PATH}/gnome-shell/${GNOME_VERSION_MAJOR}.${GNOME_VERSION_MINOR} ]]; then
GNOME_VERSION=${GNOME_VERSION_MAJOR}.${GNOME_VERSION_MINOR}
elif [[ -e ${SRC_PATH}/gnome-shell/${GNOME_VERSION_MAJOR}.$((${GNOME_VERSION_MINOR} + 1)) ]]; then
GNOME_VERSION=${GNOME_VERSION_MAJOR}.$((${GNOME_VERSION_MINOR} + 1))
elif [[ -e ${SRC_PATH}/gnome-shell/${GNOME_VERSION_MAJOR}.$((${GNOME_VERSION_MINOR} - 1)) ]]; then
GNOME_VERSION=${GNOME_VERSION_MAJOR}.$((${GNOME_VERSION_MINOR} - 1))
else
GNOME_VERSION=3.18
fi
CURRENT_GS_VERSION=$(gnome-shell --version | cut -d ' ' -f 3 | cut -d . -f -2)
for version in "${GS_VERSIONS[@]}"; do
if (( $(echo "$CURRENT_GS_VERSION <= $version" | bc) )); then
GS_VERSION=${version}
break
elif (( $(echo "$CURRENT_GS_VERSION > $LATEST_GS_VERSION" | bc) )); then
GS_VERSION=${LATEST_GS_VERSION}
break
fi
done
else
GNOME_VERSION=3.18
GS_VERSION=${LATEST_GS_VERSION}
fi
test() {
[[ ${color} == '-dark' ]] && local ELSE_DARK=${color}
[[ ${color} == '-light' ]] && local ELSE_LIGHT=${color}
local THEME_DIR=${THEMES_DIR}/${THEME_NAME}${color}${size}
local THEME_DIR=${DEST_DIR}/${THEME_NAME}${color}${size}
mkdir -p ${THEME_DIR}
ln -sfT ${SRC_PATH}/index${color}${size}.theme ${THEME_DIR}/index.theme
mkdir -p ${THEME_DIR}/gnome-shell
ln -sf ${SRC_PATH}/gnome-shell/${GNOME_VERSION}/{extensions,pad-osd.css} ${THEME_DIR}/gnome-shell
ln -sfT ${SRC_PATH}/gnome-shell/${GNOME_VERSION}/assets${ELSE_DARK} ${THEME_DIR}/gnome-shell/assets
ln -sfT ${SRC_PATH}/gnome-shell/${GNOME_VERSION}/gnome-shell${color}${size}.css ${THEME_DIR}/gnome-shell/gnome-shell.css
ln -sf ${SRC_PATH}/gnome-shell/${GS_VERSION}/{extensions,pad-osd.css} ${THEME_DIR}/gnome-shell
ln -sfT ${SRC_PATH}/gnome-shell/${GS_VERSION}/assets${ELSE_DARK} ${THEME_DIR}/gnome-shell/assets
ln -sfT ${SRC_PATH}/gnome-shell/${GS_VERSION}/gnome-shell${color}${size}.css ${THEME_DIR}/gnome-shell/gnome-shell.css
mkdir -p ${THEME_DIR}/gtk-2.0
ln -sf ${SRC_PATH}/gtk-2.0/{apps.rc,hacks.rc,main.rc} ${THEME_DIR}/gtk-2.0
mkdir -p ${THEME_DIR}/gtk-common
ln -sf ${SRC_PATH}/gtk-3.0/gtk-common/assets ${THEME_DIR}/gtk-common
mkdir -p ${THEME_DIR}/gtk-3.0
ln -sf ${SRC_PATH}/gtk-3.0/3.18/assets ${THEME_DIR}/gtk-3.0
ln -sfT ${SRC_PATH}/gtk-3.0/3.18/gtk${color}.css ${THEME_DIR}/gtk-3.0/gtk.css
[[ ${color} != '-dark' ]] && \
ln -sfT ${SRC_PATH}/gtk-3.0/3.18/gtk-dark.css ${THEME_DIR}/gtk-3.0/gtk-dark.css
for version in '3.20' '3.22'; do
mkdir -p ${THEME_DIR}/gtk-${version}
ln -sf ${SRC_PATH}/gtk-3.0/${version}/assets ${THEME_DIR}/gtk-${version}
ln -sfT ${SRC_PATH}/gtk-3.0/${version}/gtk${color}${size}.css ${THEME_DIR}/gtk-${version}/gtk.css
[[ ${color} != '-dark' ]] && \
ln -sfT ${SRC_PATH}/gtk-3.0/${version}/gtk-dark${size}.css ${THEME_DIR}/gtk-${version}/gtk-dark.css
for version in "${GTK_VERSIONS[@]}"; do
if [[ ${version} == '3.18' ]]; then
mkdir -p ${THEME_DIR}/gtk-3.0
ln -sf ${SRC_PATH}/gtk-3.0/${version}/assets ${THEME_DIR}/gtk-3.0
ln -sfT ${SRC_PATH}/gtk-3.0/${version}/gtk${color}.css ${THEME_DIR}/gtk-3.0/gtk.css
[[ ${color} != '-dark' ]] && \
ln -sfT ${SRC_PATH}/gtk-3.0/${version}/gtk-dark.css ${THEME_DIR}/gtk-3.0/gtk-dark.css
else
mkdir -p ${THEME_DIR}/gtk-${version}
ln -sf ${SRC_PATH}/gtk-3.0/${version}/assets ${THEME_DIR}/gtk-${version}
ln -sfT ${SRC_PATH}/gtk-3.0/${version}/gtk${color}${size}.css ${THEME_DIR}/gtk-${version}/gtk.css
[[ ${color} != '-dark' ]] && \
ln -sfT ${SRC_PATH}/gtk-3.0/${version}/gtk-dark${size}.css ${THEME_DIR}/gtk-${version}/gtk-dark.css
fi
done
mkdir -p ${THEME_DIR}/metacity-1
test '-light' '-compact'
;;
uninstall)
rm -rf ${THEMES_DIR}/${THEME_NAME}{,-compact,-dark,-dark-compact,-light,-light-compact}
rm -rf ${DEST_DIR}/${THEME_NAME}{,-compact,-dark,-dark-compact,-light,-light-compact}
;;
*)
echo "Invalid argument: ${1}"