by roundabout, Saturday, 11 November 2017, 09:57:45 (1510394265), pushed by roundabout, Sunday, 11 May 2025, 13:22:16 (1746969736)
Author identity: nana-4 <hnmaigo@gmail.com>
ddc091e92ff90631e5e95cfa9c584ed07530a6aa
test.sh
@@ -2,7 +2,7 @@
#
# Once run the script, no need to run ./install.sh for testing. ;)
#
# NOTE: This is WIP and incomplete. Polish me with PRs!
# FIXME: `unity` and `xfwm4` are not fully supported for now since `*.svg` link incorrect locales (with '-light' variant).
# FIXME: Multiple arguments should be allowed.
REPO_DIR=$(cd $(dirname $0) && pwd)
@@ -11,14 +11,31 @@ SRC_PATH=${REPO_DIR}/src
THEME_NAME=Materia.dev
THEMES_DIR=~/.themes
GNOME_VERSION=3.24
GTK_VERSION=3.22
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
else
GNOME_VERSION=3.18
fi
test() {
[[ ${color} == '-dark' ]] && ELSE_DARK=${color}
[[ ${color} == '-light' ]] && ELSE_LIGHT=${color}
local color=${1}
local size=${2}
[[ ${color} == '-dark' ]] && local ELSE_DARK=${color}
[[ ${color} == '-light' ]] && local ELSE_LIGHT=${color}
THEME_DIR=${THEMES_DIR}/${THEME_NAME}${color}${size}
local THEME_DIR=${THEMES_DIR}/${THEME_NAME}${color}${size}
mkdir -p ${THEME_DIR}
ln -sfT ${SRC_PATH}/index${color}${size}.theme ${THEME_DIR}/index.theme
@@ -36,10 +53,22 @@ test() {
ln -sfT ${SRC_PATH}/gtk-2.0/hacks.rc ${THEME_DIR}/gtk-2.0/hacks.rc
ln -sfT ${SRC_PATH}/gtk-2.0/main.rc ${THEME_DIR}/gtk-2.0/main.rc
mkdir -p ${THEME_DIR}/gtk-common
ln -sfT ${SRC_PATH}/gtk-3.0/gtk-common/assets ${THEME_DIR}/gtk-common/assets
mkdir -p ${THEME_DIR}/gtk-3.0
ln -sfT ${SRC_PATH}/gtk-3.0/gtk-common/assets ${THEME_DIR}/gtk-3.0/assets
ln -sfT ${SRC_PATH}/gtk-3.0/${GTK_VERSION}/gtk${color}${size}.css ${THEME_DIR}/gtk-3.0/gtk.css
ln -sfT ${SRC_PATH}/gtk-3.0/${GTK_VERSION}/gtk-dark${size}.css ${THEME_DIR}/gtk-3.0/gtk-dark.css
ln -sfT ${SRC_PATH}/gtk-3.0/3.18/assets ${THEME_DIR}/gtk-3.0/assets
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 -sfT ${SRC_PATH}/gtk-3.0/${version}/assets ${THEME_DIR}/gtk-${version}/assets
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
done
mkdir -p ${THEME_DIR}/metacity-1
ln -sfT ${SRC_PATH}/metacity-1/assets ${THEME_DIR}/metacity-1/assets
@@ -48,13 +77,13 @@ test() {
mkdir -p ${THEME_DIR}/unity
ln -sfT ${SRC_PATH}/unity/assets${ELSE_LIGHT} ${THEME_DIR}/unity/assets
# ln -sfT ${SRC_PATH}/unity/*.svg ${THEME_DIR}/unity/*.svg
ln -sf ${SRC_PATH}/unity/*.svg ${THEME_DIR}/unity
ln -sfT ${SRC_PATH}/unity/launcher_bfb.png ${THEME_DIR}/unity/launcher_bfb.png
ln -sfT ${SRC_PATH}/unity/dash-widgets.json ${THEME_DIR}/unity/dash-widgets.json
mkdir -p ${THEME_DIR}/xfwm4
ln -sfT ${SRC_PATH}/xfwm4/assets${ELSE_LIGHT} ${THEME_DIR}/xfwm4/assets
# ln -sfT ${SRC_PATH}/xfwm4/*.svg ${THEME_DIR}/xfwm4/*.svg
ln -sf ${SRC_PATH}/xfwm4/*.svg ${THEME_DIR}/xfwm4
ln -sfT ${SRC_PATH}/xfwm4/themerc ${THEME_DIR}/xfwm4/themerc
echo Installed to ${THEME_DIR}
@@ -62,34 +91,22 @@ test() {
case "${1}" in
"")
color=''
size=''
test
test '' ''
;;
compact)
color=''
size='-compact'
test
test '' '-compact'
;;
dark)
color='-dark'
size=''
test
test '-dark' ''
;;
dark-compact)
color='-dark'
size='-compact'
test
test '-dark' '-compact'
;;
light)
color='-light'
size=''
test
test '-light' ''
;;
light-compact)
color='-light'
size='-compact'
test
test '-light' '-compact'
;;
uninstall)
rm -rf ${THEMES_DIR}/${THEME_NAME}{,-compact,-dark,-dark-compact,-light,-light-compact}