67 lines
1.9 KiB
Bash
Executable file
67 lines
1.9 KiB
Bash
Executable file
#! /bin/bash
|
|
|
|
INKSCAPE="/usr/bin/inkscape"
|
|
OPTIPNG="/usr/bin/optipng"
|
|
|
|
REPO_DIR=$(cd $(dirname $0) && pwd)
|
|
ASRC_DIR=${REPO_DIR}/src/assets
|
|
|
|
# check command avalibility
|
|
has_command() {
|
|
"$1" -v $1 > /dev/null 2>&1
|
|
}
|
|
|
|
if [ ! "$(which inkscape 2> /dev/null)" ]; then
|
|
echo inkscape and optipng needs to be installed to generate the assets.
|
|
if has_command zypper; then
|
|
sudo zypper in inkscape optipng
|
|
elif has_command apt; then
|
|
sudo apt install inkscape optipng
|
|
elif has_command dnf; then
|
|
sudo dnf install -y inkscape optipng
|
|
elif has_command yum; then
|
|
sudo yum install inkscape optipng
|
|
elif has_command pacman; then
|
|
sudo pacman -S --noconfirm inkscape optipng
|
|
fi
|
|
fi
|
|
|
|
render_thumbnail() {
|
|
local dest=$1
|
|
local color=$2
|
|
|
|
if [ -f $ASRC_DIR/$1/thumbnail$2.png ]; then
|
|
echo $ASRC_DIR/$1/thumbnail$2.png exists.
|
|
else
|
|
echo
|
|
echo Rendering $ASRC_DIR/$1/thumbnail$2.png
|
|
$INKSCAPE --export-id=thumbnail$2 \
|
|
--export-id-only \
|
|
--export-type=png $ASRC_DIR/$1/thumbnail$2.png $ASRC_DIR/$1/thumbnail.svg >/dev/null \
|
|
|| $INKSCAPE --export-id=thumbnail$2 \
|
|
--export-id-only \
|
|
--export-png=$ASRC_DIR/$1/thumbnail$2.png $ASRC_DIR/$1/thumbnail.svg >/dev/null \
|
|
&& $OPTIPNG -o7 --quiet $ASRC_DIR/$1/thumbnail$2.png
|
|
fi
|
|
}
|
|
|
|
for color in '-light' '-dark' ; do
|
|
render_thumbnail "${dest:-cinnamon}" "${color}"
|
|
render_thumbnail "${dest:-gtk-3.0}" "${color}"
|
|
render_thumbnail "${dest:-metacity-1}" "${color}"
|
|
done
|
|
|
|
echo Rendering gtk-2.0 assets
|
|
cd $ASRC_DIR/gtk-2.0 && ./render-assets.sh
|
|
|
|
echo Rendering gtk-3.0 assets
|
|
cd $ASRC_DIR/gtk-3.0/common-assets && ./render-assets.sh
|
|
cd $ASRC_DIR/gtk-3.0/windows-assets && ./render-assets.sh && ./render-alt-assets.sh
|
|
|
|
echo Rendering metacity-1 assets
|
|
cd $ASRC_DIR/metacity-1 && ./render-assets.sh
|
|
|
|
echo Rendering xfwm4 assets
|
|
cd $ASRC_DIR/xfwm4 && ./render-assets.sh
|
|
|
|
exit 0
|